Salta al contenuto

Come posso creare un altro utente amministratore per la mia istanza database Amazon RDS per MySQL?

3 minuti di lettura
0

Desidero creare un altro utente con autorizzazioni dell'account amministratore per la mia istanza database Amazon Relational Database Service (Amazon RDS) per MySQL.

Risoluzione

Per impostazione predefinita, Amazon RDS per MySQL ha un account amministratore principale. È consigliabile creare un altro utente con autorizzazioni minime da utilizzare con l'applicazione. Per ulteriori informazioni, consulta Modello di privilegi basato sui ruoli per RDS per MySQL.

Nota: a seconda della versione di MySQL che utilizzi, puoi anche eseguire il comando GRANT per collegare autorizzazioni dinamiche a un utente.

Per versioni di MySQL 8.0.36 e successive

Per concedere autorizzazioni basate sui ruoli agli utenti con rds_superuser_role, completare i passaggi seguenti:

  1. Come utente amministratore principale, esegui il comando SHOW GRANTS per visualizzare l'elenco delle autorizzazioni del ruolo rds_superuser_role:

    SHOW GRANTS FOR rds_superuser_role@'%';
  2. Esegui il comando CREATE USER per creare un nuovo utente amministratore:

    CREATE USER 'new_admin_user'@'%' IDENTIFIED BY 'password';
  3. Esegui il comando GRANT per concedere il nuovo ruolo al nuovo utente:

    grant rds_superuser_role to 'new_admin_user'@'%';
  4. Esegui questo comando per attivare rds_superuser_role per il nuovo utente:

    set role all;
  5. Esegui questa query per verificare di aver concesso rds_superuser_role al nuovo utente:

    select current_role();

    Esempio di output:

    +--------------------------+  
    | current_role() |  
    +--------------------------+  
    | `rds_superuser_role`@`%` |  
    +--------------------------+

Per versioni di MySQL precedenti alla 8.0.36

Completa i seguenti passaggi:

  1. Connettiti all'istanza database RDS per MySQL.

  2. Esegui questo comando per ottenere un elenco delle autorizzazioni attualmente disponibili per l'account amministratore:

    SHOW GRANTS for admin_username;

    Nota: sostituisci admin_username con il tuo nome utente.

  3. Copia l'output dell'elenco delle autorizzazioni che utilizzerai nel passaggio 5.
    Esempio di output:

    +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| Grants for admin@% |  
    +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+  
    | 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 'admin'@'%' WITH GRANT OPTION |  
    +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  4. Esegui questo comando per creare un nuovo utente:

    CREATE USER 'new_admin_user'@'%' IDENTIFIED BY 'password';

    Nota: sostituisci new_admin_user e password rispettivamente con il tuo nome utente e con la tua password.

  5. Esegui questo comando GRANT e includi l'elenco delle autorizzazioni da collegare al nuovo utente che hai copiato nel passaggio 2:

    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_admin_user'@'%' WITH GRANT OPTION;
  6. Utilizza il nuovo utente per effettuare l'accesso.

  7. Esegui questa query per verificare di aver concesso le autorizzazioni al nuovo utente amministratore:

    SHOW GRANTS for admin_username;

    Nota: sostituisci admin_username con il tuo nome utente.

Informazioni correlate

Attività DBA comuni per istanze database MySQL

Come posso consentire agli utenti di autenticarsi su un'istanza database Amazon RDS per MySQL tramite le proprie credenziali IAM?