Konfigurieren von Snowflake für die Verwendung der Verbundauthentifizierung

Unter diesem Thema wird beschrieben, wie Snowflake für die Verbundauthentifizierung mit einer SAML2-Sicherheitsintegration konfiguriert wird. Bei diesem Thema wird davon ausgegangen, dass Sie bereits Ihren IdP für die Verwendung mit Snowflake konfiguriert haben.

Bemerkung

Eine SAML2-Sicherheitsintegration ersetzt den veralteten Kontoparameter SAML_IDENTITY_PROVIDER.

Wenn Sie eine bestehende SSO-Implementierung haben, die diesen veralteten Kontoparameter verwendet, müssen Sie erst zu einer SAML-Sicherheitsintegration migrieren, bevor Sie mit der Konfiguration von Snowflake für die Verbundauthentifizierung fortfahren.

Snowflake wird den veralteten Kontoparameter so lange unterstützen, wie es Implementierungen gibt, die diesen verwenden.

Unter diesem Thema:

SAML2-Sicherheitsintegration erstellen

Snowflake verwendet eine SAML2-Sicherheitsintegration zur Integration mit dem IdP, den Sie zur Implementierung der Verbundauthentifizierung verwenden. Verwenden Sie den Befehl CREATE SECURITY INTEGRATION, um die Konfiguration von Snowflake für SSO zu starten.

Wichtig

Wenn Sie einen IdP konfigurieren für SSO, müssen Sie für das Snowflake-Konto eine URL angeben. Das Format dieser URL muss mit den URLs in den Eigenschaften SAML2_SNOWFLAKE_ISSUER_URL und SAML2_SNOWFLAKE_ACS_URL der Sicherheitsintegration übereinstimmen.

Wenn Sie diese Eigenschaften beim Erstellen der Sicherheitsintegration nicht definieren, werden sie standardmäßig auf die alte URL des Kontos gesetzt.

Um beispielsweise eine Sicherheitsintegration zu erstellen, die eine Kontonamen-URL mit privater Konnektivität verwendet, führen Sie den folgenden SQL-Befehl aus:

CREATE SECURITY INTEGRATION my_idp
  TYPE = saml2
  ENABLED = true
  SAML2_ISSUER = 'https://example.com'
  SAML2_SSO_URL = 'http://myssoprovider.com'
  SAML2_PROVIDER = 'ADFS'
  SAML2_X509_CERT = 'MIICr...'
  SAML2_SNOWFLAKE_ISSUER_URL = 'https://<orgname>-<account_name>.privatelink.snowflakecomputing.com'
  SAML2_SNOWFLAKE_ACS_URL = 'https://<orgname>-<account_name>.privatelink.snowflakecomputing.com/fed/login';
Copy

Beachten Sie, dass /fed/login an die URL der Eigenschaft SAML2_SNOWFLAKE_ACS_URL angehängt wird. Weitere Informationen zu URL-Formaten für Snowflake-Konten finden Sie unter Verbinden mittels URL.

Nach dem Konfigurieren einer SAML2-Sicherheitsintegration können Sie diese für folgende Aufgaben verwenden:

  • SAML-Assertionen verschlüsseln

  • Signierte SAML-Anforderungen senden

  • SAML-NameID-Format angeben

  • Metadaten der SAML2-Sicherheitsintegration exportieren

  • Verfahren zum Erzwingen der erneuten Authentifizierung bei Snowflake

Bemerkung

Sie können eine SAML2-Sicherheitsintegration mit Clientumleitung verwenden, wenn Ihr Konto eine Business Critical Edition oder höher hat.

Weitere Informationen dazu finden Sie unter Umleiten von Clientverbindungen.

SSO-Anmeldung für Benutzer konfigurieren

Nachdem Sie eine SAML2-Sicherheitsintegration erstellt haben, können Sie konfigurieren, ob der Benutzer seine SSO-Anmeldung vom IdP oder von Snowflake aus startet.

