角色:GRANTS_TO_USERS 视图中记录重新授权的方式的变更

注意

此行为变更在 2023_04 捆绑包中。

有关捆绑包的当前状态,请参阅 捆绑包历史记录

记录了 GRANTS_TO_USERS 视图在授权同一用户相同角色时的输出变化:

之前:

该视图包含一行,分别表示向同一用户授权相同角色的每次授权。对于包含活动授权的行,DELETED_ON 列值为 NULL。发生重新授权时,包含上一个授权的行的 DELETED_ON 列值将更新为重新授权发生时的时间戳。

现在:

该视图包括一行,用于向同一用户授权相同的角色。向同一用户重新授权同一角色不会记录为新行。当授权处于活动状态时,DELETED_ON 列将保留 NULL,当角色 REVOKED 来自用户时,列值将更新。

从用户处撤消角色后,将向同一用户授权相同角色的权限记录在新行中。在此新行中,DELETED_ON 列值为 NULL,因为授权现在处于活动状态。

使用以下查询来帮助确定您的账户在视图中是否有会受到影响的记录:

  • TRUE:视图中的记录会受到影响。

  • FALSE:视图中没有会受到影响的记录。

SELECT
    COUNT(*) > 0 AS IS_IMPACTED
FROM
    SNOWFLAKE.ACCOUNT_USAGE.GRANTS_TO_USERS AS GL
        INNER JOIN SNOWFLAKE.ACCOUNT_USAGE.GRANTS_TO_USERS AS GR
            ON GL.ROLE = GR.ROLE
            AND GL.GRANTED_TO = GR.GRANTED_TO
            AND GL.GRANTEE_NAME = GR.GRANTEE_NAME
            AND GL.GRANTED_BY = GR.GRANTED_BY
            AND GL.DELETED_ON = GR.CREATED_ON
            AND GR.DELETED_ON IS NOT NULL;
Copy

参考:1132

语言: 中文