You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Snowflake中查询指定Schema的已授予权限?

Snowflake查询指定Schema授予权限的操作指南

报错原因排查

你执行命令报错一般分为两类情况:

  • 语法错误:未指定Schema所属的数据库上下文、Schema名称包含特殊字符/大小写敏感未加双引号,都会触发语法识别失败。
  • 权限不足:执行SHOW GRANTS的用户所属角色,需要对目标Schema持有MANAGE GRANTS或OWNERSHIP权限,否则会触发未授权报错。

正确操作方法

基础查询命令

需要补全Schema的完整路径,标准语法如下:

SHOW GRANTS ON SCHEMA <数据库名>.<Schema名>;

示例:查询PROD数据库下的ANALYSISSchema的所有权限:

SHOW GRANTS ON SCHEMA PROD.ANALYSIS;

如果Schema名称为小写、包含空格或特殊字符,需要用双引号包裹名称:

SHOW GRANTS ON SCHEMA PROD."user_behavior_schema";

如果不想每次写全路径,可以先切换当前会话的数据库上下文再执行查询:

USE DATABASE <数据库名>;
SHOW GRANTS ON SCHEMA <Schema名>;

权限不足的解决方案

确认语法无误仍报错的情况下,可联系账号管理员为你所属的角色开通对应权限,授权命令如下:

GRANT MANAGE GRANTS ON SCHEMA <数据库名>.<Schema名> TO ROLE <你的角色名>;

进阶结构化查询

如果需要对权限结果做过滤、统计等二次处理,可以直接查询Snowflake内置的信息模式视图:

SELECT GRANTEE, PRIVILEGE_TYPE, GRANTOR, IS_GRANTABLE
FROM <数据库名>.INFORMATION_SCHEMA.OBJECT_PRIVILEGES
WHERE OBJECT_TYPE = 'SCHEMA' 
AND OBJECT_NAME = '<Schema名>';

该视图返回的字段更规范,方便做权限审计类场景使用。

内容的提问来源于stack exchange,提问作者Maryo David

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 23:27:00