Suche…


Bemerkungen

Grundlegende Syntax:

{GRANT| REVOKE | DENY} {PERMISSION_NAME} [ON {SECURABLE}] TO {PRINCIPAL};
  • {GRANT | REVOKE | DENY} - Was Sie erreichen wollen
    • Grant: "Diese Erlaubnis dem angegebenen Auftraggeber geben"
    • Widerruf: "Nehmen Sie diese Erlaubnis vom angegebenen Auftraggeber weg"
    • Verweigern: "Stellen Sie sicher, dass der angegebene Principal nie über diese Berechtigung verfügt (dh" DENY SELECT "bedeutet, dass unabhängig von anderen Berechtigungen SELECT für diesen Principal fehlschlägt).
  • PERMISSION_NAME - Der Vorgang, den Sie ausführen möchten. Dies hängt von der Sicherheit ab. Zum Beispiel macht es keinen Sinn, GRANT SELECT für eine gespeicherte Prozedur zu verwenden.
  • SECURABLE - Der Name der Sache, für die Sie die Berechtigungen beeinflussen möchten. Dies ist optional . GRANT SELECT TO [aUser]; ist vollkommen akzeptabel; es bedeutet , „für ein zu sicherndes , für die die SELECT - Berechtigung Sinn macht, GRANT , dass die Erlaubnis“.
  • PRINCIPAL - Für wen Sie versuchen, Berechtigungen zu beeinflussen. Auf Datenbankebene kann dies zum Beispiel eine Rolle (Anwendung oder Datenbank) oder ein Benutzer (zugeordnet zu einem Login oder nicht) sein.

Berechtigungen ändern

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];

BENUTZER ERSTELLEN

--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];

ROLLE ERSTELLEN

CREATE ROLE [myRole];

Rollenmitgliedschaft ändern

-- 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];

Hinweis: Rollenmitglieder können ein beliebiger Prinzipal auf Datenbankebene sein. Das heißt, Sie können eine Rolle als Mitglied in einer anderen Rolle hinzufügen. Das Hinzufügen / Löschen von Rollenmitgliedern ist idempotent. Das heißt, der Versuch des Hinzufügens / Ablegens hat zur Folge, dass die Rolle (bzw. deren Abwesenheit) unabhängig vom aktuellen Status ihrer Rollenmitgliedschaft ist.



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow