Schritt 3: API-Integration für Azure in Snowflake erstellen¶
Unter diesem Thema finden Sie eine Anleitung zum Erstellen eines API-Integrationsobjekts in Snowflake für die Verwendung mit Ihrem Proxydienst (d. h. Azure API Management-Dienst). Die Anweisungen sind dieselben, unabhängig davon, ob Sie das Azure-Portal oder die ARM-Vorlage verwenden.
Unter diesem Thema:
Vorheriger Schritt¶
Erforderliche Informationen¶
Sie benötigen die folgenden Informationen, um die API-Integration für Azure in Snowflake zu erstellen:
Azure Function App AD Application ID
(von Ihrem Arbeitsblatt)Azure AD-Mandanten-ID (wie im Abschnitt Voraussetzungen zur Planung einer externen Funktion beschrieben)
API-Integrationsobjekt erstellen¶
Verwenden Sie den Befehl CREATE API INTEGRATION, um das API-Integrationsobjekt zu erstellen:
Open a Snowflake session, typically a Snowflake web interface session.
Führen Sie den Befehl USE ROLE aus, um die Rolle ACCOUNTADMIN oder eine Rolle mit der CREATE INTEGRATION-Berechtigung zu verwenden. Beispiel:
use role has_accountadmin_privileges;
Geben Sie eine CREATE API INTEGRATION-Anweisung ein. Diese Anweisung sollte ungefähr wir folgt aussehen:
create or replace api integration <integration_name> api_provider = azure_api_management azure_tenant_id = '<tenant_id>' azure_ad_application_id = '<azure_application_id>' api_allowed_prefixes = ('<url>') enabled = true;
In der Anweisung:
Ersetzen Sie den
<integration_name>
durch einen eindeutigen Integrationsnamen (z. B.my_api_integration_name
). Der Name muss den Snowflake-Regeln für Objektbezeichner folgen.Notieren Sie sich außerdem den Integrationsnamen auf dem Arbeitsblatt unter
API Integration Name
. Sie benötigen den Namen, wenn Sie später im Erstellungsprozess den Befehl CREATE EXTERNAL FUNCTION ausführen.Ersetzen Sie
<tenant_id>
durch Ihren Azure AD-Mandanten-ID.Als Alternative können Sie Ihre Domäne verwenden (z. B.
my_company.onmicrosoft.com
).Ersetzen Sie die
<Azure_Application_ID>
durch den Wert aus dem FeldAzure Function App AD Application ID
Ihres Arbeitsblatts.Ersetzen Sie für
api_allowed_prefixes
den Wert für<url>
durch die entsprechende URL.Normalerweise ist dies die URL des Proxydienstes (d. h. Azure API Management-Dienst) im folgenden Format:
https://<api_management_service_name>.azure-api.net
Sie können jedoch die URLs einschränken, auf die diese API-Integration angewendet werden kann, indem Sie ein entsprechendes Suffix anhängen. In diesem Fall hat die URL das folgende Format:
https://<api_management_service_name>.azure-api.net/<api_url_suffix>
Die URL, die Sie eingeben, hängt davon ab, ob Sie zum Erstellen Ihrer externen Funktion das Azure-Portal oder die ARM-Vorlage verwenden:
- Azure-Portal:
Verwenden Sie die Werte aus den Feldern
API Management service name
undAPI Management API URL suffix
Ihres Arbeitsblatts. Ihre URL sollte ungefähr wir folgt aussehen:https://my-api-management-svc.azure-api.net/my-api-url-suffix
Dies sollte mit der Basis-URL und dem Suffix auf der Registerkarte Settings Ihres API Management-Dienstes in Ihrer importierten API übereinstimmen. Sie können den Wert aber auch aus der Registerkarte kopieren.
- ARM-Vorlage:
Verwenden Sie den Wert aus dem Feld
API Management URL
Ihres Arbeitsblatts.
Führen Sie die eingegebene CREATE API INTEGRATION-Anweisung aus.
Nächster Schritt¶
Schritt 4: API-Integration für Azure mit dem Proxydienst im Portal verknüpfen