ALTER SECURITY INTEGRATION (SAML2)

既存の SAML2 統合のプロパティを変更します。他の型のセキュリティ統合(例: SCIM)の変更については、 ALTER SECURITY INTEGRATION をご参照ください。

こちらもご参照ください。

CREATE SECURITY INTEGRATION (SAML2)DROP INTEGRATIONSHOW INTEGRATIONSDESCRIBE INTEGRATION

構文

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> SET
    [ TYPE = SAML2 ]
    [ ENABLED = { TRUE | FALSE } ]
    [ SAML2_ISSUER = '<string_literal>' ]
    [ SAML2_SSO_URL = '<string_literal>' ]
    [ SAML2_PROVIDER = '<string_literal>' ]
    [ SAML2_X509_CERT = '<string_literal>' ]
    [ SAML2_SP_INITIATED_LOGIN_PAGE_LABEL = '<string_literal>' ]
    [ SAML2_ENABLE_SP_INITIATED = TRUE | FALSE ]
    [ SAML2_SNOWFLAKE_X509_CERT = '<string_literal>' ]
    [ SAML2_SIGN_REQUEST = TRUE | FALSE ]
    [ SAML2_REQUESTED_NAMEID_FORMAT = '<string_literal>' ]
    [ SAML2_POST_LOGOUT_REDIRECT_URL = '<string_literal>' ]
    [ SAML2_FORCE_AUTHN = TRUE | FALSE ]
    [ SAML2_SNOWFLAKE_ISSUER_URL = '<string_literal>' ]
    [ SAML2_SNOWFLAKE_ACS_URL = '<string_literal>' ]
    [ COMMENT = '<string_literal>' ]

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> UNSET {
    ENABLED |
    [ , ... ]
    }

ALTER [ SECURITY ] INTEGRATION <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

ALTER [ SECURITY ] INTEGRATION <name> UNSET TAG <tag_name> [ , <tag_name> ... ]

ALTER [ SECURITY ] INTEGRATION <name> REFRESH SAML2_SNOWFLAKE_PRIVATE_KEY
Copy

パラメーター

name

変更する統合の識別子。識別子にスペースまたは特殊文字が含まれる場合、文字列全体を二重引用符で囲む必要があります。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

SET ...

統合用に設定する1つ以上のプロパティ/パラメーターを指定します(空白、コンマ、または改行で区切ります)。

TYPE = SAML2

統合のタイプを指定します。

  • SAML2: SnowflakeとIDプロバイダーの間にセキュリティインターフェイスを作成します。

ENABLED = TRUE | FALSE

統合の操作を開始するか、中断するかを指定します。

  • TRUE は、パイプ定義で指定されたパラメーターに基づいて統合を許可します。

  • FALSE は、メンテナンスのために統合を一時停止します。Snowflakeとサードパーティサービス間の統合はいずれも機能しません。

SAML2_ISSUER = 'string_literal'

EntityID を含む文字列 / IdP の発行者。

SAML2_SSO_URL = 'string_literal'

IdP SSO URL を含む文字列。ユーザーは、 SAML AuthnRequest メッセージでSnowflake(サービスプロバイダー)によりリダイレクトされます。

SAML2_PROVIDER = 'string_literal'

IdP を説明する文字列。

次のいずれか:OKTA、 ADFS、カスタム。

SAML2_X509_CERT = 'string_literal'

Base64は、先頭の -----BEGIN CERTIFICATE----- と末尾の -----END CERTIFICATE----- マーカーのない1行で IdP 署名証明書をエンコードしました。

SAML2_SP_INITIATED_LOGIN_PAGE_LABEL = 'string_literal'

ログインページの Log In With ボタンの後に表示するラベルを含む文字列。

SAML2_ENABLE_SP_INITIATED = TRUE | FALSE

ログインページに Log In With ボタンを表示するかどうかを示すブール値。

  • TRUE は、ログインページに Log in With ボタンを表示します。

  • FALSE は、ログインページに Log in With ボタンを表示しません。

SAML2_SNOWFLAKE_X509_CERT = 'string_literal'

SAML アサーションを暗号化する署名済みの SAML リクエストを送信する で使用するためにSnowflakeによって生成された、Base64エンコードの自己署名証明書。

証明書の値にアクセスするには、Snowflakeアカウントでこれらの機能(暗号化された SAML アサーションまたは署名済みの SAML 応答)の少なくとも1つを有効にする必要があります。

SAML2_SIGN_REQUEST = TRUE | FALSE

SAML リクエストが署名されているかどうかを示すブール値。

  • TRUE は、 SAML リクエストへの署名を許可します

  • FALSE は、 SAMLリクエストへの署名を許可しません。

SAML2_REQUESTED_NAMEID_FORMAT = 'string_literal'

SAML NameID 形式を使用すると、Snowflakeは、 IdP からの SAML アサーションでユーザーの識別属性(つまり SAML サブジェクト)の期待値を設定して、Snowflakeへの有効な認証を確認できます。値が指定されていない場合、Snowflakeは認証リクエストの urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress 値を IdP に送信します。

