我正在snowflake中开发一个安全的视图和共享。因此,在授予视图共享权限之前,我需要授予每个DB的reference_usage以进行共享。
我的视图在其声明中有7-8个数据库(由于加入(,因此我需要授予所有这些数据库引用使用权限才能共享。
一种方法是,我可以为每个数据库运行以下命令。
grant reference_usage on database db_XYZ to share share_ABC;
snowflake中是否有任何命令可以同时授予所有数据库的权限?
否,REFERENCE_USAGE权限必须分别授予每个数据库。
https://docs.snowflake.com/en/sql-reference/sql/grant-privilege-share.html#usage-票据
当然,您可以编写一个脚本来为所有数据库生成和执行grant命令。