Konfigurieren eines Identitätsanbieters (IdP) für Snowflake

Die Aufgaben zum Konfigurieren eines IdP sind unterschiedlich, je nachdem, ob Sie Okta, AD FS oder einen anderen (d. h. benutzerdefinierten) SAML 2.0-konformen Service bzw. eine Anwendung wählen, um Ihren Snowflake-Benutzern eine Verbundauthentifizierung bereitzustellen.

Unter diesem Thema:

Bemerkung

Nachdem Sie diese IdP-spezifischen Aufgaben abgeschlossen haben, müssen Sie Snowflake so konfigurieren, dass die Verbundauthentifizierung verwendet wird, um das Setup abzuschließen.

Okta-Setup

Um Okta als Ihren IdP für die Verbundauthentifizierung zu verwenden, müssen Sie die folgenden Aufgaben in Okta ausführen:

  1. Erstellen Sie ein Okta-Konto für Ihr Unternehmen oder Ihre Organisation.

  2. Melden Sie sich als Benutzer mit Administratorberechtigungen in Ihrem Okta-Konto an, und erstellen Sie einen Benutzer für jede Person, die Zugriff auf Snowflake benötigt. Achten Sie beim Anlegen von Benutzern darauf, dass Sie für jeden Benutzer eine E-Mail-Adresse angeben. E-Mail-Adressen sind erforderlich, um die Benutzer in Okta mit den entsprechenden Benutzern in Snowflake zu verbinden.

  3. Erstellen Sie eine Snowflake-Anwendung in Okta:

    • Im Feld Label für die Anwendung können Sie einen beliebigen Namen angeben.

    • Geben Sie im Feld SubDomain der Anwendung den Namen Ihres Snowflake-Kontos (von Snowflake bereitgestellt) ein.

    • Beachten Sie, dass Ihre Region in das Feld SubDomain aufgenommen werden muss, wenn Ihre Region nicht US West ist.

  4. Ordnen Sie die von Ihnen erstellten Okta-Benutzer der Snowflake-Anwendung in Okta zu.

  5. Konfigurieren Sie SAML 2.0 als Anmeldeverfahren für die von Ihnen erstellte Snowflake-Anwendung. Im nächsten Schritt (Konfigurieren von Snowflake für die Verwendung der Verbundauthentifizierung) benötigen Sie die URL und das Zertifikat für SSO.

    • Klicken Sie auf der Registerkarte Sign On auf View Setup Instructions.

    • Entnehmen Sie die erforderlichen Informationen aus der Setupanleitung:

      • SSO URL (IdP-URL-Endpunkt, an den Snowflake SAML-Anforderung senden wird)

      • Zertifikat (dient zur Überprüfung der Kommunikation zwischen IdP und Snowflake)

AD FS-Setup

Um AD FS als Ihren IdP für die Verbundauthentifizierung zu verwenden, müssen Sie in AD FS die folgenden Aufgaben ausführen.

Voraussetzungen

  • Vergewissern Sie sich, dass AD FS 3.0 installiert ist und unter Windows Server 2012 R2 funktioniert.

  • Stellen Sie sicher, dass für jede Person, die Zugang zu Snowflake benötigt, ein Benutzer in AD FS vorhanden ist. Achten Sie beim Erstellen von Benutzern darauf, dass Sie für jeden Benutzer eine E-Mail-Adresse angeben. E-Mail-Adressen sind erforderlich, um die AD FS-Benutzer mit den entsprechenden Benutzern in Snowflake zu verbinden.

Bemerkung

Andere Versionen von AD FS und Windows Server können verwendet werden, möglicherweise unterscheiden sich dann aber die Konfigurationsanweisungen.

Schritt 1: Vertrauensstellung der vertrauenden Seite für Snowflake hinzufügen

