Grant, acordând permisiunea schemei (transact-sql)

Permisiunea de a lucra cu o schemă care poate fi furnizată. Rezoluțiile posibile sunt prezentate mai jos.

ON SCHEMA. skhema_name

Schema pentru a lucra cu permisiunea acordată. Calificarea zonei "::" este necesară.

Beneficiarul poate fi unul dintre următorii:

  • utilizator de baze de date
  • rol de bază de date
  • rol de aplicare
  • utilizator de bază de date asociat cu numele de conectare Windows
  • utilizator de baze de date mapat la un grup Windows
  • utilizator de bază de date asociat unui certificat
  • utilizator de bază de date mapat la o cheie asimetrică
  • Utilizatorul bazei de date care nu este mapat pe serverul participant.
GRANT OPTION

Indică faptul că participanților i se va acorda posibilitatea de a acorda permisiunea specificată celorlalți participanți.

Indică participantul de la care participantul care efectuează această cerere are dreptul de a acorda permisiunea. Poate fi una dintre următoarele:

  • utilizator de baze de date
  • rol de bază de date
  • rol de aplicare
  • utilizator de bază de date asociat cu numele de conectare Windows
  • utilizator de baze de date mapat la un grup Windows
  • utilizator de bază de date asociat unui certificat
  • utilizator de bază de date mapat la o cheie asimetrică
  • Utilizatorul bazei de date care nu este mapat pe serverul participant.

Combinația dintre permisiunile ALTER și REFERENCE în unele cazuri vă poate permite să vizualizați date sau să efectuați funcții neautorizate. De exemplu: Un utilizator cu o permisiune ALTER pe un tabel și o permisiune de REFERENȚIE pentru o funcție poate crea o coloană calculată pe baza funcției și, ca rezultat, o execută. În acest caz, utilizatorul are de asemenea nevoie de o permisiune SELECT pe coloana calculată.

O schemă este un obiect la nivel de bază de date protejat conținut într-o bază de date care este maternă în raport cu aceasta în ierarhia permisiunilor. Următoarele sunt permisiunile cele mai specifice și limitate (împreună cu permisiunile cele mai frecvente din care acestea se transmit) care pot fi furnizate pentru schemă.

Conținut în rezoluția schemei

Conținut în permisiunea bazei de date

Un utilizator cu permisiune ALTER pe schemă poate folosi lanțul de proprietate pentru a avea acces la entitățile protejate ale altor sisteme, inclusiv acele entități cărora le este interzis explicit accesul utilizatorului. Acest lucru se datorează faptului că lanțul de proprietate ocolește verificarea permisiunilor asupra obiectelor accesate când aparțin participantului care deține obiectele care le fac referire. Un utilizator cu permisiune ALTER pe schemă poate crea proceduri, sinonime și vizualizări care aparțin proprietarului schemei. Aceste obiecte vor avea acces (prin intermediul lanțului de proprietate) la date din alte sisteme deținute de proprietarul schemei. Dacă este posibil, permisiunea ALTER ar trebui evitată dacă schema aparține, de asemenea, proprietarului.

De exemplu, această problemă poate apărea în următoarele scenarii. Se presupune că utilizatorul U1 are o permisiune ALTER pe circuitul S1. Utilizatorului U1 i se refuză accesul la obiectul T1 din schema S2. Schemele S1 și S2 aparțin aceluiași proprietar.

Utilizatorul U1 are permisiuni CREATE PROCEDURE pe baza de date și EXECUTE pe schema S1. Prin urmare, utilizatorul U1 poate crea o procedură memorată și apoi accesează obiectul interzis T1 din această procedură stocată.

Utilizatorul U1 are permisiuni CREATE SYNONYM pe baza de date și SELECT pe schema S1. Prin urmare, utilizatorul U1 poate crea un sinonim pentru obiectul T1 interzis în schema S1 și apoi să acceseze obiectul cu un sinonim.

Utilizatorul U1 are permisiuni CREATE VIEW în baza de date și SELECT pe schema S1. Prin urmare, utilizatorul U1 poate crea vizualizări în S1 pentru a solicita date din obiectul interzis T1 și apoi accesați acest obiect utilizând vizualizarea.

Obiectul care oferă permisiunea (sau participantul specificat de parametrul AS) trebuie să aibă fie permisiunea în sine emisă de GRANT OPTION, fie permisul de nivel superior de la care este derivată permisiunea acordată.

Dacă se utilizează parametrul AS, se aplică următoarele cerințe suplimentare.

Aveți nevoie de permisiune suplimentară

Utilizatorul bazei de date

Rezoluția uzurparea identității, asociat cu un membru de utilizator într-un rol fix db_securityadmin bază de date, calitatea de membru în rolul de bază de date db_owner fixe, sau calitatea de membru într-un rol sysadmin server de fix.

Utilizatorul bazei de date a fost asociat cu conectarea la Windows

Rezoluția uzurparea identității, asociat cu un membru de utilizator într-un rol fix db_securityadmin bază de date, calitatea de membru în rolul de bază de date db_owner fixe, sau calitatea de membru într-un rol sysadmin server de fix.

Utilizatorul bazei de date a fost mapat în grupul Windows

Componența într-un grup Windows, calitatea de membru în rolul bazei de date fixe db_securityadmin, calitatea de membru în rolul bazei de date fixe db_owner sau apartenența la rolul serverului fix sysadmin.

Utilizatorul bazei de date care este asociat cu certificatul

Calitatea de membru într-un rol fix db_securityadmin bază de date, calitatea de membru în rolul de bază de date db_owner fixe, sau calitatea de membru într-un rol sysadmin server de fix.

Utilizatorul bazei de date a fost mapat la o cheie asimetrică

Calitatea de membru într-un rol fix db_securityadmin bază de date, calitatea de membru în rolul de bază de date db_owner fixe, sau calitatea de membru într-un rol sysadmin server de fix.

Utilizatorul bazei de date nu a fost mapat la niciun server membru

Rezoluția uzurparea identității, asociat cu un membru de utilizator într-un rol fix db_securityadmin bază de date, calitatea de membru în rolul de bază de date db_owner fixe, sau calitatea de membru într-un rol sysadmin server de fix.

Rolul bazei de date

Permisiunea ALTER asociată cu rolul, calitatea de membru în rolul bazei de date fixe db_securityadmin, apartenența la rolul bazei de date fixe db_owner sau apartenența la rolul serverului fix sysadmin.

Permisiunea ALTER asociată cu rolul, calitatea de membru în rolul bazei de date fixe db_securityadmin, apartenența la rolul bazei de date fixe db_owner sau apartenența la rolul serverului fix sysadmin.

Proprietarii de obiecte pot acorda permisiuni de a lucra cu obiecte pe care le dețin. Participanții care au permisiunea de control asociată cu obiectul protejat pot acorda permisiuni de a lucra cu acest obiect.

Entitățile cărora le-a fost acordată permisiunea CONTROL SERVER, cum ar fi elementele rolului serverului fix sysadmin. poate acorda orice permisiune pentru a lucra cu orice obiecte de server protejate. Entitățile cărora le-a fost acordată permisiunea de control asociată cu baza de date, cum ar fi rolul bazei de date fixe db_owner ale bazei de date, pot acorda orice permisiune de a lucra cu orice obiecte protejate din baza de date. CONTROL proprietarii de drepturi asociate cu schema poate acorda orice permisiuni pentru a lucra cu orice obiecte conținute în această schemă.

Articole similare