ALTER SECURITY INTEGRATION (SAML2)

Ändert die Eigenschaften einer bestehenden SAML2-Sicherheitsintegration. Weitere Informationen zum Ändern anderer Typen von Sicherheitsintegrationen (z. B. SCIM) finden Sie unter ALTER SECURITY INTEGRATION.

Siehe auch:

CREATE SECURITY INTEGRATION (SAML2), DROP INTEGRATION, SHOW INTEGRATIONS, DESCRIBE INTEGRATION

Syntax

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

Parameter

name

Bezeichner für die zu ändernde Integration. Wenn der Bezeichner Leerzeichen oder Sonderzeichen enthält, muss die gesamte Zeichenfolge in doppelte Anführungszeichen gesetzt werden. Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß- und Kleinschreibung zu beachten.

SET ...

Gibt eine oder mehrere Eigenschaften/Parameter an, die für die Integration festgelegt werden sollen (getrennt durch Leerzeichen, Kommas oder neue Zeilen):

TYPE = SAML2

Geben Sie den Typ der Integration an:

  • SAML2: Erstellt eine Sicherheitsschnittstelle zwischen Snowflake und dem Identitätsanbieter.

ENABLED = TRUE | FALSE

Gibt an, ob die Integrationsoperation gestartet oder angehalten werden soll.

  • TRUE ermöglicht die Ausführung der Integration basierend auf den in der Pipedefinition angegebenen Parametern.

  • FALSE hält die Integration für Wartungszwecke an. Eine Integration zwischen Snowflake und einem Drittanbieterdienst funktioniert nicht.

SAML2_ISSUER = 'string_literal'

Die Zeichenfolge, die die EntityID bzw. den Aussteller des IdP enthält.

SAML2_SSO_URL = 'string_literal'

Die Zeichenfolge, die die IdP-SSO-URL enthält, zu welcher der Benutzer von Snowflake (dem Dienstanbieter) mittels einer SAML-AuthnRequest-Nachricht umgeleitet werden soll.

SAML2_PROVIDER = 'string_literal'

Die Zeichenfolge, die den IdP beschreibt.

Es gibt folgende Möglichkeiten: OKTA, ADFS, Custom (kundenspezifisch).

SAML2_X509_CERT = 'string_literal'

Das Base64-codierte IdP-Signaturzertifikat in einer einzigen Zeile ohne die führende -----BEGIN CERTIFICATE------ und endende -----END CERTIFICATE----- -Markierung.

SAML2_SP_INITIATED_LOGIN_PAGE_LABEL = 'string_literal'

Die Zeichenfolge mit der Bezeichnung, die auf der Anmeldeseite nach der Schaltfläche Log In With angezeigt werden soll.

SAML2_ENABLE_SP_INITIATED = TRUE | FALSE

Der Boolesche Wert, der angibt, ob die Schaltfläche Log In With auf der Anmeldeseite angezeigt wird.

  • Bei TRUE wird die Schaltfläche Log in With auf der Anmeldeseite angezeigt.

  • Bei FALSE wird die Schaltfläche Log in With auf der Anmeldeseite nicht angezeigt.

SAML2_SNOWFLAKE_X509_CERT = 'string_literal'

Das Base64-codierte, selbstsignierte Zertifikat zur Verwendung mit SAML-Assertionen verschlüsseln und Signierte SAML-Anforderungen senden, das von Snowflake generiert wird.

Sie müssen mindestens eines dieser Features (verschlüsselte SAML-Assertionen oder signierte SAML-Antworten) in Ihrem Snowflake-Konto aktiviert haben, um auf den Zertifikatwert zugreifen zu können.

SAML2_SIGN_REQUEST = TRUE | FALSE

Boolescher Wert, der angibt, ob SAML-Anforderungen signiert sind.

  • TRUE: Das Signieren von SAML-Anforderungen ist zulässig.

  • FALSE: Das Signieren von SAML-Anforderung ist nicht zulässig.

SAML2_REQUESTED_NAMEID_FORMAT = 'string_literal'

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. Wenn kein Wert angegeben wird, sendet Snowflake den Wert urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress in der Authentifizierungsanforderung an den IdP.

Optional.

Wenn Sie das SAML-NameID-Format angeben möchten, verwenden Sie einen der folgenden Werte:

  • 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>'

Der Endpunkt, zu dem Snowflake Benutzer nach dem Klicken auf die Schaltfläche Log Out auf der klassischen Weboberfläche umleitet.

Mit der Umleitung auf den angegebenen Endpunkt beendet Snowflake die Snowflake-Sitzung.

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 den ForceAuthn-SAML-Parameter 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.

SAML2_SNOWFLAKE_ISSUER_URL = '<string_literal>'

Die Zeichenfolge, die EntityID/Issuer für den Snowflake-Dienstanbieter enthält.

Wenn ein falscher Wert angegeben wird, gibt Snowflake eine Fehlermeldung zurück, in der die zu verwendenden akzeptablen Werte angegeben werden.

Der Wert dieser Eigenschaft muss mit der im IdP angegebenen Snowflake-Konto-URL übereinstimmen. Diese URL ist standardmäßig auf die alte URL eingestellt. Wenn Sie also ein anderes URL-Format im IdP definieren, müssen Sie diese Eigenschaft entsprechend anpassen.

SAML2_SNOWFLAKE_ACS_URL = '<string_literal>'

Die Zeichenfolge, die den Snowflake Assertion Consumer Service-URL enthält, an die der IdP seine SAML-Authentifizierungsantwort zurück an Snowflake senden wird. Diese Eigenschaft wird in der von Snowflake generierten SAML-Authentifizierungsanforderung festgelegt, wenn eine SAML-SSO-Operation beim IdP initiiert wird.

Wenn ein falscher Wert angegeben wird, gibt Snowflake eine Fehlermeldung zurück, in der die zu verwendenden akzeptablen Werte angegeben werden.

Der Wert dieser Eigenschaft muss mit der im IdP angegebenen Snowflake-Konto-URL übereinstimmen. Diese URL ist standardmäßig auf die alte URL eingestellt. Wenn Sie also ein anderes URL-Format im IdP definieren, müssen Sie diese Eigenschaft entsprechend anpassen.

Standard: https://<Konto-Locator>.<Region>.snowflakecomputing.com/fed/login

COMMENT = 'string_literal'

Fügt einen Kommentar hinzu oder überschreibt einen vorhandenen Kommentar für die Integration.

Standard: Kein Wert

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

Gibt den Namen des Tags und den Wert der Tag-Zeichenfolge an.

Der Tag-Wert ist immer eine Zeichenfolge, die maximale 256 Zeichen lang sein kann.

Weitere Informationen zur Angabe von Tags in einer Anweisung finden Sie unter Tag-Kontingente für Objekte und Spalten.

UNSET ...

Gibt eine oder mehrere Eigenschaften/Parameter an, die für die Sicherheitsintegration nicht festgelegt werden sollen, wodurch sie auf ihre Standardwerte zurückgesetzt werden:

  • ENABLED

  • TAG tag_name [ , tag_name ... ]

REFRESH SAML2_SNOWFLAKE_PRIVATE_KEY

Generiert einen neuen privaten Schlüssel und ein selbstsigniertes Zertifikat für eine SAML2-Sicherheitsintegration. Der alte private Schlüssel und das selbstsignierte Zertifikat werden durch die neuen überschrieben. Weitere Informationen zu bewährten Verfahren beim Rotieren von Schlüsseln finden Sie unter SAML2-Sicherheitsintegration verwalten.

Nutzungshinweise

  • Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „Benutzer“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.

  • Nachdem Sie Ihren SAML2_SNOWFLAKE_PRIVATE_KEY mit dem Befehl REFRESH rotiert haben, müssen Sie den neuen SAML2_SNOWFLAKE_X509_CERT-Wert in Ihren IdP hochladen, sonst funktioniert die SAML-Authentifizierung nicht mehr. Weitere Informationen zu bewährten Verfahren beim Rotieren von Schlüsseln finden Sie unter SAML2-Sicherheitsintegration verwalten.

Beispiele

  • Das folgende Beispiel leitet die Operation einer angehaltenen Integration ein:

    ALTER SECURITY INTEGRATION myint SET ENABLED = TRUE;
    
    Copy
  • Im folgenden Beispiel wird der private Schlüssel rotiert und ein neues selbstsigniertes Zertifikat für eine SAML2-Sicherheitsintegration namens my_idp generiert:

    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 Störungen zu minimieren, sollten Sie diesen Befehl ausführen, wenn die Benutzer nicht so aktiv sind. Weitere Informationen dazu finden Sie unter SAML2-Sicherheitsintegration verwalten.

    alter security integration my_idp refresh SAML2_SNOWFLAKE_PRIVATE_KEY;
    
    Copy