Gestionarea rolurilor aplicației
Rolurile de aplicații sunt roluri speciale de bază de date pe care le puteți utiliza pentru a permite accesul la date specifice numai utilizatorilor care stabilesc o conexiune printr-o aplicație specifică. Rolurile de aplicații nu conțin membri, deci trebuie să le activați în conexiunea curentă înainte de utilizare. Când rolul aplicației este activat, conexiunea curentă pierde permisiunile atribuite utilizatorilor și primește doar permisiunile care se aplică pentru rolul aplicației.
Creați rolurile aplicației
Puteți crea un rol de aplicație utilizând instrucțiunea CREATE APPLICATION ROLE. Acest cod este disponibil în fișierul exemplu ApplicationRoles.sql.
- Modificați contextul conexiunii la baza de date AdventureWorks.
Utilizarea rolului aplicației
Rotile de aplicație trebuie activate înainte de utilizare. Acest lucru se poate face prin rularea procedurii stocate în sistem sp_setapprole. După ce rolul de aplicație este activat în conexiunea curentă, acesta rămâne activ până când conexiunea este închisă sau se execută procedura sp_unsetapprole stocată în sistem. Deși rolurile aplicațiilor sunt destinate utilizării de la aplicațiile client, ele pot fi de asemenea folosite din pachete speciale T-SQL. Procedura următoare (puteți găsi exemple în fișierele sub numele ApplicationRolesUse.sql) descrie modul de activare a rolului rolul financiar și de a anula activarea.
- Modificați contextul conexiunii la baza de date AdventureWorks.
Ștergerea unui rol de aplicație
Dacă doriți să eliminați rolul aplicației, utilizați instrucțiunea DROP APPLICATION ROLE. după cum se arată în exemplul următor (acest cod este disponibil în fișierul exemplu ApplicationRoles.sql):
- Modificați contextul conexiunii la baza de date AdventureWorks.
Controlul accesului la schemele
Introducere în scheme
Schemele bazei de date pot fi create utilizând instrucțiunea CREATE SCHEMA. Când creați o schemă, puteți crea obiecte de bază de date și puteți atribui permisiuni într-o singură tranzacție, care se numește prin instrucțiunea CREATE SCHEMA. Următorul exemplu (este în fișierele exemplu sub numele de ManagingAccessToSchemas01.sql) creează o schemă numită Contabilitate. atribuie utilizatorului Peter proprietarului schemei și creează un tabel numit Facturi. Acest exemplu oferă, de asemenea, permisiunea selectată pentru rolul bazei de date publice.
- Modificați contextul conexiunii la baza de date AdventureWorks.
Separați utilizatorii de schemele
Utilizăm schema implicită
În cazul în care cererea se referă la un obiect bază de date, fără a specifica schema, SQL Server încearcă să găsească un obiect în schema specificată pentru utilizatorul curent în mod implicit. Dacă obiectul nu este conținut în schema implicită, SQL Server încearcă să localizeze obiectul în schema dbo. Într-un alt exemplu (care pot fi găsite în fișierele model numit ManagingAccessToSchemas03.sql) arată cum să creați o schemă și atribuiți-o ca schema implicită pentru utilizator.
- Creați datele de conectare SQL Server în această instanță de SQL Server.