首页 > 解决方案 > 如何在 Snowflake 中显示所有角色的所有授权?

问题描述

在 Snowflake 中,我知道我可以展示角色:

show roles

我知道我可以显示特定角色的授权并通过查询访问这些授权:

show grants to role dev_role;
select * from table(RESULT_SCAN (LAST_QUERY_ID()));

我想在一张表中显示所有角色的所有授权。我最好的猜测是编写一个遍历所有角色名称、执行上述代码并将结果输出到表的过程。

有没有更好的方法来做到这一点?

标签: snowflake-cloud-data-platform

解决方案


您是否有权访问名为snowflake的共享数据库?如果没有,那么您可能需要按照此处accountadmin的说明向您提供IMPORTED PRIVILEGES补助金。

无论如何,如果您可以访问此数据库,那么我认为您应该能够从GRANTS_TO_ROLES视图中获取所需的信息:

select * 
from snowflake.account_usage.grants_to_roles;

推荐阅读