Snowflake的DESCRIBE功能可以应用于许多对象,例如用户,仓库或数据库(https://docs.snowflake.com/en/sql-reference/sql/desc.html)。
我找不到执行DESCRIBE所需的赠款。通过实验,我发现了一些问题: -在大多数情况下,仅允许对象的所有者描述该对象 -例外:DESCRIBE DATABASE允许非所有者执行 -(例外:当架构包含外部表时,DESCRIBE SCHEMA失败,但这可能只是未实现)
我在文档中找不到执行DESCRIBE的一般授权。我的测试似乎表明没有一般规则,但是我很高兴有人可以证明我错了:-)
答案 0 :(得分:0)
根据我的实验,位于模式下的所有基本对象(例如表,过程和函数,文件格式,阶段等)将允许DESCRIBE
命令,如果< em> 任何 的特权类型都授予访问者。这种隐式行为可能就是为什么在Snowflake的access control documentation page中没有特别提及它的原因。
对于几乎所有其他类型的对象,必须具有MONITOR
特权才能允许DESCRIBE
命令。引用相关部分from the documentation:
MONITOR
资源监控器,仓库,数据库,架构,任务
授予查看对象内详细信息的能力(例如仓库中的查询和使用情况)。