CREATE SECURITY INTEGRATION (SCIM)¶
注意
提到的 Microsoft Azure Active Directory 指的是 Microsoft Entra ID。
在账户中创建新的 SCIM 安全集成或替换现有集成。SCIM 安全集成通过在 Snowflake 和第三方身份提供商 (IdP) 之间创建接口,允许自动管理用户身份和组(即角色)。
有关创建其他类型的安全集成(例如 SAML2)的信息,请参阅 CREATE SECURITY INTEGRATION。
语法¶
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>' ]
必填参数¶
name字符串,指定集成的标识符(即名称);在账户中必须是唯一的。
此外,标识符必须以字母字符开头,且不能包含空格或特殊字符,除非整个标识符字符串放在双引号内(例如,
"My object")。放在双引号内的标识符也区分大小写。有关更多详细信息,请参阅 标识符要求。
TYPE = SCIM指定集成类型:
SCIM:在 Snowflake 和支持 SCIM 的客户端之间创建安全接口。
ENABLED = { TRUE | FALSE }指定是否启用安全集成。要创建禁用的安全集成,请设置
ENABLED = FALSE。默认:
TRUESCIM_CLIENT = { 'OKTA' | 'AZURE' | 'GENERIC' }指定 SCIM 客户端。
RUN_AS_ROLE = { 'OKTA_PROVISIONER' | 'AAD_PROVISIONER' | 'GENERIC_SCIM_PROVISIONER' }指定 Snowflake 中的 SCIM 角色,该角色拥有使用 SCIM 从身份提供商导入到 Snowflake 中的任何用户和角色。
值
OKTA_PROVISIONER、AAD_PROVISIONER和GENERIC_SCIM_PROVISIONER区分大小写,并且必须始终大写。
可选参数¶
NETWORK_POLICY = 'network_policy'指定控制 SCIM 网络流量的现有 网络策略。
如果还为账户或用户设置了网络策略,请参阅 网络策略优先顺序。
SYNC_PASSWORD = { TRUE | FALSE }指定是否启用或禁用 Okta SCIM 客户端中的用户密码同步(作为 Snowflake API 请求的一部分)。
为
TRUE则启用密码同步。为
FALSE则禁用密码同步。
默认值为
FALSE。如果创建安全集成时未设置此参数,Snowflake 会将此参数设置为FALSE。如果不应将用户密码从客户端同步到 Snowflake,请确保此属性值设置为
FALSE,并 在客户端中禁用密码同步。请注意,此属性支持 Okta 和自定义 SCIM 集成。不支持 Microsoft Entra ID SCIM 集成,因为 Microsoft Entra ID 不支持密码同步。要请求支持,请联系 Microsoft。
有关更多信息,请参阅 Snowflake SCIM 支持。
COMMENT = 'string_literal'指定集成的注释。
默认:无值
访问控制要求¶
权限 |
对象 |
备注 |
|---|---|---|
CREATE INTEGRATION |
账户 |
Only the ACCOUNTADMIN role has this privilege by default. The privilege can be granted to additional roles as needed. |
有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色。
使用说明¶
关于元数据:
注意
客户应确保在使用 Snowflake 服务时,不会将个人数据(用户对象除外)、敏感数据、出口管制数据或其他受监管数据作为元数据输入。有关更多信息,请参阅 Snowflake 中的元数据字段。
The OR REPLACE and IF NOT EXISTS clauses are mutually exclusive. They can't both be used in the same statement.
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';
使用 DESCRIBE INTEGRATION 查看集成设置:
DESC SECURITY INTEGRATION aad_provisioning;
Okta 示例¶
以下示例使用默认设置来创建 Okta SCIM 集成:
CREATE OR REPLACE SECURITY INTEGRATION okta_provisioning
TYPE = scim
SCIM_CLIENT = 'OKTA'
RUN_AS_ROLE = 'OKTA_PROVISIONER';
使用 DESCRIBE INTEGRATION 查看集成设置:
DESC SECURITY INTEGRATION okta_provisioning;