GRANTS_TO_ROLES 视图¶
This Account Usage view can be used to query access control privileges that have been granted to an account role, application, application role, database role, instance role, or user.
列¶
列名称 |
数据类型 |
描述 |
---|---|---|
CREATED_ON |
TIMESTAMP_LTZ |
向角色授予权限的日期和时间(采用 UTC 时区)。 |
MODIFIED_ON |
TIMESTAMP_LTZ |
更新权限的日期和时间(采用 UTC 时区)。 |
PRIVILEGE |
VARCHAR |
为角色添加的权限的名称。 |
GRANTED_ON |
VARCHAR |
授予权限的对象类型,如 |
NAME |
VARCHAR |
权限授予涉及的对象的名称。 |
TABLE_CATALOG |
VARCHAR |
当前表的数据库的名称,或者用于存储类实例的数据库的名称。 |
TABLE_SCHEMA |
VARCHAR |
当前表的架构的名称,或者用于存储类实例的架构的名称。 |
GRANTED_TO |
VARCHAR |
|
GRANTEE_NAME |
VARCHAR |
收件人角色、被授予权限的角色或 Snowflake Native App 对象名称的标识符。 |
GRANT_OPTION |
BOOLEAN |
|
GRANTED_BY |
VARCHAR |
表示将权限授予被授予者的角色。SNOWFLAKE 系统角色授予的权限的 |
DELETED_ON |
TIMESTAMP_LTZ |
撤销权限的日期和时间(采用 UTC 时区)。 |
GRANTED_BY_ROLE_TYPE |
VARCHAR |
|
OBJECT_INSTANCE |
VARCHAR |
包含特定类的实例角色的对象的完全限定名称,格式为 |
使用说明¶
视图的延迟时间最长可达 120 分钟(2 小时)。
GRANTS_TO_ROLES 视图显示了所有支持对象的子集。支持的集合可能会发生变化。视图会定期更新,以支持新对象。
视图不包含从通过共享创建的数据库向数据库角色授予的权限。
视图不包含已删除对象的授权。
GRANTED_BY
列表示将权限授予被授予者的角色。授权角色称为 授予者。当您使用 GRANT <privileges> ... TO ROLE 向角色授予对象的权限时,以下授权规则确定将哪个角色列为权限的授予者:
如果 活跃角色 是对象所有者(即对对象具有 OWNERSHIP 权限),则该角色是授予者。
如果某个活动角色通过 GRANT PRIVILEGE ... WITH GRANT OPTION 语句获得对象权限,则该活动角色为授权者。如果有多个活动角色符合此标准,并且其中一个活动角色是主要角色,则主要角色是授权者。如果有多个活动角色且其中没有一个是主要角色,则 Snowflake 会随机选择其中一个角色作为授权者。
如果一个活跃角色拥有全局 MANAGE GRANTS 权限,则授予者角色是对象所有者,而 不是 拥有 MANAGE GRANTS 权限的角色。也就是说,MANAGE GRANTS 权限允许角色模拟对象所有者,以便对该对象授予权限。
对于 Snowflake SYSTEM 角色授予的权限,
GRANTED_BY
列显示为空。此角色执行某些内部操作。客户无法修改 SYSTEM 角色所授予的权限。