Sök…


Anmärkningar

Grundläggande syntax:

{GRANT| REVOKE | DENY} {PERMISSION_NAME} [ON {SECURABLE}] TO {PRINCIPAL};
  • {GRANT | REVOKE | DENY} - Vad du försöker åstadkomma
    • Bevilja: "Ge detta tillstånd till den angivna rektor"
    • Återkalla: "Ta bort detta tillstånd från den angivna rektor"
    • Förneka: "Se till att den angivna huvudmannen aldrig har detta tillstånd (dvs." DENY SELECT "betyder att oavsett andra behörigheter kommer SELECT att misslyckas för denna rektor)
  • PERMISSION_NAME - Den operation som du försöker påverka. Detta kommer att bero på det säkrbara. Det är till exempel inte vettigt att GRANT SELECT på en lagrad procedur.
  • SÄKERHET - Namnet på det du försöker påverka behörigheterna på. Detta är valfritt . Att säga GRANT SELECT TO [aUser]; är helt acceptabelt; det betyder "för alla värdepapper som SELECT tillståndet är meningsfullt, GRANT det tillståndet".
  • PRINCIPAL - För vem du försöker påverka behörigheter. På databasnivå kan detta till exempel vara en roll (applikation eller databas) eller användare (mappad till en inloggning eller inte).

Ändra behörigheter

GRANT SELECT ON [dbo].[someTable] TO [aUser];

REVOKE SELECT ON [dbo].[someTable] TO [aUser];
--REVOKE SELECT [dbo].[someTable] FROM [aUser]; is equivalent

DENY SELECT ON [dbo].[someTable] TO [aUser];

SKAPA ANVÄNDARE

--implicitly map this user to a login of the same name as the user
CREATE USER [aUser];

--explicitly mapping what login the user should be associated with
CREATE USER [aUser] FOR LOGIN [aUser];

SKAPA ROL

CREATE ROLE [myRole];

Ändra rollmedlemskap

-- SQL 2005+
exec sp_addrolemember @rolename = 'myRole', @membername = 'aUser';
exec sp_droprolemember @rolename = 'myRole', @membername = 'aUser';

-- SQL 2008+
ALTER ROLE [myRole] ADD MEMBER [aUser];
ALTER ROLE [myRole] DROP MEMBER [aUser];

Obs: rollmedlemmar kan vara vilken princip som helst på databasnivå. Det vill säga att du kan lägga till en roll som medlem i en annan roll. Att lägga till / släppa rollmedlemmar är också idempotent. Det vill säga att försök att lägga till / släppa kommer att resultera i deras närvaro / frånvaro (respektive) i rollen oavsett hur aktuellt rollmedlemskapet är.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow