向其他角色授予权限

Snowflake 提供了一组权限,用于处理 Snowflake Marketplace 或数据交换中的列表。

本主题内容:

在数据交换中授予管理员权限

默认情况下,只有数据交换管理员账户中的账户管理员(具有 ACCOUNTADMIN 角色的用户)可以管理数据交换,其中包括以下任务:

  • 添加或删除成员。

  • 批准或拒绝列表批准请求。

  • 批准或拒绝提供商简介批准请求。

  • 显示类别。

为了支持将这些任务委托给其他用户,可以将数据交换上的 IMPORTED PRIVILEGES 权限授予其他角色。

向其他角色授予 IMPORTED PRIVILEGES 权限

要将数据交换的 IMPORTED PRIVILEGES 权限授予角色,请使用 ACCOUNTADMIN 角色和 GRANT <privileges> 命令。

备注

WITH GRANT OPTION 参数不支持 IMPORTED PRIVILEGES 权限。

语法:

GRANT IMPORTED PRIVILEGES ON DATA EXCHANGE <exchange_name> TO <role_name>;
Copy

其中:

  • exchange_name 是数据交换的名称。

  • role_name 是获得权限的角色。

例如,将 mydataexchange 数据交换的导入权限授予名为 myrole 的自定义角色:

USE ROLE ACCOUNTADMIN;

GRANT IMPORTED PRIVILEGES ON DATA EXCHANGE mydataexchange TO myrole;
Copy

使用说明

  • 此权限在数据交换级别授予。因此,具有该角色的用户只能管理已为其授予权限的数据交换。

  • 只有数据交换管理员账户中的账户管理员才能将权限授予其他角色。

  • 将从共享创建的数据库上的 IMPORTED PRIVILEGES 权限授予了某角色时,后续调用 SHOW GRANTS 命令会将该权限列为 USAGE,而 不是 IMPORTED PRIVILEGES。

  • 此权限只能用于数据交换。在 Snowflake Marketplace 中,只有 Snowflake 管理员可以执行管理任务。

向 Snowflake Marketplace 或数据交换中的其他角色授予提供商权限

Snowflake 提供了一组权限,允许提供商执行与在 Snowflake Marketplace 上与特定使用者共享数据和应用程序,或通过数据交换共享数据相关的各种任务。

权限

对象类型

可由以下角色授予

描述

全局 CREATE DATA EXCHANGE LISTING 权限

ACCOUNT

ACCOUNTADMIN

授予创建列表或提供商简介的能力。

CREATE SHARE 权限

ACCOUNT

ACCOUNTADMIN

授予创建共享的能力。

IMPORT SHARE 权限

ACCOUNT

ACCOUNTADMIN

授予查看与账户共享的入站共享以及从该共享创建数据库的能力。

PURCHASE DATA EXCHANGE LISTING 权限

ACCOUNT

ACCOUNTADMIN

授予购买付费列表的能力。

列表的 MODIFY 权限

LISTING

具有列表的 OWNERSHIP 权限的角色。

授予修改列表属性的能力。

列表的 USAGE 权限

LISTING

具有列表的 OWNERSHIP 权限的角色。

授予查看列表的能力。

列表的 OWNERSHIP 权限

LISTING

具有列表的 OWNERSHIP 权限的角色。

转移列表的 OWNERSHIP 权限。

提供商简介的 MODIFY 权限

PROVIDER PROFILE

具有简介的 OWNERSHIP 权限的角色。

授予修改提供商简介属性的能力。

提供商简介的 OWNERSHIP 权限

PROVIDER PROFILE

具有简介的 OWNERSHIP 权限的角色。

转移简介的 OWNERSHIP 权限。

账户级别权限

Snowflake 提供以下权限,以便在 Snowflake Marketplace 或数据交换中在账户级别处理共享、列表和提供商简介:

全局 CREATE DATA EXCHANGE LISTING 权限

如果授予角色全局 CREATE DATA EXCHANGE LISTING 权限,具有该角色的任何用户都可以创建列表或提供商简介。作为列表的创建者和所有者,使用该角色可对列表执行所有任务,包括如下任务:

  • 创建列表。

  • 修改列表属性。

  • 查看列表。

  • 查看传入的列表请求。

  • 拒绝列表请求。

  • 提交列表以供审批。

  • 发布列表。

  • 创建和查看提供商简介。

