Openflow Connector for Salesforce Bulk API: Snowflake einrichten¶
Bemerkung
Dieser Connector unterliegt den `Nutzungsbedingungen für Snowflake Connector<https://www.snowflake.com/legal/snowflake-connector-terms/>`_.
Unter diesem Thema werden die Schritte zur Einrichtung von Snowflake für Openflow Connector for Salesforce Bulk API beschrieben.
Voraussetzungen¶
Bevor Sie beginnen, stellen Sie sicher, dass Sie die folgenden Aufgaben ausgeführt haben:
Installieren Sie Openflow (entweder BYOC oder SPCS). Weitere Informationen dazu finden Sie unter Über Openflow.
Erstellen Sie eine Openflow-Bereitstellung. Weitere Informationen dazu finden Sie unter Openflow - Snowflake Deployment einrichten: Bereitstellung erstellen oder Openflow einrichten – BYOC.
Erstellen Sie eine Openflow-Laufzeitumgebung. Weitere Informationen dazu finden Sie unter Openflow - Snowflake Deployment einrichten: Laufzeitumgebung erstellen oder Openflow einrichten – BYOC.
Überprüfen Sie die bekannten Beschränkungen des Vorschau-Konnektors in Allgemeine Informationen zum Openflow Connector for Salesforce Bulk API.
Erstellen Sie ein Schlüsselpaar.¶
Erstellen Sie ein Schlüsselpaar, das vom Benutzenden des Dienstkontos im Konnektor zur Interaktion mit der Datenbank verwendet wird.
Bemerkung
Dieser Schritt ist nur erforderlich, wenn Sie den Konnektor in Openflow BYOCbereitstellen. Er wird NOT benötigt, wenn der Konnektor in Openflow SPCS bereitgestellt wird.
Erzeugen Sie einen privaten Schlüssel. Das folgende Beispiel zeigt, wie Sie einen unverschlüsselten privaten Schlüssel generieren.
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8 -nocrypt
Der Inhalt der
rsa_key.p8-Datei sieht wie folgt aus:-----BEGIN PRIVATE KEY----- MIIE6T... -----END PRIVATE KEY-----
Erzeugen Sie den öffentlichen Schlüssel, indem Sie auf den privaten Schlüssel verweisen.
openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub
Der Inhalt der
rsa_key.pub-Datei sieht wie folgt aus:-----BEGIN PUBLIC KEY----- MIIBIjANBgkqh... -----END PUBLIC KEY-----
Kopieren Sie den Inhalt dieser Datei (ohne die Header
-----BEGIN PUBLIC KEY-----und-----END PUBLIC KEY-----), die beim Erstellen des Benutzenden im nächsten Abschnitt verwendet werden soll.
Objekte erstellen und Berechtigungen erteilen¶
Erstellen Sie ein Dienstkonto, eine Rolle, eine Datenbank, ein Schema und ein Warehouse für den Konnektor, und erteilen Sie die entsprechenden Berechtigungen.
Verwenden Sie eine Rolle mit
ACCOUNTADMIN-Berechtigungen zum Festlegen der Rolle:USE ROLE ACCOUNTADMIN;
Erstellen Sie die Snowflake-Zieldatenbank, wenn sie nicht existiert:
CREATE DATABASE IF NOT EXISTS <my_salesforce_db>;
Erstellen Sie das Zielschema in der Datenbank, wenn es nicht existiert:
CREATE SCHEMA IF NOT EXISTS <my_salesforce_db>.<my_salesforce_schema>;
Erstellen Sie die Rolle, die vom Openflow-Konnektor verwendet wird:
CREATE ROLE IF NOT EXISTS <Salesforce_connector_role_name>;
Erteilen Sie der Rolle die Berechtigungen zur Verwendung der Datenbank:
GRANT USAGE ON DATABASE <my_salesforce_db> TO ROLE <Salesforce_connector_role_name>; GRANT USAGE ON SCHEMA <my_salesforce_db>.<my_salesforce_schema> TO ROLE <Salesforce_connector_role_name>; GRANT CREATE TABLE ON SCHEMA <my_salesforce_db>.<my_salesforce_schema> TO ROLE <Salesforce_connector_role_name>;
Erstellen Sie ein Warehouse für den Konnektor (oder verwenden Sie ein vorhandenes), und erteilen Sie der Konnektorrolle Nutzungsberechtigungen:
-- Create a warehouse (skip if you wish to use an existing warehouse) CREATE OR REPLACE WAREHOUSE MY_WAREHOUSE WITH WAREHOUSE_SIZE = 'SMALL' AUTO_SUSPEND = 300 AUTO_RESUME = TRUE; GRANT USAGE, OPERATE ON WAREHOUSE MY_WAREHOUSE TO ROLE <Salesforce_connector_role_name>;
Erstellen Sie den Dienstbenutzenden, und weisen Sie die Rolle und den öffentlichen Schlüssel zu:
-- Create a service user that the connector will use to interact with Snowflake -- Set default role to <Salesforce_connector_role_name> -- Assign the public key generated with openssl in the previous step (only for BYOC) CREATE OR REPLACE USER <Salesforce_connector_user_name> TYPE = SERVICE DEFAULT_ROLE = <Salesforce_connector_role_name> RSA_PUBLIC_KEY = '<public_key_generated_by openssl_in_step_1>'; -- Grant the role to the user GRANT ROLE <Salesforce_connector_role_name> TO USER <Salesforce_connector_user_name>;
Netzwerkregel erstellen (nur Openflow Snowflake-Bereitstellung)¶
Wenn Sie den Konnektor in einer Laufzeitumgebung bereitstellen, die sich in einer Openflow Snowflake-Bereitstellung befindet, müssen Sie eine Netzwerkregel und eine Integration für den externen Zugriff erstellen und diese in der Laufzeitumgebung festlegen.
USE ROLE SECURITYADMIN;
CREATE NETWORK RULE MY_OPENFLOW_SALESFORCE_NETWORK_RULE
TYPE = HOST_PORT
MODE = EGRESS
VALUE_LIST = ('<salesforce_instance_host>:443');
CREATE EXTERNAL ACCESS INTEGRATION MY_OPENFLOW_SALESFORCE_EAI
ALLOWED_NETWORK_RULES = (MY_OPENFLOW_SALESFORCE_NETWORK_RULE)
ENABLED = TRUE
COMMENT = 'External Access Integration to connect to Salesforce';
GRANT USAGE ON INTEGRATION MY_OPENFLOW_SALESFORCE_EAI TO ROLE <openflow_role_name>;
Nächste Schritte¶
Konfigurieren Sie den Konnektor in Openflow:
Openflow Connector for Salesforce Bulk API: Konnektor konfigurieren