Schritt 3: API-Integration für GCP 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. Google Cloud API Gateway).
Vorheriger Schritt¶
Schritt 2: Proxydienst (Google Cloud API Gateway) über die Konsole erstellen
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 = google_api_gateway google_audience = '<google_audience_claim>' 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 für - google_audienceden Wert- <google_audience_claim>durch den Wert aus dem Feld- Managed Service Identifierdes Arbeitsblatts.- Während der Authentifizierung übergibt Snowflake ein JWT (JSON Web Token) an Google. Das JWT enthält einen „aud claim“ (Zielgruppenanspruch), den Snowflake auf den Wert des - google_audience-Feldes setzt.- Weitere Informationen zur Authentifizierung bei Google finden Sie in der Dokumentation zur Google-Dienstkonto-Authentifizierung. 
- Ersetzen Sie für - api_allowed_prefixesden Wert- <url>durch den Wert aus dem Feld- Gateway Base URLdes Arbeitsblatts.- Dieses Feld erlaubt es Ihnen, die URLs einzuschränken, auf die diese API-Integration angewendet werden kann. Sie können einen Wert verwenden, der restriktiver ist als die Gateway-Basis-URL. 
 
- Führen Sie die eingegebene CREATE API INTEGRATION-Anweisung aus. 
API_GCP_SERVICE_ACCOUNT-Information für die API-Integration erfassen¶
- Führen Sie den Befehl DESCRIBE INTEGRATION aus. Beispiel: - describe integration my_api_integration_name; 
- Notieren Sie sich den Wert für - API_GCP_SERVICE_ACCOUNTim Feld- API_GCP_SERVICE_ACCOUNTdes Arbeitsblatts.