如果账户是多个数据交换中的提供商,则拥有全局 CREATE DATA EXCHANGE LISTING 权限的角色可以在每个数据交换中创建列表。

备注

  • 创建列表的角色将成为列表的所有者。可以使用 列表的 OWNERSHIP 权限 将 OWNERSHIP 权限从拥有所有权的角色转移到其他角色。

  • 只有账户管理员(具有 ACCOUNTADMIN 角色的用户)可以授予角色全局 CREATE DATA EXCHANGE LISTING 权限。

要在数据交换中向角色授予全局 CREATE DATA EXCHANGE LISTING 权限,请使用 GRANT <privileges> [WITH GRANT OPTION] 命令。

例如,使用 ACCOUNTADMIN 角色授予权限:

USE ROLE ACCOUNTADMIN;
Copy

然后将权限授予自定义角色 myrole

GRANT CREATE DATA EXCHANGE LISTING ON ACCOUNT TO ROLE myrole;
Copy

然后使用授予选项将权限授予角色 myrole

GRANT CREATE DATA EXCHANGE LISTING ON ACCOUNT TO ROLE myrole WITH GRANT OPTION;
Copy

CREATE SHARE 权限

如果授予角色 CREATE SHARE 权限,具有该角色的任何用户都可以创建共享。作为共享的创建者和所有者,使用该角色可对共享执行所有任务,包括如下任务:

  • 向共享授予对象权限或从共享中撤消对象权限。

  • 向共享中添加账户或从共享中删除使用者账户。

有关更多信息,请参阅 启用非 ACCOUNTADMIN 角色执行数据共享任务

IMPORT SHARE 权限

如果授予角色 IMPORT SHARE 权限,具有该角色的任何用户都可以执行以下任务:

  • 查看所有 INBOUND 共享(由提供商账户共享)。

  • 查看角色拥有的所有 OUTBOUND 共享。

  • 从入站共享创建数据库(如果还授予了角色全局 CREATE DATABASE 权限)。

有关更多信息,请参阅 启用非 ACCOUNTADMIN 角色执行数据共享任务

PURCHASE DATA EXCHANGE LISTING 权限

如果授予角色 PURCHASE DATA EXCHANGE LISTING 权限,则任何具有该角色的用户都可以购买私下共享的列表或在 Snowflake Marketplace 上共享的列表。

有关购买列表的更多信息,请参阅 成为列表的使用者

有关此权限的更多信息,请参阅 启用非 ACCOUNTADMIN 角色执行数据共享任务

列表级别权限

Snowflake 为列表提供以下权限。您只能使用获得了列表的 OWNERSHIP 权限的角色来授予这些权限。

列表的 MODIFY 权限

如果将列表的 MODIFY 权限授予了某角色,具有该角色的任何用户都可以对列表执行以下任务:

  • 修改列表属性。

  • 查看列表。

  • 查看传入的列表访问请求。

  • 提交列表以供审批。

  • 发布列表。

  • 拒绝列表请求。

只有具有列表的 OWNERSHIP 权限的角色才能授予此权限。只能通过使用 Snowsight 才能授予对列表的 MODIFY 权限。

要授予与特定使用者共享或发布在 Snowflake Marketplace 上的列表的 MODIFY 权限,请执行以下操作:

  1. 登录 Snowsight

  2. 导航到 Data Products » Provider Studio

  3. 选择 Listings

  4. 找到要修改的列表,然后选择相应的行以打开列表详细信息。

  5. 在列表详细信息页面中,选择 Settings

  6. Privileges 部分中,选择 Modify Listing 权限旁边的铅笔图标。

  7. 选择 Add Role 并添加所需角色。

  8. 保存更改。

要在数据交换中授予对列表的 MODIFY 权限,请执行以下操作:

  1. 登录 Snowsight

  2. 导航到 Data Products » Private Sharing

  3. 选择 Shared By My Account

  4. 找到要修改的列表,然后选择相应的行以打开列表详细信息。

  5. 在列表详细信息页面中,选择 Settings

  6. Privileges 部分中,选择 Modify Listing 权限旁边的铅笔图标。

  7. 选择 Add Role 并添加所需角色。

  8. 保存更改。

列表的 USAGE 权限

如果将列表的 USAGE 权限授予某角色,具有该角色的任何用户都可以查看列表和传入列表请求。只有具有列表的 OWNERSHIP 权限的角色才能授予此权限。

