CREATE SECURITY INTEGRATION (SCIM)

注意

提到的 Microsoft Azure Active Directory 指的是 Microsoft Entra ID。

在账户中创建新的 SCIM 安全集成或替换现有集成。SCIM 安全集成通过在 Snowflake 和第三方身份提供商 (IdP) 之间创建接口,允许自动管理用户身份和组(即角色)。

有关创建其他类型的安全集成(例如 SAML2)的信息,请参阅 CREATE SECURITY INTEGRATION

另请参阅:

ALTER SECURITY INTEGRATION (SCIM)DROP INTEGRATIONSHOW INTEGRATIONS

语法

CREATE [ OR REPLACE ] SECURITY INTEGRATION [ IF NOT EXISTS ]
    <name>
    TYPE = SCIM
    ENABLED = { TRUE | FALSE }
    SCIM_CLIENT = { 'OKTA' | 'AZURE' | 'GENERIC' }
    RUN_AS_ROLE = { 'OKTA_PROVISIONER' | 'AAD_PROVISIONER' | 'GENERIC_SCIM_PROVISIONER' }
    [ NETWORK_POLICY = '<network_policy>' ]
    [ SYNC_PASSWORD = { TRUE | FALSE } ]
    [ COMMENT = '<string_literal>' ]
Copy

必填参数

name

字符串,指定集成的标识符(即名称);在账户中必须是唯一的。

此外,标识符必须以字母字符开头,且不能包含空格或特殊字符,除非整个标识符字符串放在双引号内(例如,"My object")。放在双引号内的标识符也区分大小写。

有关更多详细信息,请参阅 标识符要求

TYPE = SCIM

指定集成类型:

  • SCIM:在 Snowflake 和支持 SCIM 的客户端之间创建安全接口。

ENABLED = { TRUE | FALSE }

指定是否启用安全集成。要创建禁用的安全集成,请设置 ENABLED = FALSE

默认:TRUE

SCIM_CLIENT = { 'OKTA' | 'AZURE' | 'GENERIC' }

指定 SCIM 客户端。

RUN_AS_ROLE = { 'OKTA_PROVISIONER' | 'AAD_PROVISIONER' | 'GENERIC_SCIM_PROVISIONER' }

指定 Snowflake 中的 SCIM 角色,该角色拥有使用 SCIM 从身份提供商导入到 Snowflake 中的任何用户和角色。

OKTA_PROVISIONERAAD_PROVISIONERGENERIC_SCIM_PROVISIONER 区分大小写,并且必须始终大写。

可选参数

NETWORK_POLICY = 'network_policy'

指定控制 SCIM 网络流量的现有 网络策略

如果还为账户或用户设置了网络策略,请参阅 网络策略优先顺序

SYNC_PASSWORD = { TRUE | FALSE }

指定是否启用或禁用 Okta SCIM 客户端中的用户密码同步(作为 Snowflake API 请求的一部分)。

  • TRUE 则启用密码同步。

  • FALSE 则禁用密码同步。

默认值为 TRUE。如果创建安全集成时未设置此参数,Snowflake 会将此参数设置为 TRUE

如果不应将用户密码从客户端同步到 Snowflake,请确保此属性值设置为 FALSE 在客户端中禁用密码同步。

请注意,此属性支持 Okta 和自定义 SCIM 集成。不支持 Microsoft Entra ID SCIM 集成,因为 Microsoft Entra ID 不支持密码同步。要请求支持,请联系 Microsoft。

有关详细信息,请参阅 Snowflake SCIM 支持

COMMENT = 'string_literal'

指定集成的注释。

默认:无值

访问控制要求

用于执行此 SQL 命令的 角色 必须至少具有以下 权限

权限

对象

备注

CREATE INTEGRATION

账户

Only the ACCOUNTADMIN role has this privilege by default. The privilege can be granted to additional roles as needed.

有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色

有关对 安全对象 执行 SQL 操作的相应角色和权限授予的一般信息,请参阅 访问控制概述

使用说明

  • 关于元数据:

    注意

    客户应确保在使用 Snowflake 服务时,不会将个人数据(用户对象除外)、敏感数据、出口管制数据或其他受监管数据作为元数据输入。有关更多信息,请参阅 Snowflake 中的元数据字段

  • CREATE OR REPLACE <object> 语句是原子的。也就是说,当对象被替换时,旧对象将被删除,新对象将在单个事务中创建。

示例

Microsoft Entra ID 示例

以下示例使用默认设置创建 Microsoft Entra ID SCIM 集成:

CREATE OR REPLACE SECURITY INTEGRATION okta_provisioning
    TYPE = scim
    SCIM_CLIENT = 'AZURE'
    RUN_AS_ROLE = 'AAD_PROVISIONER';
Copy

使用 DESCRIBE INTEGRATION 查看集成设置:

DESC SECURITY INTEGRATION aad_provisioning;
Copy

Okta 示例

以下示例使用默认设置来创建 Okta SCIM 集成:

CREATE OR REPLACE SECURITY INTEGRATION okta_provisioning
    TYPE = scim
    SCIM_CLIENT = 'OKTA'
    RUN_AS_ROLE = 'OKTA_PROVISIONER';
Copy

使用 DESCRIBE INTEGRATION 查看集成设置:

DESC SECURITY INTEGRATION okta_provisioning;
Copy
语言: 中文