Delen via


Gebruikers maken in Azure Database for MySQL

In dit artikel wordt beschreven hoe u nieuwe gebruikersaccounts maakt voor interactie met een Azure Database for MySQL-server.

Notitie

Dit artikel verwijst naar de term slaaf, die Microsoft niet meer gebruikt. Zodra de term uit de software wordt verwijderd, verwijderen we deze uit dit artikel.

U hebt een gebruikersnaam en wachtwoord voor de serverbeheerder opgegeven bij het maken van uw Azure Database for MySQL-server. Zie deze quickstart voor meer informatie. U kunt de gebruikersnaam van de serverbeheerder in Azure Portal bepalen.

De gebruiker van de serverbeheerder heeft deze bevoegdheden:

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

Nadat u een Azure Database for the MySQL-server hebt gemaakt, kunt u het eerste serverbeheerdersaccount gebruiken om meer gebruikers te maken en beheerderstoegang te verlenen. U kunt ook het beheerdersaccount van de server gebruiken om gebruikers met minder bevoegdheden te maken met toegang tot afzonderlijke databaseschema's.

Notitie

De SUPER-bevoegdheid en de DBA-rol worden niet ondersteund. Bekijk de bevoegdheden in het artikel met beperkingen om te begrijpen wat niet wordt ondersteund in de service.

Wachtwoordinvoegtoepassingen zoals validate_password en caching_sha2_password worden niet ondersteund door de service.

Een -database maken

  1. Haal de verbindingsgegevens en de gebruikersnaam van de beheerder op.

    Voor verbinding met uw databaseserver moet u beschikken over de volledige servernaam en aanmeldingsreferenties van de beheerder. U kunt de servernaam en aanmeldingsgegevens eenvoudig vinden op de serveroverzicht of op de pagina Eigenschappen in Azure Portal.

  2. Gebruik het beheerdersaccount en wachtwoord om verbinding te maken met uw databaseserver. Gebruik het clienthulpprogramma van uw voorkeur, MySQL Workbench, mysql.exe of HeidiSQL.

  3. Bewerk en voer de volgende SQL-code uit. Vervang de waarde van de tijdelijke aanduiding db_user door de beoogde nieuwe gebruikersnaam. Vervang de waarde van de tijdelijke aanduiding testdb door de naam van uw database.

Met deze SQL-code maakt u een nieuwe database met de naam testdb. Vervolgens wordt er een nieuwe gebruiker in de MySQL-service gemaakt en verleent deze gebruiker alle bevoegdheden voor het nieuwe databaseschema (testdb.*).

   CREATE DATABASE testdb;

Een niet-beheerder maken

Nu u de database hebt gemaakt, kunt u een niet-beheerder maken met behulp van de CREATE USER MySQL-instructie.

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

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

 FLUSH PRIVILEGES;

Controleer de gebruikersmachtigingen

Voer de MySQL-instructie uit om de bevoegdheden weer te geven die zijn toegestaan voor gebruikers db_user in de SHOW GRANTS testdb-database.

   USE testdb;

 SHOW GRANTS FOR 'db_user'@'%';

Verbinding maken met de database met de nieuwe gebruiker

Meld u aan bij de server, geef de aangewezen database op en gebruik de nieuwe gebruikersnaam en het nieuwe wachtwoord. In dit voorbeeld ziet u de MySQL-opdrachtregel. Wanneer u deze opdracht gebruikt, wordt u gevraagd om het wachtwoord van de gebruiker. Gebruik uw eigen servernaam, databasenaam en gebruikersnaam. Zie hoe u verbinding maakt in de volgende tabel.

      --host mydemoserver.mysql.database.azure.com --database testdb --user db_user -p

Bevoegdheden voor een gebruiker beperken

Als u het type bewerkingen wilt beperken dat een gebruiker in de database kan uitvoeren, moet u expliciet de bewerkingen toevoegen in de GRANT-instructie . Zie het volgende voorbeeld:

   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;

Over azure_superuser

Alle Azure Database for MySQL-servers worden gemaakt met een gebruiker met de naam 'azure_superuser'. Microsoft heeft een systeemaccount gemaakt om de server te beheren en bewaking, back-ups en regelmatig onderhoud uit te voeren. On-call engineers kunnen dit account ook gebruiken voor toegang tot de server tijdens een incident met certificaatverificatie en moeten toegang aanvragen met behulp van JIT-processen (Just-In-Time).