Il comando GRANT ALL PRIVILEGES in MariaDB consente di assegnare a un utente tutti i permessi su un database, permettendo operazioni senza restrizioni come la creazione, la modifica o l’eliminazione di tabelle.

Che cos’è GRANT ALL PRIVILEGES in MariaDB?

Il comando GRANT ALL PRIVILEGES in MariaDB consente di attribuire all’utente tutti i privilegi disponibili su uno o più database, tra cui le autorizzazioni alla creazione, la modifica e l’eliminazione di tabelle e l’accesso alle funzioni amministrative. Con l’uso mirato di GRANT ALL PRIVILEGES è possibile controllare i permessi di accesso all’interno dell’ambiente del database.

Per utilizzare GRANT ALL PRIVILEGES in MariaDB devi possedere privilegi di sistema elevati, come il privilegio SUPER o l’autorizzazione per assegnare permessi ad altri (GRANT OPTION). Accedi con un account amministrativo e assicurati di avere effettuato la connessione all’istanza corretta del database. Definisci con precisione il nome utente e il relativo host per evitare assegnazioni errate. Verifica inoltre che il database di destinazione esista già, poiché il comando si applica solo a database esistenti.

Compute Engine
La soluzione IaaS ideale per i tuoi carichi di lavoro
  • vCPU estremamente vantaggiose e potenti core dedicati
  • Massima flessibilità senza periodo contrattuale minimo
  • Servizio di assistenza tecnica 24 ore su 24, 7 giorni su 7

Sintassi del comando GRANT ALL PRIVILEGES in MariaDB

La sintassi di base per assegnare tutti i privilegi su un database in MariaDB è la seguente:

GRANT ALL PRIVILEGES ON database.* TO 'username'@'host';
sql

Il comando assegna tutti i permessi all’utente indicato sul database specificato. Con 'username'@host stabilisci a quale utente e da quale host è consentito l’accesso. È possibile anche definire una password contestualmente, per autenticare l’utente.

Dopo l’esecuzione del comando, per rendere effettive le modifiche è necessario aggiornare i privilegi con:

FLUSH PRIVILEGES;
sql

Questo garantisce che i privilegi assegnati siano immediatamente attivi e correttamente salvati nel sistema.

Tutorial: creare un utente e assegnare i permessi

Per creare un nuovo utente in MariaDB e assegnare a esso tutti i permessi, segui questi passaggi:

Primo passaggio: creare un nuovo utente

Per prima cosa, crea un nuovo utente con una password sicura. A tal fine, utilizza il seguente comando:

CREATE USER 'newuser'@localhost IDENTIFIED BY 'strongpassword';
sql

Con il comando CREATE USER di MariaDB definisci un nuovo account e associ una password. Sostituisci newuser con il nome utente desiderato e strongpassword con una password univoca e sicura. Il comando localhost limita l’accesso al server locale. Se vuoi consentire l’accesso da remoto, inserisci l’indirizzo IP o il nome host del server desiderato.

Secondo passaggio: assegnare tutti i permessi su un database

Il comando GRANT ALL PRIVILEGES in MariaDB assegna all’utente tutti i privilegi disponibili sul database database_name. Il segnaposto * indica tutte le tabelle all’interno del database specificato.

GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@localhost;
sql

Terzo passaggio: consentire la trasmissione dei privilegi (GRANT OPTION)

Con l’aggiunta di WITH GRANT OPTION, l’utente ottiene il permesso per trasferire i privilegi ricevuti ad altri utenti.

GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@localhost WITH GRANT OPTION;
sql

Quarto passaggio: assegnare permessi specifici su database o tabelle

È possibile anche assegnare singoli permessi su un database o una tabella. Ad esempio, per consentire solo la lettura dei dati, utilizza il seguente comando:

GRANT SELECT ON database_name.* TO 'newuser'@localhost;
sql

In questo esempio, 'newuser' ottiene il permesso di leggere tutti i dati nel database database_name, ma non di apportare modifiche. Utilizzando * dopo il nome del database, i permessi si riferiscono a tutte le tabelle di quel database.

Per concedere l’accesso a una singola tabella, il comando diventa:

GRANT SELECT ON database_name.table_name TO 'newuser'@localhost;
sql

In questo modo, 'newuser' può leggere solo dalla tabella table_name contenuta all’interno del database database_name. Ciò consente di controllare con estrema precisione le azioni che l’utente è autorizzato a eseguire.

Quinto passaggio: applicare le modifiche

I privilegi vengono in genere applicati immediatamente. In caso contrario, è possibile eseguire il comando seguente per rendere effettivi tutti i permessi assegnati:

FLUSH PRIVILEGES;
sql

Sesto passaggio: visualizzare i privilegi assegnati

Per verificare tutti i permessi attualmente assegnati a un account utente, inserisci il seguente comando:

SHOW GRANTS FOR 'newuser'@localhost;
sql

Questo comando elenca tutte le autorizzazioni di cui dispone newuser per l’istanza MariaDB. Non vengono visualizzati solo i permessi generali su database o tabelle, ma anche privilegi speciali come la possibilità di trasferire i propri privilegi (WITH GRANT OPTION).

Managed Database Services
Concentrati sul tuo progetto, noi pensiamo al resto
  • Partner IONOS Cloud
  • Soluzioni flessibili e su misura
  • Data center situati in Europa
Hai trovato questo articolo utile?
Vai al menu principale