Kategorien:

Kontextfunktionen (Sitzungsobjekt)

IS_INSTANCE_ROLE_IN_SESSION

Überprüft, ob die aktive Primär- oder Sekundärrollenhierarchie des Benutzers für die Sitzung die angegebene Instanzrolle erbt.

Siehe auch:

Instanzrollen, IS_DATABASE_ROLE_IN_SESSION, IS_ROLE_IN_SESSION

Syntax

IS_INSTANCE_ROLE_IN_SESSION( '<instance_name>' , '<instance_role_name>' )
Copy

Argumente

'instance_name'

Gibt den Namen der Instanz an.

'instance_role_name'

Gibt den Namen der Instanzrolle an.

Rückgabewerte

  • TRUE, wenn die die Primärrolle oder die Sekundärrollen des aktuellen Benutzers der Sitzung angegebenen Instanzrolle erben.

    Wenn DEFAULT_SECONDARY_ROLES den Wert ALL hat, erben alle Rollen, die dem Benutzer zugewiesen sind, die Berechtigungen der angegebenen Instanzrolle.

  • FALSE, wenn die angegebene Instanzrolle nicht in der Rollenhierarchie der aktuellen Primärrolle oder der Sekundärrollen des Benutzers enthalten ist.

Beispiele

Überprüfen, ob die aktuelle Rolle der Sitzung die angegebene Instanzrolle erbt:

USE ROLE my_role;

SELECT IS_INSTANCE_ROLE_IN_SESSION('my_db.my_schema.my_anomaly_detector', 'user');
Copy
+----------------------------------------------------------------------------+
| IS_INSTANCE_ROLE_IN_SESSION('MY_DB.MY_SCHEMA.MY_ANOMALY_DETECTOR', 'USER') |
+----------------------------------------------------------------------------+
| TRUE                                                                       |
+----------------------------------------------------------------------------+