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:
Öffnen Sie eine Snowflake-Sitzung, normalerweise eine Snowflake-Weboberflächensitzung.
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 IDIhres Arbeitsblatts.Ersetzen Sie für
api_allowed_prefixesden 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 nameundAPI Management API URL suffixIhres 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 URLIhres 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