Zum Inhalt springen

Snowflake-Verbindungsleitfaden für Jitterbit App Builder

Einführung

Dieser Leitfaden zeigt dir, wie du eine App Builder-App mit einem Snowflake-Konto verbindest, indem du OAuth oder zertifikatbasierte Authentifizierung verwendest.

OAuth-Authentifizierung

Voraussetzungen

1. Sicherheitsanbieter einrichten

  1. Wähle IDE > Security Providers.

  2. Klicke auf die Schaltfläche + Security Provider.

  3. Lege Werte für die folgenden Felder fest:

    • Im Abschnitt Settings:

      • Name: Gib einen Namen für den Sicherheitsanbieter ein.
      • Type: Wähle OAuth.
      • Enabled: Ausgewählt.
    • Im Abschnitt Authentication:

      • OAuth Grant: Wähle Authorization Code.
      • OAuth Client Authentication: Wähle Basic.
      • OAuth Resource Authentication: Wähle Bearer.
    • Im Abschnitt Tokens:

      • Owner: Wähle User.
    • Im Abschnitt Sign In:

      • Redirect On Challenge: Ausgewählt.
  4. Klicke auf die Schaltfläche Save. Zusätzliche Bereiche werden angezeigt.

  5. Klicke im Abschnitt Endpoints auf die Schaltfläche + Endpoint, und füge dann die folgenden Endpunkte hinzu:

    Endpunkt-Typ URL
    Authorization Endpoint https://{Snowflake account URL}/oauth/authorize
    Token Endpoint https://{Snowflake account URL}/oauth/token-request
  6. Klicke im Abschnitt Credentials auf die Schaltfläche + Credential, und füge dann die folgende Anmeldeinformation hinzu:

    Typ Benutzername Passwort
    Client OAUTH_CLIENT_ID OAUTH_CLIENT_SECRET

    Hinweis

    OAUTH_CLIENT_ID und OAUTH_CLIENT_SECRET sind Ausgaben des Befehls SYSTEM$SHOW_OAUTH_CLIENT_SECRETS.

  7. Klicke im Abschnitt Properties auf + Property, und füge dann die folgende Eigenschaft hinzu:

    Parameter Wert
    Scopes session:role:SYSADMIN

2. Datenserver einrichten

  1. Wähle IDE > Data Servers.
  2. Klicke auf die Schaltfläche + Server.
  3. Lege im Popup Server Werte für folgende Einstellungen fest:

    • Im Abschnitt Server Settings:

      • Server Name: Gib einen Namen für diesen Snowflake-Server ein.
      • Type: Wähle Snowflake. Zusätzliche Felder werden angezeigt. Lege Werte für folgende Einstellungen fest:
        • URL: Die URL.
        • Warehouse: Der Name deines Snowflake-Warehouse.
        • Database Name: Der Name deiner Snowflake-Datenbank.
        • Schema Name: Der Name deines Snowflake-Schemas.
    • Im Abschnitt Security:

      • Security Provider: Wähle den zuvor erstellten OAuth-Sicherheitsanbieter aus.
      • User Name: Leere Lassen.
      • Password: Leere Lassen.
    • Description: (Optional) Gib eine Beschreibung für diesen Datenserver ein.

  4. Klicke auf die Schaltfläche Save.

  5. Klicke im Abschnitt Server Settings auf die Schaltfläche Advanced Settings. Das Popup Server (Advanced Settings) wird geöffnet.
  6. Klicke auf die Schaltfläche Edit.
  7. Gib im Feld Advanced AuthScheme=OAuth ein.
  8. Klicke auf die Schaltfläche Save, und schließe dann die Popups Server (Advanced Settings) und Server.

Du kannst den Datenserver jetzt in deinen Apps verwenden.

Zertifikatbasierte Authentifizierung

Die zertifikatbasierte Authentifizierung verwendet ein RSA-Schlüsselpaar. Der öffentliche Schlüssel wird beim Snowflake-Benutzerkonto registriert, und App Builder authentifiziert sich mithilfe der Datei mit dem privaten Schlüssel.

