Introduzione
Una delle attività più comuni durante l'amministrazione di un database è la supervisione dell'accesso e delle autorizzazioni. MariaDB è un sistema di gestione di database relazionali (RDBMS) open-source, completamente compatibile. Il client MariaDB semplifica l'aggiunta di nuovi utenti e concede loro diversi gradi di privilegi.
Questo semplice tutorial mostra come creare un utente MariaDB e quindi come concedere privilegi all'utente appena creato.
Prerequisiti
- Accesso alla riga di comando/finestra del terminale
- Un account utente con sudo privilegi
- Un'istanza funzionante di MariaDB
Accedi al server MariaDB
Immettere il seguente comando nel terminale della riga di comando per accedere alla shell del client MariaDB:
sudo mysql -u root
Se il tuo utente root ha una password predefinita, modifica il comando per riflettere questo fatto:
sudo mysql -u root -p
Inserisci la tua password e accedi al client MariaDB.
Se non hai ancora creato alcun database, puoi farlo facilmente digitando il seguente comando nella shell del client MariaDB:
CREATE DATABASE 'yourDB';
Accedi a un elenco di database esistenti digitando questo comando:
SHOW DATABASES;
Il database che abbiamo appena creato è nell'elenco.
Crea nuovo utente MariaDB
Per creare un nuovo utente MariaDB, digita il seguente comando:
CREATE USER 'user1'@localhost IDENTIFIED BY 'password1';
In questo caso, utilizziamo il nome host "localhost" e non l'IP del server. Questa pratica è comune se prevedi di accedere tramite SSH al tuo server o quando utilizzi il client locale per connetterti a un server MySQL locale.
Dopo aver creato utente1 , verificane lo stato inserendo:
SELECT User FROM mysql.user;
L'output elenca tutti gli utenti esistenti.
Concedi privilegi all'utente MariaDB
L'utente appena creato non ha i privilegi per gestire i database né per accedere alla shell di MariaDB.
Per garantire tutti i privilegi a utente1 :
GRANT ALL PRIVILEGES ON *.* TO 'user1'@localhost IDENTIFIED BY 'password1';
Il *.* nella dichiarazione si riferisce al database o alla tabella per cui l'utente ha i privilegi. Questo comando specifico fornisce l'accesso a tutti i database che si trovano sul server. Poiché questo potrebbe essere un grave problema di sicurezza, dovresti sostituire il simbolo con il nome del database a cui stai fornendo l'accesso.
Per concedere privilegi solo per il tuo DB , digita la seguente istruzione:
GRANT ALL PRIVILEGES ON 'yourDB'.* TO 'user1'@localhost;
È fondamentale aggiornare i privilegi una volta che ne sono stati assegnati di nuovi con il comando:
FLUSH PRIVILEGES;
L'utente che hai creato ora dispone dei privilegi completi e dell'accesso al database e alle tabelle specificati.
Una volta completato questo passaggio, puoi verificare il nuovo utente1 dispone delle autorizzazioni corrette utilizzando la seguente istruzione:
SHOW GRANTS FOR 'user1'@localhost;
Le informazioni fornite dal sistema vengono visualizzate sul terminale.
Rimuovi l'account utente MariaDB
Se devi rimuovere un utente, puoi utilizzare il DROP
dichiarazione:
DROP USER 'user1'@localhost;
L'output conferma che utente1 non ha più accesso né privilegi.