オプション。

SAML NameID 形式を指定する場合は、次のいずれかの値を使用します。

  • urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified

  • urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

  • urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName

  • urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName

  • urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos

  • urn:oasis:names:tc:SAML:2.0:nameid-format:persistent

  • urn:oasis:names:tc:SAML:2.0:nameid-format:transient

SAML2_POST_LOGOUT_REDIRECT_URL = '<string_literal>'

Classic Console の Log Out ボタンをクリックした後に、Snowflakeがユーザーをリダイレクトするエンドポイント。

Snowflakeは、指定されたエンドポイントにリダイレクトすると、Snowflakeセッションを終了します。

SAML2_FORCE_AUTHN = TRUE | FALSE

ユーザーが最初の認証フロー中に、Snowflakeにアクセスするために再認証を強制されるかどうかを示すブール値。 TRUE に設定すると、SnowflakeからIDプロバイダーへの送信リクエストで、Snowflakeは ForceAuthn SAML パラメーターを TRUE に設定します。

  • TRUE は、IDプロバイダーとの有効なセッションが存在する場合でも、ユーザーにSnowflakeにアクセスするための再認証を強制します。

  • FALSE は、Snowflakeにアクセスするためにユーザーに再認証を強制することはありません。

デフォルト: FALSE

SAML2_SNOWFLAKE_ISSUER_URL = '<string_literal>'

Snowflakeサービスプロバイダーの EntityID / Issuer を含む文字列。

誤った値が指定された場合、Snowflakeは使用可能な値を示すエラーメッセージを返します。

このプロパティの値は、 IdP で指定されたSnowflakeアカウント URL と一致する必要があります。 レガシー URL がデフォルトになるため、 IdP で別の URL 形式 を定義する場合は、このプロパティを適切に設定してください。

SAML2_SNOWFLAKE_ACS_URL = '<string_literal>'

IdP が SAML 認証応答をSnowflakeに送り返す、Snowflake Assertion Consumer Service URL を含む文字列。このプロパティは、 IdP で SAML SSO 操作を開始するときに、Snowflakeによって生成される SAML 認証リクエストで設定されます。

誤った値が指定された場合、Snowflakeは使用可能な値を示すエラーメッセージを返します。

このプロパティの値は、 IdP で指定されたSnowflakeアカウント URL と一致する必要があります。 レガシー URL がデフォルトになるため、 IdP で別の URL 形式 を定義する場合は、このプロパティを適切に設定してください。

デフォルト: https://<アカウントロケーター>.<リージョン>.snowflakecomputing.com/fed/login

COMMENT = 'string_literal'

統合のコメントを追加するか、既存のコメントを上書きします。

デフォルト: 値なし

TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]

タグ の名前とタグ文字列の値を指定します。

タグ値は常に文字列であり、タグ値の最大文字数は256です。

ステートメントにあるタグの指定の詳細については、 オブジェクトおよび列のタグクォータ をご参照ください。

UNSET ...

セキュリティ統合の設定を解除する1つ以上のプロパティ/パラメーターを指定し、それらをデフォルトにリセットします。

  • ENABLED

  • TAG tag_name [ , tag_name ... ]

REFRESH SAML2_SNOWFLAKE_PRIVATE_KEY

SAML2 セキュリティ統合用の新しい秘密キーと自己署名証明書を生成します。古い秘密キーと自己署名証明書は新しいもので上書きされます。キーのローテーションのベストプラクティスに関する詳細については、 SAML2 セキュリティ統合を管理する をご参照ください。

使用上の注意

  • Snowflakeサービスを使用する場合、お客様は、個人データ(ユーザーオブジェクト向け以外)、機密データ、輸出管理データ、またはその他の規制されたデータがメタデータとして入力されていないことを確認する必要があります。詳細については、 Snowflakeのメタデータフィールド をご参照ください。

  • REFRESH コマンドを使用して SAML2_SNOWFLAKE_PRIVATE_KEY をローテーションした後、新しい SAML2_SNOWFLAKE_X509_CERT 値を IdP にアップロードする必要があります。そうしないと、 SAML 認証は機能しなくなります。キーのローテーションのベストプラクティスに関する詳細については、 SAML2 セキュリティ統合を管理する をご参照ください。

  • 次の例では、中断された統合の操作を開始します。

    ALTER SECURITY INTEGRATION myint SET ENABLED = TRUE;
    
    Copy
  • 以下の例では、秘密キーをローテーションし、 SAML2 セキュリティ統合の my_idp という名前の新しい自己署名証明書を生成します。

    ご用心

    以下のコマンドを実行すると、 SAML 認証が機能しなくなります。これは、 IdP がまだ古い SAML2_SNOWFLAKE_X509_CERT 証明書を使用しているためです。混乱を最小限に抑えるため、このコマンドはユーザーがあまりアクティブではないときに実行する必要があります。詳細については、 SAML2 セキュリティ統合を管理する をご参照ください。

    alter security integration my_idp refresh SAML2_SNOWFLAKE_PRIVATE_KEY;
    
    Copy