我如何返回并扣除我的试用帐户的角色层次?

How do I fo back and deduct the role hiearchy of my trial account?

对于这个新问题深表歉意,但我无法理解为我的帐户设置推荐角色的最佳实践。我正在审核我创建的内容以向后工程并在新仓库中更正它。

情况是这样的:

  1. 我已将对所有仓库修改和使用的所有权限授予系统管理员。
  2. 当 运行 工作表和 ./snowsql 并行时,我对 snowsql 中的所有会话都使用了 ACCOUNTADMIN。

当我使用系统管理员修改复制存储在仓库中的数据的表时,有时我有权限,有时我没有。

我一直在使用 ACCOUNTADMIN 角色筛选帐户历史记录,以使用以下文档中的推荐查询查看所有赠款:

select *
from table(information_schema.query_history())
order by start_time;

然后我通过数据库过滤 query_id 以包含 grant

select *
from table(information_schema.query_history())
where database_name = 'temp_db'
and query_id like '%grant%'
order by start_time;

我这样做是为了看看我在仓库中的数据库之间所做的授权是否有任何差异。我只设置了两个仓库,所以很容易看到。

展望未来,Accountadmin 用于创建角色、仓库和数据库。

为了避免在角色切换时需要进行审计,我想在系统管理员上设置未来对仓库中特定数据库的修改和使用权限,我该怎么做?

对仓库、数据库和所有其他对象的权限是不同的。授予对仓库的权限让该角色可以使用或修改仓库,但这与创建、更新等其他对象(如数据库、模式、table 和视图)完全无关。此外,只有拥有 table 的角色才能删除或更改 table。因此,您可能想要检查 SYSADMIN 和 ACCOUNTADMIN 之间 table 的所有权。作为最佳实践,ACCOUNTADMIN 不应拥有任何东西。

需要更多信息才能让您全面了解 Snowflake 中的 RBAC。如果您正在为此苦苦挣扎,您可能需要联系 Snowflake 的专业服务,让他们进来并做一个概述(快速入门或安全包)让您理顺。