A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  Sonderzeichen  sybase-tech-blog


Kategorie: ASE: T-SQL: User, Login und Role Funktionen

has_role(), ASE Role Function

Die Role Function has_role() überprüft ob ein Benutzer die, über den Parameter "role_name" angegebenen Rolle gegranted, also die entsprechenden rollenspezifischen Rechte besitzt. Diese Funktion steht ab ASE® Version 15.0 zur Verfügung. Von Sybase wird empfohlen die Funktion has_role() anstelle proc_role() zu verwenden.

Die Funktion has_role() gibt drei unterschiedliche Zahlenwerte (0,1,und 2) aus. Der Wert hängt davon ab, ob die, in dem Parameter "role_name" angegebene Rolle dem Benutzer gegranted und/oder ob sie aktiv ist. Der Wert "0" wird zurückgegeben wenn die angegebene Rolle nicht gegranted ist oder sie den Benutzer gegranted ist aber nicht aktiviert wurde. Der Wert "1" wird dann zurückgebenen, wenn dem Benutzer die angebebene Rolle gegranted wurde und aktiv ist. Der Wert "2" wird bei einem Benutzer ausgegeben der eine aktive Rolle besitzt, die die im Parameter "role_name" angegebene Rolle beinhaltet.

Syntax der Role Function has_role()

    has_role("role_name"[, 0])
    

Der Parameter der Role Function has_role()

role_name
Der Parameter "role_name" ist ein Platzhalter für Rollen.

0
Der Parameter "0" ist ein optional anzugebender Platzhalter, der das Auditing unterdrückt.

Beispiel für die Role Function has_role()

    select has_role("sso_role", 0)
go
-----
1

Zeigt, dass dem Benutzer die Rolle des "System Security Officer" gegranted und aktiviert ist.

Siehe auch:
alter role,
create role,
drop role,
grant role,
revoke role,
set role,
proc_role(),
mut_excl_roles(),
role_contain(),
role_id(),
role_name(),
show_role(),
sp_activeroles,
sp_displayroles,
sp_role,
suser_id(),
suser_name(),
user,
user_id(),
user_name(),
valid_user() und
Funktionen.