Verwenden Sie in der AD FS-Managementkonsole den Add Relying Party Trust Wizard, um der AD FS-Konfigurationsdatenbank eine neue Vertrauensstellung der vertrauenden Seite hinzuzufügen:

  1. Wählen Sie bei Aufforderung das Optionsfeld Enter data about the relying party manually aus.

  2. Geben Sie auf dem nächsten Bildschirm einen Anzeigenamen (z. B. „Snowflake“) für die vertrauenden Seite ein.

  3. Wählen Sie im nächsten Bildschirm das Optionsfeld AD FS profile.

  4. Überspringen Sie den nächsten Bildschirm (zur Angabe eines optionalen Token-Verschlüsselungszertifikats).

  5. Auf dem nächsten Bildschirm:

    • Aktivieren Sie das Kontrollkästchen Enable support for the SAML 2.0 WebSSO protocol.

    • Geben Sie im Feld URL für den SAML 2.0 SSO-Service der vertrauenden Seite die SSO URL Ihres Snowflake-Kontos ein. Beachten Sie, dass das Format der URL je nach Region, in der sich Ihr Konto befindet, unterschiedlich ist:

      US West (AWS)

      https://<Kontoname>.snowflakecomputing.com/fed/login

      Andere Regionen

      https://<Kontoname>.<Regions-ID>.snowflakecomputing.com/fed/login

      Mit AWS PrivateLink

      https://<Kontoname>.<Regions-ID>.privatelink.snowflakecomputing.com/fed/login

      Azure Private Link

      https://<Kontoname>.<Regions-ID>.privatelink.snowflakecomputing.com/fed/login

      Dabei ist <Kontoname> der Name Ihres Kontos (wird von Snowflake bereitgestellt), und <Regions-ID> ist:

      Region

      Regions-ID

      Anmerkungen

      Amazon Web Services (AWS)

      US West (Oregon)

      us-west-2

      Nur erforderlich, wenn Sie AWS PrivateLink für Konten in US West konfigurieren.

      US East (Ohio)

      us-east-2.aws

      US East (N. Virginia)

      us-east-1

      US East (Commercial Gov - N. Virginia)

      us-east-1-gov.aws

      Nur für Business Critical-Konten (oder höher) verfügbar. Befindet sich nicht in AWS GovCloud (US), einer separaten, dedizierten Cloud, die von Snowflake noch nicht unterstützt wird.

      Canada (Central)

      ca-central-1.aws

      EU (Irland)

      eu-west-1

      EU (Frankfurt)

      eu-central-1

      Asia Pacific (Tokio)

      ap-northeast-1.aws

      Asia Pacific (Mumbai)

      ap-south-1.aws

      Asia Pacific (Singapur)

      ap-southeast-1

      Asia Pacific (Sydney)

      ap-southeast-2

      Google Cloud Platform (GCP)

      US Central1 (Iowa)

      us-central1.gcp

      Europe West2 (London)

      europe-west2.gcp

      Europe West4 (Niederlande)

      europe-west4.gcp

      Microsoft Azure

      West US 2 (Washington)

      west-us-2.azure

      East US 2 (Virginia)

      east-us-2.azure

      US Gov Virginia

      us-gov-virginia.azure

      Nur für Business Critical-Konten (oder höher) verfügbar.

      Canada Central (Toronto)

      canada-central.azure

      West Europe (Niederlande)

      west-europe.azure

      Switzerland North (Zürich)

      switzerland-north.azure

      Southeast Asia (Singapur)

      southeast-asia.azure

      Australia East (New South Wales)

      australia-east.azure

  6. Geben Sie auf dem nächsten Bildschirm im Feld Relying party trust identifier die URL für Ihr Snowflake-Konto ein. Wie bei der vorherige URL-Eingabe hängt das Format von der jeweiligen Snowflake-Region ab, in der sich Ihr Konto befindet:

    US West (AWS)

    https://<Kontoname>.snowflakecomputing.com

    Andere Regionen

    https://<Kontoname>.<Regions-ID>.snowflakecomputing.com

    Mit AWS PrivateLink

    https://<Kontoname>.<Regions-ID>.privatelink.snowflakecomputing.com

    Azure Private Link

    https://<Kontoname>.<Regions-ID>.privatelink.snowflakecomputing.com

  7. Wählen Sie auf dem nächsten Bildschirm das Optionsfeld I do not want to configure multi-factor authentication settings for this relying party trust at this time aus.

  8. Wählen Sie auf dem nächsten Bildschirm das Optionsfeld Permit all users to access this relying party aus.

  9. Überprüfen Sie auf dem nächsten Bildschirm Ihre Konfiguration für die Vertrauensstellung der vertrauenden Seite. Stellen Sie auch sicher, dass auf der Registerkarte Advanced die Option SHA-256 als sicherer Hash-Algorithmus ausgewählt ist.

  10. Wählen Sie auf dem nächsten Bildschirm Open the Edit Claim Rules dialog for this relying party trust when the wizard closes`aus, und klicken Sie auf :extui:`Close, um die Konfigurationsassistenten abzuschließen.