Bei einer IdP-initiierten SSO-Anmeldung ist keine Konfiguration in Snowflake erforderlich. Sie müssen Ihre Benutzer lediglich darüber informieren, wie sie auf Snowflake zugreifen können (z. B. über ein internes Portal).

Die Eigenschaft SAML2_ENABLE_SP_INITIATED aktiviert von Snowflake initiiertes SSO. Die Eigenschaft SAML2_SP_INITIATED_LOGIN_PAGE_LABEL definiert eine Zeichenfolge, die den IdP identifiziert. Diese Zeichenfolge wird auf der Snowflake-Anmeldeseite angezeigt, damit die Benutzer auf den IdP zugreifen können.

Verwenden Sie den Befehl ALTER SECURITY INTEGRATION, um diese Eigenschaft einzustellen:

ALTER SECURITY INTEGRATION my_idp SET SAML2_ENABLE_SP_INITIATED = true;
ALTER SECURITY INTEGRATION my_idp SET SAML2_SP_INITIATED_LOGIN_PAGE_LABEL = 'My IdP';
Copy

Weitere Informationen zum Herstellen einer Clientverbindung zu Snowflake, nachdem die SSO-Anmeldung für Benutzer konfiguriert wurde, finden Sie unter Verwenden von SSO bei Clientanwendungen, die sich mit Snowflake verbinden

SAML-Assertionen verschlüsseln

Die Eigenschaft SAML2_SNOWFLAKE_X509_CERT stellt sicher, dass SAML2-Assertionen mit dem öffentlichen Zertifikat von Snowflake verschlüsselt werden, um den Datenverkehr zu sichern, wenn Benutzer über die Verbundauthentifizierung auf Snowflake zugreifen.

Nach Erhalt der verschlüsselten Assertionen vom Kunden-IdP entschlüsselt Snowflake die verschlüsselten Assertionen mit dessen privatem Schlüssel. Snowflake exportiert niemals seinen privaten Schlüssel oder stellt diesen zur Verfügung.

Weitere Informationen zum Verschlüsseln von SAML-Assertionen finden Sie in den folgenden Abschnitten.

Öffentliches Zertifikat von Snowflake exportieren

Nach dem Erstellen einer SAML2-Sicherheitsintegration führen Sie die folgenden Schritte aus:

  1. Führen Sie die folgende SQL-Anweisung auf der SAML2-Integration aus.

    DESC SECURITY INTEGRATION my_idp;
    
    Copy
  2. Suchen Sie den Wert für SAML2_SNOWFLAKE_X509_CERT in Zeile 7, der das öffentliche Zertifikat im PEM-Format darstellt.

  3. Speichern Sie den Wert, und achten Sie darauf, dass Sie die Trennzeichen BEGIN CERTIFICATE und END CERTIFICATE einschließen. Der nachstehende Codeblock enthält zum Beispiel ein abgeschnittenes Zertifikat im PEM-Format:

    -----BEGIN CERTIFICATE-----
    MIICr...
    -----END CERTIFICATE-----
    
    Copy

Zertifikatsignieranforderung (CSR) erstellen – Optional

Standardmäßig verwendet eine SAML2-Sicherheitsintegration in Snowflake ein selbstsigniertes Zertifikat für den SAML-IdP, um SAML-Assertionen zu verschlüsseln. Wenn Ihre Organisation die Verwendung eines von einer Zertifizierungsstelle (CA) ausgestellten Zertifikats erfordert, führen Sie folgende Schritte aus:

  1. Generieren Sie mit der Systemfunktion SYSTEM$GENERATE_SAML_CSR eine Zertifikatsignieranforderung (CSR) von Snowflake.

  2. Stellen Sie die CSR der CA Ihrer Wahl bereit, damit das Zertifikat ausgestellt werden kann.

  3. Laden Sie das Base64-codierte Zertifikat ohne die Trennzeichen BEGIN CERTIFICATE und END CERTIFICATE mit der folgenden ALTER-Anweisung in die SAML-Integration hoch.

    ALTER SECURITY INTEGRATION my_idp SET SAML2_SNOWFLAKE_X509_CERT = 'AX2bv...';
    
    Copy
  4. Führen Sie den Befehl DESCRIBE INTEGRATION aus, um die aktualisierte Sicherheitsintegration anzuzeigen:

    DESC SECURITY INTEGRATION my_idp;
    
    Copy

