Declarația de acordare (transact-sql)

Această opțiune este depreciată și salvată numai pentru a accepta compatibilitatea înapoi. Nu oferă toate permisiunile posibile. Problema ALL permission este echivalentă cu acordarea următoarelor permisiuni.

În cazul în care este o bază de date de securizare, TOATE argument se aplică la baza de date permise BACKUP, LOG BACKUP, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, CREATE PROCEDURA, CREATE REGULA, CREATE TABLE, și de a crea VIEW.

Dacă obiectul protejat este o funcție scalară, argumentul ALL se referă la permisiunile EXECUTE și REFERENCES.

În cazul în care este o funcție de securizare care returnează o valoare de masă, argumentul ALL se aplică permise, INSERT, DELETE REFERINȚE, SELECT și UPDATE.

Dacă entitatea protejată este o procedură stocată, argumentul ALL implică permisiunea EXECUTE.

Dacă obiectul protejat este o tabelă, argumentul ALL se referă la permisiunile DELETE, INSERT, REFERENCES, SELECT și UPDATE.

Dacă obiectul protejat este o vizualizare, argumentul ALL se referă la permisiunile DELETE, INSERT, REFERENCES, SELECT și UPDATE.

Activat pentru compatibilitatea cu cerințele ISO. Nu modifică comportamentul parametrului ALL.

Numele permisiunii. Asociațiile permisiunilor permise pentru obiectele protejate sunt descrise în secțiunile de mai jos.

Specifică numele coloanei din tabelul căruia i se acordă permisiunea. Sunt necesare paranteze "()".

Indică clasa obiectului protejat pentru care se acordă permisiunea. Este necesar un calificativ pentru zona "::".

Specifică obiectul protejat căruia i se acordă permisiunea.

Numele participantului. Compoziția participanților, cărora li se pot acorda autorizații, variază în funcție de obiectul protejat. Combinările admise sunt descrise în secțiunile de mai jos.

Indică faptul că permisiunea de primire va avea, de asemenea, posibilitatea de a acorda permisiunea specificată celorlalți participanți.

Specifică participantul de la care participantul care efectuează această cerere moștenește dreptul de a acorda permisiunea.

O descriere completă a sintaxei instrucțiunii GRANT este dificilă. Diagrama de sintaxă de mai sus este simplificată pentru a explica structura acesteia. O descriere completă a sintaxei de acordare a permisiunilor pentru anumite obiecte protejate este prezentată în secțiunile de mai jos.

Instrucțiunea REVOKE poate fi utilizată pentru a șterge drepturile de acces deja acordate, iar instrucțiunea DENY poate fi utilizată pentru a împiedica participantul să obțină o permisiune specifică prin instrucțiunea GRANT.

Acordarea permisiunii elimină DENY sau REVOKE pentru această permisiune pe acest obiect protejat. Dacă aceeași permisiune este interzisă pentru obiectul mai mare care conține acest obiect protejat, atunci DENY are o prioritate mai mare. Însă anularea unui permis emis într-un domeniu de aplicare mai larg nu primește această prioritate.

Permisiunile la nivel de bază de date sunt publicate în cadrul bazei de date specificate. Dacă un utilizator are nevoie de permisiuni pe obiecte dintr-o altă bază de date, trebuie să creați un cont pentru el în această bază de date sau să îi acordați permisiunea de a accesa baza de date curentă și alte baze de date.

Nivelul negativ al tabelului (DENY) are o prioritate mai mică decât permisiunea la nivel de coloană (GRANT). Această incompatibilitate în ierarhia permisiunilor este furnizată pentru a asigura compatibilitatea înapoi. În emisiunea viitoare, acest lucru va fi eliminat.

Procedura stocată de sistemul sp_helprotect raportează permisiunile de acces la obiecte protejate la nivel de bază de date.

O persoană care furnizează autorizație (sau participant, ca parametru specificat) trebuie să aibă permisiunea în sine sau furnizate prin intermediul GRANT OPTION, sau un nivel mai ridicat de rezoluție, care include implicit o rezolutie furnizate. Dacă utilizați parametrul AS, se aplică restricții suplimentare. Pentru mai multe informații, consultați secțiunile referitoare la anumite obiecte protejate.

Proprietarii obiectelor pot acorda permisiuni obiectelor pe care le dețin. Participanții care au permisiunea CONTROL asupra obiectului protejat pot acorda permisiunea acestui obiect protejat.

Participanții care au primit permisiunea CONTROL SERVER, cum ar fi membri ai rolului serverului fix sysadmin, pot acorda orice permisiune oricărui obiect de server protejat. Părțile care acordă permisiunea CONTROL la baza de date, cum ar fi membri ai rolului bazei de date fixe db_owner, pot acorda orice permisiune pentru orice obiect protejat din baza de date. Participanții cărora li se acordă permisiunea CONTROL la schemă pot acorda orice permisiune pentru orice obiecte conținute în această schemă.

Articole similare