Schritt 2: Anspruchsregeln für die Snowflake-Vertrauensstellung der vertrauenden Seite definieren

Das Fenster Edit Claim Rules for Snowflake-Vertrauensname wird nach dem Schließen des Assistenten automatisch geöffnet. Sie können dieses Fenster auch über die AD FS-Managementkonsole öffnen, indem Sie auf Folgendes klicken:

AD FS » Trust Relationships » Relying Party Trusts » Snowflake-Vertrauensname » Edit Claim Rules…

Im Fenster:

  1. Erstellen Sie eine Regel für das Senden von LDAP-Attributen als Ansprüche:

    1. Klicken Sie auf Add Rules, und wählen Sie Send LDAP Attributes as Claim aus.

    2. Im Dialogfeld Edit Rule:

      • Geben Sie einen Namen (z. B. „Attribute herunterladen“) für die Regel ein.

        • Setzen Sie Attribute store auf Active Directory.

        • Fügen Sie zwei LDAP-Attribute für die Regel hinzu:

          • E-Mail-Addresses mit E-Mail Address als Typ des ausgehenden Anspruchs.

          • Display-Name mit Name als Typ des ausgehenden Anspruchs.

    3. Klicken Sie auf die Schaltfläche OK, um die Regel zu erstellen.

  2. Erstellen Sie eine Regel für das Transformieren eingehender Ansprüche:

    1. Klicken Sie auf Add Rules, und wählen Sie Transform an Incoming Claim aus.

    2. Im Dialogfeld Add Transform Claim Rule Wizard:

      • Geben Sie einen Namen (z. B. „Namens-ID transformieren“) für die Anspruchsregel ein.

      • Setzen Sie Incoming claim type auf E-Mail Address.

      • Setzen Sie Outgoing claim type auf Name ID.

      • Setzen Sie Outgoing name ID format auf Email.

      • Wählen Sie das Optionsfeld Pass through all claim values aus.

    3. Klicken Sie auf die Schaltfläche Finish, um die Regel zu erstellen.

  3. Klicken Sie auf die Schaltfläche OK, um das Hinzufügen von Anspruchsregeln für die Snowflake-Vertrauensstellung der vertrauenden Seite zu beenden.

Wichtig

Achten Sie darauf, dass Sie die Werte für die Regeln genau wie oben beschrieben eingeben.

Stellen Sie außerdem sicher, dass die von Ihnen erstellten Regeln in der folgenden Reihenfolge aufgeführt sind:

  1. LDAP-Attribute

  2. Transformation eingehender Ansprüche

Die Regeln funktionieren nicht korrekt, wenn es Tippfehler in den Regeln gibt oder die Regeln nicht in der richtigen Reihenfolge aufgeführt sind.

Schritt 3: Globales Abmelden aktivieren – optional

Um die globale Abmeldung von Snowflake in AD FS zu aktivieren, klicken Sie in der AD FS-Managementkonsole auf:

AD FS » Trust Relationships » Relying Party Trusts » <Name_der_Snowflake-Vertrauensstellung> » Properties