Sie können dann das Zertifikat für diesen privaten Schlüssel mit der von der Funktion generierten CSR in Snowflake hochladen.

SAML-IdP konfigurieren

  1. Laden Sie das gespeicherte Zertifikat im PEM-Format als SAML-Verschlüsselungszertifikat zum IdP Ihrer Organisation hoch.

  2. Konfigurieren Sie Ihren IdP so, dass SAML-Assertionen für den Snowflake-Dienstanbieter (SP) verschlüsselt werden.

Signierte SAML-Anforderungen senden

Sie können eine signierte SAML-Anforderung von Snowflake an den IdP senden, um die Authentizität von Snowflake als Dienstanbieter zu überprüfen. Um sicherzustellen, dass die SAML-Anforderung von Snowflake stammt und nicht von einem Dritten, der sich als Snowflake ausgibt, können Sie Ihren IdP so konfigurieren, dass dieser das in der SAML2-Sicherheitsintegration gespeicherte Zertifikat verwendet.

Eigenschaft SAML2_SIGN_REQUEST festlegen

Wenn Sie erstmalig eine SAML2-Sicherheitsintegration erstellen, müssen Sie die Eigenschaft SAML2_SIGN_REQUEST festlegen.

Wenn Sie eine SAML2-Sicherheitsintegration erstellt haben, ohne die Eigenschaft SAML2_SIGN_REQUEST festzulegen, führen Sie die folgenden Schritte aus:

  1. Führen Sie den Befehl ALTER SECURITY INTEGRATION als Benutzer mit der Rolle ACCOUNTADMIN aus, um die Sicherheitsintegration zu aktualisieren:

    ALTER SECURITY INTEGRATION my_idp SET SAML2_SIGN_REQUEST = true;
    
    Copy
  2. Führen Sie den Befehl DESCRIBE INTEGRATION aus, um die aktualisierte Sicherheitsintegration anzuzeigen:

    DESC SECURITY INTEGRATION my_idp;
    
    Copy

IdP für Akzeptanz von signierten Anforderungen konfigurieren

Konfigurieren Sie Ihren IdP so, dass signierte Anforderungen von Snowflake akzeptiert werden. Während der Konfiguration muss auf Ihrem IdP das Zertifikat in der Eigenschaft SAML2_SNOWFLAKE_X509_CERT gespeichert sein. Ihr IdP verwendet dieses Zertifikat, um zu überprüfen, ob die SAML-Anforderung von Snowflake stammt.

Bemerkung

Snowflake ist nicht für die Konfiguration Ihres IdP verantwortlich. Informationen zur Konfiguration Ihres IdP erhalten Sie von Ihrem internen Sicherheitsadministrator.

  1. Führen Sie den Befehl DESCRIBE INTEGRATION aus:

    DESC SECURITY INTEGRATION my_idp;
    
    Copy
  2. Speichern Sie den Wert der Eigenschaft SAML2_SNOWFLAKE_X509_CERT in Zeile 7, um ihn in Ihren IdP-Einstellungen verwenden zu können.

SAML-NameID-Format angeben

Snowflake unterstützt die Möglichkeit, dass der Administrator (d. h. der Benutzer mit der Rolle ACCOUNTADMIN) das SAML-NameID-Format angibt, das in der von Snowflake an den IdP gesendeten SAML-Authentifizierungsanforderung angefordert wird.