要授予与特定使用者共享或发布在 Snowflake Marketplace 上的列表的 USAGE 权限,请执行以下操作:

  1. 登录 Snowsight

  2. 导航到 Data Products » Provider Studio

  3. 选择 Listings

  4. 找到要修改的列表,然后选择相应的行以打开列表详细信息。

  5. 在列表详细信息页面中,选择 Settings

  6. Privileges 部分中,选择 Modify Listing 权限旁边的铅笔图标。

  7. 选择 Add Role 并添加所需角色。

  8. 保存更改。

要在数据交换中授予对列表的 USAGE 权限,请执行以下操作:

  1. 登录 Snowsight

  2. 导航到 Data Products » Private Sharing

  3. 选择 Shared By My Account

  4. 找到要修改的列表,然后选择相应的行以打开列表详细信息。

  5. 在列表详细信息页面中,选择 Settings

  6. Privileges 部分中,选择 Modify Listing 权限旁边的铅笔图标。

  7. 选择 Add Role 并添加所需角色。

  8. 保存更改。

列表的 OWNERSHIP 权限

如果为角色授予列表的 OWNERSHIP 权限,则该角色将成为列表的新 OWNER。只有列表的 OWNER 才能授予此权限。OWNERSHIP 是一种特殊类型的权限,只能由一个角色授予另一个角色;不能撤消。有关更多详细信息,请参阅 访问控制概述

重要

当列表所有权转移时,所有现有的权限授予都将撤消。所有已被授予权限的角色都会立即失去对此列表的访问权限,并且其权限将撤消。新的列表所有者必须重新授予这些权限。

要授予与特定使用者共享或发布在 Snowflake Marketplace 上的列表的 OWNERSHIP 权限,请执行以下操作:

  1. 登录 Snowsight

  2. 导航到 Data Products » Provider Studio

  3. 选择 Listings

  4. 找到要修改的列表,然后选择相应的行以打开列表详细信息。

  5. 在列表详细信息页面中,选择 Settings

  6. Privileges 部分中,选择 Modify Listing 权限旁边的铅笔图标。

  7. 选择 Add Role 并添加所需角色。

  8. 保存更改。

要在数据交换中授予对列表的 OWNERSHIP 权限,请执行以下操作:

  1. 登录 Snowsight

  2. 导航到 Data Products » Private Sharing

  3. 选择 Shared By My Account

  4. 找到要修改的列表,然后选择相应的行以打开列表详细信息。

  5. 在列表详细信息页面中,选择 Settings

  6. Privileges 部分中,选择 Modify Listing 权限旁边的铅笔图标。

  7. 选择 Add Role 并添加所需角色。

  8. 保存更改。

提供商简介级别权限

Snowflake 为提供商简介提供以下权限。只有具有提供商简介的 OWNERSHIP 权限的角色才能授予此权限。

备注

提供商简介的 MODIFY 权限

如果将 MODIFY 权限授予提供商简介中的某个角色,则具有该角色的任何用户都可以查看和修改提供商简介的属性。只有具有提供商简介的 OWNERSHIP 权限的角色才能授予此权限。

可以通过 Web 界面或使用 SQL 授予 MODIFY 权限:

Snowsight:

选择 Data Products » Private Sharing » Manage Exchanges » 选择交换 » 选择提供商简介 » Manage » Manage Profile Editors

SQL:

执行 GRANT <privileges> [WITH GRANT OPTION] 命令。

例如,向自定义角色 myrole 授予权限:

GRANT MODIFY ON DATA EXCHANGE PROFILE "<provider_profile_name>" TO ROLE myrole;
Copy

提供商简介的 OWNERSHIP 权限

如果为角色授予提供商简介的 OWNERSHIP 权限,则该角色将成为提供商权限的新所有者。只有具有提供商简介的 OWNERSHIP 权限的角色才能授予此权限。

OWNERSHIP 是一种特殊类型的权限,只能由一个角色授予另一个角色;不能撤消。有关更多详细信息,请参阅 访问控制概述

要将提供商简介的 OWNERSHIP 权限授予角色,请使用 GRANT <privileges> [WITH GRANT OPTION] 命令。您不能使用 Snowsight 来授予此权限。

例如,向自定义角色 myrole 授予权限:

GRANT OWNERSHIP ON DATA EXCHANGE PROFILE "<provider_profile_name>" TO ROLE myrole;
Copy
语言: 中文