Im Dialogfeld Properties:

  1. Klicken Sie auf die Registerkarte Endpoints und dann auf die Schaltfläche Add SAML….

  2. Im Dialogfeld Edit Endpoint:

    • Setzen Sie Endpoint type auf SAML Logout.

    • Setzen Sie Binding auf POST oder REDIRECT.

    • Setzen Sie Trusted URL auf:

      US West (AWS)

      <Kontoname>.snowflakecomputing.com/fed/logout

      Andere Regionen

      <Kontoname>.<Regions-ID>.snowflakecomputing.com/fed/logout

      Mit AWS PrivateLink

      <Kontoname>.<Regions-ID>.privatelink.snowflakecomputing.com/fed/logout

      Azure Private Link

      <Kontoname>.<Regions-ID>.privatelink.snowflakecomputing.com/fed/logout

    • Lassen Sie Response URL leer.

    • Klicken Sie auf die Schaltfläche OK, um die Änderungen zu speichern.

Schritt 4: SSO URL und Zertifikat herunterladen

Um die Einrichtung von AD FS abzuschließen, erhalten Sie von AD FS die URL und das Zertifikat für SSO. Sie benötigen diese beiden Werte im nächsten Schritt: Konfigurieren von Snowflake für die Verwendung der Verbundauthentifizierung.

  • SSO URL

    Der AD FS-URL-Endpunkt, an den Snowflake SAML-Anfragen senden wird. Dies ist typischerweise die Anmelde-URL für AD FS, die normalerweise die IP oder den FQDN Ihres AD FS-Servers (mit /adfs/ls am Ende) ist.

  • Zertifikat

    Wird verwendet, um die Kommunikation zwischen AD FS und Snowflake zu überprüfen. Sie können es von der AD FS-Managementkonsole herunterladen:

    1. Klicken Sie in der Konsole auf:

      AD FS » Service » Certificates

    2. Klicken Sie auf der Seite Certificates mit der rechten Maustaste auf den Eintrag Token-signing und dann auf View Certificate….

    3. Wählen Sie im Dialogfeld Certificate die Registerkarte Details aus.

    4. Klicken Sie auf Copy to File…, um den Assistenten für den Zertifikatsexport zu öffnen.

    5. Wählen Sie als Exportdateiformat Base-64 encoded X.509 (.CER) aus, und klicken Sie auf Next.

    6. Speichern Sie die Datei in einem Verzeichnis Ihrer lokalen Umgebung.

    7. Öffnen Sie die Datei, und kopieren Sie das Zertifikat, das aus einer einzigen Zeile besteht, zwischen die folgenden Zeilen:

      -----BEGIN CERTIFICATE-----
      <certificate>
      -----END CERTIFICATE-----
      

Benutzerdefiniertes IdP-Setup

Um einen SAML 2.0-konformen Service oder eine Anwendung als IdP für die Verbundauthentifizierung zu verwenden, müssen Sie die folgenden Aufgaben ausführen:

  1. Definieren Sie in der Service-/Anwendungsschnittstelle eine benutzerdefinierte SHA-256-Anwendung für Snowflake. Die Anweisungen zur Definition einer benutzerdefinierten Anwendung sind spezifisch für den Service bzw. die Anwendung, der/die als IdP dient.

  2. Erstellen Sie in der Benutzeroberfläche einen Benutzer für jede Person, die Zugriff auf Snowflake benötigt. Achten Sie beim Anlegen von Benutzern darauf, dass Sie für jeden Benutzer eine E-Mail-Adresse angeben. E-Mail-Adressen sind erforderlich, um die Benutzer im IdP mit ihren entsprechenden Benutzern in Snowflake zu verbinden.

  3. Beziehen Sie die SSO-URL und das Zertifikat von Ihrem benutzerdefinierten IdP. Im nächsten Schritt (Konfigurieren von Snowflake für die Verwendung der Verbundauthentifizierung) benötigen Sie die URL und das Zertifikat für SSO.

    • SSO URL (IdP-URL-Endpunkt, an den Snowflake SAML-Anforderung senden wird)

    • Zertifikat (dient zur Überprüfung der Kommunikation zwischen IdP und Snowflake)

Wichtig

Bei der Konfiguration von benutzerdefinierten Identitätsanbietern wird bei Feldwerten häufig zwischen Groß- und Kleinschreibung unterschieden. Wenn Fehlermeldungen oder Fehlercodes angezeigt werden, überprüfen Sie noch einmal sorgfältig alle Werte, die Sie im Zuge der Konfiguration eingegeben haben.