SQL Server Securable and Principal
Un securabile si riferisce alle risorse Il sistema di autorizzazione del motore del database SQL Server controlla l'accesso. Un esempio sarebbe una tabella del database.
Un principale si riferisce a qualsiasi entità che richieda l'accesso a qualsiasi risorsa SQL Server. Ad esempio, un utente che richiede autorizzazioni su una tabella è un principale.
Dichiarazione di sovvenzione SQL Server
Di seguito mostra la sintassi del comando Grant in SQL Server:
Concedere le autorizzazioniÈ necessario specificare l'autorizzazione che si desidera assegnare al capitale come elenco separato da virgola.
La parola chiave su consente di specificare la securabile su cui vengono applicate le autorizzazioni. Infine, la parola chiave consente di impostare il capitale di destinazione.
Ad esempio, la creazione di un utente utilizzando l'istruzione Crea utente non definisce le autorizzazioni per quell'utente. È quindi essenziale utilizzare la dichiarazione di sovvenzione per impostare le autorizzazioni per quell'utente.
Facciamo un esempio.
Crea un esempio di accesso
Iniziamo creando un login di esempio per scopi di illustrazione. La query è come prevista di seguito:
Crea login LinuxhintIl comando sopra dovrebbe creare un utente con il nome utente LinuxHint e la password specificata.
Crea database di esempio
Possiamo creare un database in cui l'utente risiederà una volta che avremo definito un accesso. Le domande sono come mostrate:
Drop database se esiste risolver;Crea un utente per l'accesso
Una volta creato il database e la tabella, possiamo creare un utente per l'accesso LinuxHint come:
Usa il resolverAccedi come nuovo utente
Successivamente, accediamo come utente appena creato. Il comando è come mostrato:
setuser 'Linuxhint';Una volta effettuato l'accesso, possiamo tentare di visualizzare le tabelle eseguendo il comando seleziona:
Seleziona * dalle voci;L'esecuzione della query sopra dovrebbe restituire un errore:
MSG 229, Livello 14, Stato 5, linea 379Questo perché l'utente LinuxHint non ha autorizzazioni nel database, comprese le autorizzazioni di selezione.
Concedere l'autorizzazione all'utente
Dobbiamo concedere le autorizzazioni di selezione per consentire all'utente di visualizzare le informazioni memorizzate nelle tabelle.
Per questo, è necessario accedere con l'account amministrativo SQL Server.
Successivamente, esegui la domanda come:
concedere selezionare le voci a Linuxhint;Una volta eseguito, accedi come utente LinuxHint e utilizza l'istruzione SELECT.
Seleziona * dalle voci;In questo caso, il comando restituisce la tabella poiché l'utente ha autorizzazioni selezionate
È inoltre possibile assegnare altra autorizzazione all'utente, come inserire ed eliminare come:
Grant Insert, Elimina sulle voci a Linuxhint;In questo caso, l'utente Linuxhint dovrebbe avere le autorizzazioni selezionate, inserisci ed eliminate nella tabella delle voci.
Conclusione
In questo post, abbiamo esplorato l'uso del comando Grant in SQL Server. Il comando consente di assegnare le autorizzazioni a un determinato principale.