Microsoft SQL Server
Databasbehörigheter
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 kommerSELECT
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 somSELECT
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