Durch Angabe des SAML-NameID-Formats kann Snowflake eine Erwartung für das identifizierende Attribut des Benutzers (d. h. den SAML-Betreff) in der SAML-Assertion des IdP festlegen und so eine gültige Authentifizierung bei Snowflake sicherstellen.

Das SAML-NameID-Format kann in die SAML2-Sicherheitsintegration integriert werden. Sie können die SAML-NameID in der Sicherheitsintegration mit einem der folgenden Werte angeben:

  • 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

Wenn das SAML-NameID-Format nicht angegeben ist, verwendet Snowflake den folgenden Wert:

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

Eigenschaft SAML2_REQUESTED_NAMEID_FORMAT festlegen

Wenn Sie erstmalig eine SAML2-Sicherheitsintegration erstellen, müssen Sie die Eigenschaft SAML2_REQUESTED_NAMEID_FORMAT festlegen.

Wenn Sie eine SAML2-Sicherheitsintegration erstellt haben, ohne die Eigenschaft SAML2_REQUESTED_NAMEID_FORMAT festzulegen, führen Sie die folgenden Schritte aus:

  1. Führen Sie den Befehl ALTER SECURITY INTEGRATION als Benutzer mit der Rolle ACCOUNTADMIN aus, um das SAML-NameId-Format anzugeben:

    ALTER SECURITY INTEGRATION my_idp SET SAML2_REQUESTED_NAMEID_FORMAT = '<string_literal>';
    
    Copy
  2. Führen Sie den Befehl DESCRIBE INTEGRATION aus, um die aktualisierte Sicherheitsintegration anzuzeigen:

    DESC SECURITY INTEGRATION my_idp;
    
    Copy

IdP für Angabe der NameID konfigurieren

Konfigurieren Sie Ihren IdP, um das SAML-NameID-Format in SAML-Assertionen verwenden zu können.

Bemerkung

Snowflake ist nicht für die Konfiguration Ihres IdP verantwortlich. Informationen zur Konfiguration Ihres IdP erhalten Sie von Ihrem internen Sicherheitsadministrator.

Metadaten der SAML2-Sicherheitsintegration exportieren

Snowflake stellt SAML 2.0-Metadaten für die SAML2-Sicherheitsintegration bereit, um die Konfiguration des Snowflake-Dienstanbieters bei Ihrem IdP zu vereinfachen.

Die SAML 2.0-Metadaten sind in der Eigenschaft SAML2_SNOWFLAKE_METADATA enthalten und können durch Ausführen des DESCRIBE INTEGRATION-Befehls auf der SAML2-Sicherheitsintegration abgerufen werden. Beispiel:

DESC SECURITY INTEGRATION my_idp;
Copy
------------------------------------+---------------+-----------------------------------------------------------------------------+------------------+
              property              | property_type |                               property_value                                | property_default |
------------------------------------+---------------+-----------------------------------------------------------------------------+------------------+
SAML2_X509_CERT                     | String        | MIICr...                                                                    |                  |
SAML2_PROVIDER                      | String        | OKTA                                                                        |                  |
SAML2_ENABLE_SP_INITIATED           | Boolean       | false                                                                       | false            |
SAML2_SP_INITIATED_LOGIN_PAGE_LABEL | String        | my_idp                                                                      |                  |
SAML2_SSO_URL                       | String        | https://okta.com/sso                                                        |                  |
SAML2_ISSUER                        | String        | https://okta.com                                                            |                  |
SAML2_SNOWFLAKE_X509_CERT           | String        | MIICr...                                                                    |                  |
SAML2_REQUESTED_NAMEID_FORMAT       | String        | urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress                      |                  |
SAML2_SNOWFLAKE_ACS_URL             | String        | https://example.snowflakecomputing.com/fed/login                            |                  |
SAML2_SNOWFLAKE_ISSUER_URL          | String        | https://example.snowflakecomputing.com                                      |                  |
SAML2_SNOWFLAKE_METADATA            | String        | <md:EntityDescriptor entityID="https://example.snowflakecomputing.com"> ... |                  |
SAML2_DIGEST_METHODS_USED           | String        | http://www.w3.org/2001/04/xmlenc#sha256                                     |                  |
SAML2_SIGNATURE_METHODS_USED        | String        | http://www.w3.org/2001/04/xmldsig-more#rsa-sha256                           |                  |
------------------------------------+---------------+-----------------------------------------------------------------------------+------------------+

