类别:

上下文函数 (会话对象)

IS_INSTANCE_ROLE_IN_SESSION

验证会话的用户活动主要角色或辅助角色层次结构是否继承指定的实例角色。

另请参阅:

实例角色IS_DATABASE_ROLE_IN_SESSIONIS_ROLE_IN_SESSION

语法

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

实参

'instance_name'

指定实例的名称。

'instance_role_name'

指定实例角色的名称。

返回

  • 如果会话中的当前用户活动 主要角色或辅助角色 继承指定的实例角色,则为 TRUE

    DEFAULT_SECONDARY_ROLES 值为 ALL 时,授予用户的 任何 角色都会继承指定实例角色的权限。

  • 如果指定的实例角色不在用户当前主要角色或辅助角色的角色层次结构中,则为 FALSE

示例

验证会话的当前角色是否继承了指定的实例角色:

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                                                                       |
+----------------------------------------------------------------------------+
语言: 中文