Voraussetzungen

  • Ein aktives Snowflake-Konto.
  • Ein generiertes RSA-Schlüsselpaar. Anweisungen finden Sie unter Generate the private key in der Snowflake-Dokumentation. Die private Schlüsseldatei (.p8) muss sich im Dateisystem des App Builder-Servers befinden und muss vom App Builder-Prozess lesbar sein.

1. Snowflake konfigurieren

Führen Sie die folgenden SQL-Befehle in Snowflake als Benutzer mit der Rolle ACCOUNTADMIN aus.

  1. Erstellen Sie einen Snowflake-Benutzer mit dem zugewiesenen öffentlichen Schlüssel:

    CREATE USER {username}
      LOGIN_NAME = {username}
      DISPLAY_NAME = 'App Builder (Key Auth)'
      -- The public key must be a single, continuous string.
      -- Do not include the '-----BEGIN PUBLIC KEY-----' or '-----END PUBLIC KEY-----' header lines.
      RSA_PUBLIC_KEY = '{public_key_content}';
    
  2. Weisen Sie die erforderliche Rolle dem Benutzer zu:

    GRANT ROLE {role_name} TO USER {username};
    
  3. Gewähren Sie der Rolle Zugriff auf die Datenbank und das Schema:

    GRANT USAGE ON DATABASE {database_name} TO ROLE {role_name};
    GRANT USAGE ON SCHEMA {database_name}.{schema_name} TO ROLE {role_name};
    
  4. Legen Sie den Standard-Kontext für den Benutzer fest:

    ALTER USER {username} SET
        DEFAULT_ROLE = {role_name},
        DEFAULT_WAREHOUSE = '{warehouse_name}',
        DEFAULT_NAMESPACE = '{database_name}.{schema_name}';
    

2. Datenserver einrichten

  1. Wählen Sie IDE > Data Servers.
  2. Klicken Sie auf die Schaltfläche + Server.
  3. Legen Sie im Popup Server Werte für Folgendes fest:

    • Im Bereich Server Settings:

      • Server Name: Geben Sie einen Namen für diesen Snowflake-Server ein.
      • Type: Wählen Sie Snowflake aus. Zusätzliche Felder werden angezeigt. Legen Sie Werte für Folgendes fest:
        • URL: Die URL.
        • Warehouse: Der Name Ihres Snowflake-Warehouse.
        • Database Name: Der Name Ihrer Snowflake-Datenbank.
        • Schema Name: Der Name Ihres Snowflake-Schemas.
    • Im Bereich Security:

      • Security Provider: Lassen Sie das Feld leer.
      • User Name: Geben Sie den Snowflake-Benutzernamen ein, der in Schritt 1 erstellt wurde.
      • Password: Lassen Sie das Feld leer.
    • Description: (Optional) Geben Sie eine Beschreibung für diesen Datenserver ein.

  4. Klicken Sie auf die Schaltfläche Save.

  5. Klicken Sie im Bereich Server Settings auf die Schaltfläche Advanced Settings. Das Popup Server (Advanced Settings) wird geöffnet.
  6. Klicken Sie auf die Schaltfläche Edit.
  7. Geben Sie im Feld Advanced die folgende Verbindungszeichenfolge ein, und ersetzen Sie {path_to_private_key_file} durch den absoluten Pfad zur .p8-Privatschlüsseldatei auf dem App Builder-Server:

    AuthScheme=PrivateKey;PrivateKeyType=PEMKEY_FILE;PrivateKey={path_to_private_key_file}
    
  8. Klicken Sie auf die Schaltfläche Save und schließen Sie dann die Popups Server (Advanced Settings) und Server.

Sie können den Datenserver jetzt in Ihren Apps verwenden.

Fehlerbehebung

Wenn Sie Probleme mit Snowflake haben, werden die folgenden Schritte zur Fehlerbehebung empfohlen:

  1. Aktivieren Sie data logging, um Protokolldateien und Daten zu generieren, die Sie herunterladen und überprüfen können.

  2. Weitere Informationen finden Sie in der CData ADO.NET Provider for Snowflake documentation.