Als repräsentatives Beispiel werden unten die SAML 2.0-Metadaten im XML-Format aus der Eigenschaft SAML2_SNOWFLAKE_METADATA gezeigt. Beachten Sie, dass die X509certificate-Werte für signing und encryption abgeschnitten sind.

<md:EntityDescriptor xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" entityID="https://example.snowflakecomputing.com">
 <md:SPSSODescriptor AuthnRequestsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
  <md:KeyDescriptor use="signing">
    <dsig:KeyInfo>
      <dsig:X509Data>
        <dsig:X509Certificate>MIICr...</dsig:X509Certificate>
      </dsig:X509Data>
    </dsig:KeyInfo>
  </md:KeyDescriptor>
  <md:KeyDescriptor use="encryption">
    <dsig:KeyInfo>
      <dsig:X509Data>
        <dsig:X509Certificate>MIICr...</dsig:X509Certificate>
      </dsig:X509Data>
    </dsig:KeyInfo>
  </md:KeyDescriptor>
  <md:AssertionConsumerService index="0" isDefault="true" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://example.snowflakecomputing.com/fed/login" />
 </md:SPSSODescriptor>
</md:EntityDescriptor>
Copy

In der folgenden Tabelle werden die XML-Metadaten-Tags als Referenz den Eigenschaften der Snowflake-SAML2-Sicherheitsintegration zugeordnet.

XML-Ausgabe

Eigenschaften der SAML2-Sicherheitsintegration

entityID

SAML2_SNOWFLAKE_ISSUER_URL

AuthnRequestsSigned

SAML2_SIGN_REQUEST

Signaturzertifikat

SAML2_SNOWFLAKE_X509_CERT

Verschlüsselungszertifikat

SAML2_SNOWFLAKE_X509_CERT

Assertion Consumer Service-URL

SAML2_SNOWFLAKE_ACS_URL

Erneuten Authentifizierung bei Snowflake erzwingen

Snowflake unterstützt die Konfiguration Ihrer SAML2-Sicherheitsintegration, indem sich der authentifizierende Benutzer bei der erstmaligen SSO-Authentifizierung oder bei Ablauf einer aktuellen Snowflake-Sitzung erneut authentifizieren muss, bevor ein Zugriff auf Snowflake möglich ist.

Wenn dieses Feature in der SAML2-Sicherheitsintegration von Snowflake aktiviert ist, setzt Snowflake in der ausgehenden SAML-Anforderung von Snowflake an den IdP die ForceAuthn-Eigenschaft der SAML-Spezifikation auf True. Sobald der IdP die Anforderung mit der auf True gesetzten ForceAuthn-Eigenschaft empfängt, sendet der IdP eine Anforderung an Snowflake, die dazu führt, dass Benutzer aufgefordert werden, ihre Authentifizierungsdaten (z. B. Benutzername, Kennwort) erneut einzugeben, um auf Snowflake zugreifen zu können.

Dieses Feature bietet erweiterte Sicherheit durch Re-Authentifizierung. Darüber hinaus ermöglicht die erneute Authentifizierungsaufforderung Benutzern die Eingabe anderer Anmeldeinformationen als diejenigen, mit denen SSO für den Zugriff auf Snowflake initiiert wurde.

Wichtig

Bevor Sie dieses Feature implementieren, vergewissern Sie sich, dass Ihr IdP Identitätswechsel während einer SSO-Authentifizierung unterstützt.

