Tworzenie użytkowników w usłudze Azure Database for MySQL

DOTYCZY: Azure Database for MySQL — pojedynczy serwer usługi Azure Database for MySQL — serwer elastyczny

Ważne

Pojedynczy serwer usługi Azure Database for MySQL znajduje się na ścieżce wycofania. Zdecydowanie zalecamy uaktualnienie do serwera elastycznego usługi Azure Database for MySQL. Aby uzyskać więcej informacji na temat migracji do serwera elastycznego usługi Azure Database for MySQL, zobacz Co się dzieje z usługą Azure Database for MySQL — pojedynczy serwer?

W tym artykule opisano sposób tworzenia użytkowników dla usługi Azure Database for MySQL.

Uwaga

Ten artykuł odwołuje się do terminu podrzędnego, którego firma Microsoft już nie używa. Po usunięciu terminu z oprogramowania usuniemy go z tego artykułu.

Podczas tworzenia serwera usługi Azure Database for MySQL podano nazwę użytkownika i hasło administratora serwera. Aby uzyskać więcej informacji, zobacz ten przewodnik Szybki start. Nazwę użytkownika administratora serwera można określić w witrynie Azure Portal.

Administrator serwera ma następujące uprawnienia:

SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER

Po utworzeniu usługi Azure Database for the MySQL można użyć pierwszego konta administratora serwera, aby utworzyć więcej użytkowników i udzielić im dostępu administratora. Możesz również użyć konta administratora serwera, aby utworzyć mniej uprzywilejowanych użytkowników z dostępem do poszczególnych schematów bazy danych.

Uwaga

Rola ADMINISTRATORA i administratora bazy danych nie są obsługiwane. Zapoznaj się z uprawnieniami w artykule dotyczącym ograniczeń, aby dowiedzieć się, co nie jest obsługiwane w usłudze.

Wtyczki haseł, takie jak validate_password i caching_sha2_password nie są obsługiwane przez usługę.

Utwórz bazę danych

  1. Uzyskaj informacje o połączeniu i nazwę użytkownika administratora.

    Aby nawiązać połączenie z serwerem bazy danych, musisz mieć pełną nazwę serwera i poświadczenia logowania administratora. Nazwę serwera i informacje logowania można łatwo znaleźć na stronie Przegląd serwera lub Właściwości w witrynie Azure Portal.

  2. Użyj konta administratora i hasła, aby nawiązać połączenie z serwerem bazy danych. Użyj preferowanego narzędzia klienckiego MySQL Workbench, mysql.exe lub HeidiSQL.

  1. Edytuj i uruchom następujący kod SQL. Zastąp wartość db_user symbolu zastępczego nazwą zamierzonego nowego użytkownika. Zastąp wartość testdb symbolu zastępczego nazwą bazy danych.

    Ten kod SQL tworzy nową bazę danych o nazwie testdb. Następnie tworzy nowego użytkownika w usłudze MySQL i przyznaje temu użytkownikowi wszystkie uprawnienia do nowego schematu bazy danych (testdb.*).

    CREATE DATABASE testdb;
    

Tworzenie użytkownika niebędącego administratorem

Po utworzeniu bazy danych możesz rozpocząć od utworzenia użytkownika niebędącego administratorem przy użyciu instrukcji CREATE USER MySQL.

CREATE USER 'db_user'@'%' IDENTIFIED BY 'StrongPassword!';

GRANT ALL PRIVILEGES ON testdb . * TO 'db_user'@'%';

FLUSH PRIVILEGES;

Weryfikowanie uprawnień użytkownika

Aby wyświetlić uprawnienia dozwolone dla db_user użytkownika w bazie danych testdb, uruchom instrukcję SHOW GRANTS MySQL.

USE testdb;

SHOW GRANTS FOR 'db_user'@'%';

Połączenie do bazy danych przy użyciu nowego użytkownika

Zaloguj się do serwera, określając wyznaczoną bazę danych i używając nowej nazwy użytkownika i hasła. W tym przykładzie pokazano wiersz polecenia MySQL. Gdy używasz tego polecenia, zostanie wyświetlony monit o podanie hasła użytkownika. Użyj własnej nazwy serwera, nazwy bazy danych i nazwy użytkownika. Zobacz, jak połączyć pojedynczy serwer i elastyczny w poniższej tabeli.

Typ serwera Sposób użycia
Pojedynczy serwer mysql --host mydemoserver.mysql.database.azure.com --database testdb --user db_user@mydemoserver -p
Serwer elastyczny mysql --host mydemoserver.mysql.database.azure.com --database testdb --user db_user -p

Ograniczanie uprawnień użytkownika

Aby ograniczyć typ operacji, które użytkownik może uruchomić w bazie danych, należy jawnie dodać operacje w instrukcji GRANT . Zobacz poniższy przykład:

CREATE USER 'new_master_user'@'%' IDENTIFIED BY 'StrongPassword!';

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'new_master_user'@'%' WITH GRANT OPTION;

FLUSH PRIVILEGES;

Informacje o azure_superuser

Wszystkie serwery usługi Azure Database for MySQL są tworzone za pomocą użytkownika o nazwie "azure_superuser". Firma Microsoft utworzyła konto systemowe do zarządzania serwerem w celu przeprowadzania monitorowania, tworzenia kopii zapasowych i innych regularnych konserwacji. Inżynierowie połączeń mogą również używać tego konta do uzyskiwania dostępu do serwera podczas zdarzenia z uwierzytelnianiem certyfikatu i muszą zażądać dostępu przy użyciu procesów just in time (JIT).

Następne kroki

  • Aby uzyskać więcej informacji na temat zarządzania kontami użytkowników, zobacz dokumentację produktu MySQL dotyczącą zarządzania kontami użytkowników, składni GRANT i uprawnień.