Creare utenti in Database di Azure per MySQL

SI APPLICA A:Database di Azure per MySQL - Server singolo Database di Azure per MySQL - Server flessibile

Importante

Il server singolo del Database di Azure per MySQL è in fase di ritiro. È consigliabile eseguire l'aggiornamento al server flessibile del Database di Azure per MySQL. Per altre informazioni sulla migrazione a Database di Azure per MySQL - Server flessibile, vedere Cosa succede a Database di Azure per MySQL - Server singolo?

Questo articolo descrive come creare utenti per Database di Azure per MySQL.

Nota

Questo articolo fa riferimento al termine slave, che Microsoft non usa più. Quando il termine verrà rimosso dal software, verrà rimosso anche dall'articolo.

È stato specificato un nome utente e una password dell'amministratore del server durante la creazione del server di Database di Azure per MySQL. Per altre informazioni, vedere questo avvio rapido. È possibile determinare il nome utente dell'amministratore del server nel portale di Azure.

L'utente amministratore del server dispone di questi privilegi:

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

Dopo aver creato un database di Azure per il server MySQL, è possibile usare il primo account amministratore del server per creare altri utenti e concedere loro l'accesso di amministratore. È anche possibile usare l'account amministratore del server per creare utenti con privilegi inferiori con accesso ai singoli schemi di database.

Nota

Il privilegio SUPER e il ruolo DBA non sono supportati. Esaminare i privilegi nell'articolo sulle limitazioni per comprendere cosa non è supportato nel servizio.

Plug-in password come validate_password e caching_sha2_password non sono supportati dal servizio.

Creazione di un database

  1. Ottenere le informazioni per la connessione e il nome dell'utente amministratore.

    Per connettersi al server di database, è necessario il nome del server completo e le credenziali di accesso amministratore. È possibile trovare facilmente il nome del server e le informazioni di accesso nella pagina Proprietà o Panoramica del server nel portale di Azure.

  2. Usare l'account amministratore e la password per connettersi al server di database. Usare lo strumento client preferito, MySQL Workbench, mysql.exe o HeidiSQL.

  1. Modificare ed eseguire il codice SQL seguente. Sostituire il valore segnaposto db_user con il nuovo nome utente desiderato. Sostituire il valore segnaposto testdb con il nome del database.

    Questo codice SQL crea un nuovo database denominato testdb. Crea quindi un nuovo utente nel servizio MySQL e concede all'utente tutti i privilegi per il nuovo schema del database (testdb.*).

    CREATE DATABASE testdb;
    

Creare un utente non amministratore

Dopo aver creato il database, è possibile iniziare creando un utente non amministratore usando l'istruzione MySQL CREATE USER.

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

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

FLUSH PRIVILEGES;

Verificare le autorizzazioni utente

Per visualizzare i privilegi consentiti per l'utente db_user nel database testdb, eseguire l'istruzione MySQL SHOW GRANTS.

USE testdb;

SHOW GRANTS FOR 'db_user'@'%';

Connettersi al database con il nuovo utente

Accedere al server, specificando il database designato e usando il nuovo nome utente e la nuova password. Questo esempio illustra la riga di comando MySQL. Quando si usa questo comando, viene richiesta la password dell'utente. Usare i valori segnaposto con il nome del server, il nome del database e il nome utente effettivi. Vedere come connettere il singolo server e la flessibilità nella tabella seguente.

Tipo di server Utilizzo
Server unico mysql --host mydemoserver.mysql.database.azure.com --database testdb --user db_user@mydemoserver -p
Server flessibile mysql --host mydemoserver.mysql.database.azure.com --database testdb --user db_user -p

Limitare i privilegi per un utente

Per limitare il tipo di operazioni che un utente può eseguire nel database, è necessario aggiungere in modo esplicito le operazioni nell'istruzione GRANT. Vedere l'esempio seguente:

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;

Informazioni su azure_superuser

Tutti i server di Database di Azure per MySQL vengono creati con un utente denominato "azure_superuser". Microsoft ha creato un account di sistema per gestire il server per eseguire il monitoraggio, i backup e altre normali operazioni di manutenzione. I tecnici su chiamata possono anche usare questo account per accedere al server durante un evento imprevisto con l'autenticazione del certificato e devono richiedere l'accesso usando processi just-in-time (JIT).

Passaggi successivi