Wenn dieses Feature in Snowflake implementiert ist, Ihr IdP aber Identitätswechsel bei der erstmaligen SSO-Authentifizierung nicht unterstützt, können Benutzer möglicherweise keine anderen Anmeldeinformationen in der Eingabeaufforderung zur erneuten Authentifizierung verwenden und somit nicht auf Snowflake zugreifen.

Wenn Sie erstmalig eine SAML2-Sicherheitsintegration erstellen, müssen Sie die Eigenschaft SAML2_FORCE_AUTHN festlegen.

Um eine bestehende SAML2-Sicherheitsintegration zu aktualisieren, damit für den Zugriff auf Snowflake die erneute Authentifizierung erzwungen wird, führen Sie die folgenden Schritte aus:

  1. Führen Sie den Befehl ALTER SECURITY INTEGRATION aus, um die Sicherheitsintegration zu aktualisieren:

    ALTER SECURITY INTEGRATION my_idp SET SAML2_FORCE_AUTHN = true;
    
    Copy
  2. Führen Sie den Befehl DESCRIBE INTEGRATION aus, um die aktualisierte Sicherheitsintegration anzuzeigen:

    DESC SECURITY INTEGRATION my_idp;
    
    Copy

Wobei:

SAML2_FORCE_AUTHN = TRUE | FALSE

Der boolesche Wert gibt an, ob Benutzer während der erstmaligen Authentifizierung gezwungen werden, sich erneut zu authentifizieren, um auf Snowflake zugreifen zu können. Wenn auf TRUE gesetzt, setzt Snowflake die ForceAuthn-SAML-Eigenschaft in der ausgehenden Anforderung von Snowflake an den Identitätsanbieter auf TRUE.

  • TRUE zwingt Benutzer, sich erneut zu authentifizieren, um auf Snowflake zugreifen zu können, selbst wenn eine gültige Sitzung beim Identitätsanbieter besteht.

  • FALSE zwingt Benutzer nicht dazu, sich erneut zu authentifizieren, um auf Snowflake zugreifen zu können.

Standard: FALSE.

Kundenspezifischer Logout-Endpunkt

Snowflake unterstützt die Definition einer kundenspezifischen Endpunkt-URL, an die Benutzer nach dem Abmelden von Snowflake umgeleitet werden. Der Endpunkt wird über die Eigenschaft SAML2_POST_LOGOUT_REDIRECT_URL in der SAML2-Sicherheitsintegration festgelegt.

Wenn diese Funktion für Benutzer aktiviert ist, die über SAML SSO auf Snowflake zugreifen, führt das Klicken auf die Schaltfläche Log Out der klassischen Snowflake-Weboberfläche dazu, dass Snowflake die Snowflake-Sitzung beendet und die Benutzer zum angegebenen Endpunkt umleitet.

Wichtig

Dieses Verhalten gilt nicht für Snowsight.

Durch das Definieren eines Logout-Endpunkts können Administratoren steuern, wohin Benutzer nach der Abmeldung von Snowflake umgeleitet werden. Ein kundenspezifischer Endpunkt könnte z. B. ein Skript auslösen, um gleichzeitig die IdP-Sitzung zu beenden. Der Vorteil dieser Implementierung ist, dass sowohl die Snowflake- als auch die IdP-Sitzungen beendet werden, wodurch Benutzer gezwungen sind, sich erneut bei IdP zu authentifizieren, um auf Snowflake zuzugreifen.

Wenn Sie erstmalig eine SAML2-Sicherheitsintegration erstellen, müssen Sie die Eigenschaft SAML2_POST_LOGOUT_REDIRECT_URL festlegen.

Wenn Sie eine SAML2-Sicherheitsintegration erstellt haben, ohne die Eigenschaft SAML2_POST_LOGOUT_REDIRECT_URL festzulegen, führen Sie den Befehl ALTER SECURITY INTEGRATION aus, um den kundenspezifischen Logout-Endpunkt zu konfigurieren:

