Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gibt an, ob eine SQL Server 2005-Anmeldung Mitglied der angegebenen festen Serverrolle ist.
Transact-SQL-Syntaxkonventionen
Syntax
IS_SRVROLEMEMBER ('role' [ , 'login' ] )
Argumente
'role'
Der Name der zu überprüfenden Serverrolle. role ist ein Wert vom Datentyp sysname.Gültige Werte für role sind:
sysadmin
- dbcreator
- bulkadmin
- diskadmin
- processadmin
- serveradmin
- setupadmin
- securityadmin
- 'login'
Der Name der zu überprüfenden SQL Server 2005-Anmeldung. login ist ein Wert vom Datentyp sysname, der Standardwert ist NULL. Wird kein Wert angegeben, wird die SQL Server-Anmeldung des aktuellen Benutzers verwendet.
Rückgabetypen
int
Hinweise
IS_SRVROLEMEMBER gibt folgende Werte zurück.
| Rückgabewert | Beschreibung |
|---|---|
0 |
login ist kein Mitglied von role. |
1 |
login ist ein Mitglied von role. |
NULL |
role oder login ist nicht gültig. |
Mit dieser Funktion legen Sie fest, ob der aktuelle Benutzer eine Aktion ausführen kann, für die die Berechtigungen der Serverrolle erforderlich sind.
Wenn eine Microsoft Windows-Anmeldung, wie z. B. London\JoeB, für login angegeben wird, gibt IS_SRVROLEMEMBER den Wert NULL zurück, falls der Anmeldung der direkte Zugriff auf SQL Server 2005 nicht erteilt oder verweigert wurde.
Wenn die Anmeldung eine Windows-Domänenanmeldung ist, kann sie aufgrund der Mitgliedschaft in einer Windows-Gruppe Mitglied einer festen Serverrolle sein. Um derartige indirekte Mitgliedschaften aufzulösen, fordert IS_SRVROLEMEMBER Informationen zu Windows-Gruppenmitgliedschaften vom Domänencontroller an. Wenn nicht auf den Domänencontroller zugegriffen werden kann, oder wenn der Domänencontroller nicht reagiert, berücksichtigt IS_SRVROLEMEMBER beim Zurückgeben der Informationen zur Rollenmitgliedschaft nur den Benutzer und die lokalen Gruppen.
Beispiele
Das folgende Beispiel gibt an, ob die SQL Server-Anmeldung für den aktuellen Benutzer Mitglied der festen Serverrolle sysadmin ist.
IF IS_SRVROLEMEMBER ('sysadmin') = 1
print 'Current user''s login is a member of the sysadmin role'
ELSE IF IS_SRVROLEMEMBER ('sysadmin') = 0
print 'Current user''s login is NOT a member of the sysadmin role'
ELSE IF IS_SRVROLEMEMBER ('sysadmin') IS NULL
print 'ERROR: The server role specified is not valid.'
Siehe auch
Verweis
IS_MEMBER (Transact-SQL)
Sicherheitsfunktionen (Transact-SQL)