ALTER SECURITY INTEGRATION my_idp SET SAML2_POST_LOGOUT_REDIRECT_URL = 'https://logout.example.com';
Copy

SAML2-Sicherheitsintegration verwalten

Verwenden Sie einen ALTER SECURITY INTEGRATION-Befehl, um die SAML2-Sicherheitsintegration zu verwalten. Beispiel:

  • Aktualisieren Sie das X.509-Zertifikat als Zeichenfolge in eine vorhandene SAML2-Sicherheitsintegration.

    ALTER SECURITY INTEGRATION my_idp SET SAML2_X509_CERT = 'AX2bv...';
    
    Copy
  • Wenn Sie als Kunde Ihren IdP so konfigurieren, dass er SAML-Anforderungssignaturen verifiziert oder SAML-Antworten verschlüsselt, können Sie Ihren vorhandenen privaten Schlüssel und Ihr selbstsigniertes Zertifikat überschreiben und einen neuen privaten Schlüssel und ein neues selbstsigniertes Zertifikat generieren:

    1. Generieren Sie einen neuen privaten Schlüssel:

      Vorsicht

      Nach der Ausführung des folgenden Befehls funktioniert die SAML-Authentifizierung nicht mehr, da Ihr IdP noch Ihr altes SAML2_SNOWFLAKE_X509_CERT-Zertifikat verwendet. Um Unterbrechungen zu minimieren, müssen Sie den folgenden Befehl ausführen, wenn die Benutzer weniger aktiv sind.

      ALTER SECURITY INTEGRATION my_idp REFRESH SAML2_SNOWFLAKE_PRIVATE_KEY;
      
      Copy
    2. Rufen Sie den Wert der Eigenschaft SAML2_SNOWFLAKE_X509_CERT in Ihrer Sicherheitsintegration ab:

      DESCRIBE SECURITY INTEGRATION my_idp;
      SELECT "property_value" FROM TABLE(RESULT_SCAN(LAST_QUERY_ID()))
        WHERE "property" = 'SAML2_SNOWFLAKE_X509_CERT';
      
      Copy
    3. Laden Sie den abgerufenen Wert in Ihren IdP hoch, um das alte Zertifikat in Ihrem IdP durch das neue Zertifikat zu ersetzen.

  • Aktivieren Sie signierte Anforderungen.

    ALTER SECURITY INTEGRATION my_idp SET SAML2_SIGN_REQUEST = true;
    
    Copy
  • Geben Sie das NameID-Format an.

    ALTER SECURITY INTEGRATION my_idp SET SAML2_REQUESTED_NAMEID_FORMAT = 'urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified';
    
    Copy
  • Aktualisieren Sie eine bestehende Sicherheitsintegration, um die erzwungene Neuauthentifizierung zu aktivieren.

    ALTER SECURITY INTEGRATION my_idp SET SAML2_FORCE_AUTHN = true;
    
    Copy
  • Aktualisieren Sie eine bestehende Sicherheitsintegration, um die erzwungene Neuauthentifizierung zu deaktivieren.

    ALTER SECURITY INTEGRATION my_idp UNSET SAML2_FORCE_AUTHN;
    
    Copy
  • Aktualisieren Sie den kundenspezifischen Logout-Endpunkt.

    ALTER SECURITY INTEGRATION my_idp SET SAML2_POST_LOGOUT_REDIRECT_URL = 'https://logout.example.com';
    
    Copy

Weitere Informationen dazu finden Sie unter ALTER SECURITY INTEGRATION.

SSO-Konfiguration replizieren

Snowflake unterstützt Replikation und Failover/Failback der SAML2-Sicherheitsintegration von einem Quellkonto in ein Zielkonto.

Weitere Details dazu finden Sie unter Replikation von Sicherheitsintegrationen und Netzwerkrichtlinien über mehrere Konten hinweg.