Étape 3 : Créer l’intégration API pour AWS dans Snowflake

Cette rubrique fournit des instructions pour créer un objet d’intégration API dans Snowflake afin de travailler avec votre service proxy (c’est-à-dire une Amazon API Gateway). Les instructions sont les mêmes, que vous utilisiez la console de gestion ou le modèle CloudFormation.

Dans ce chapitre :

Conditions préalables

Vous avez besoin des informations suivantes pour créer l’intégration API pour AWS dans Snowflake :

  • Le New IAM Role ARN (de votre feuille de calcul de suivi).

  • Le Resource Invocation URL (de votre feuille de calcul de suivi).

Créer l’intégration d’objet API

  1. Ouvrez une session Snowflake, généralement une session d’interface Web Snowflake.

  2. Utilisez un rôle Snowflake avec des privilèges ACCOUNTADMIN ou le privilège CREATE INTEGRATION, par exemple :

    use role <has_accountadmin_privileges>;
    
    Copy
  3. Tapez la commande CREATE API INTEGRATION pour créer une intégration API. La commande doit ressembler à ce qui suit :

    CREATE OR REPLACE API INTEGRATION my_api_integration_01
      api_provider = aws_api_gateway
      api_aws_role_arn = '<new_IAM_role_ARN>'
      api_allowed_prefixes = ('https://')
      enabled = true;
    
    Copy

    Personnalisez la commande :

    • La clause api_provider doit être définie en fonction du type de point de terminaison :

      • Si vous utilisez un point de terminaison privé, la clause api_provider doit être définie sur aws_private_api_gateway.

      • Si vous utilisez un point de terminaison GovCloud du gouvernement américain, la clause api_provider doit être définie sur aws_gov_private_api_gateway ou aws_gov_api_gateway.

      • Pour la plupart des autres utilisateurs, la clause api_provider doit être définie sur aws_api_gateway.

    • Le <nouveau_ARN_de_rôle_IAM> doit être la valeur du champ New IAM Role ARN dans la feuille de calcul de suivi.

    • Le champ api_allowed_prefixes doit contenir l’URL de l’appel de ressource que vous avez enregistrée précédemment.

    Voici un exemple d’une instruction CREATE API INTEGRATION complète :

    create or replace api integration demonstration_external_api_integration_01
        api_provider=aws_api_gateway
        api_aws_role_arn='arn:aws:iam::123456789012:role/my_cloud_account_role'
        api_allowed_prefixes=('https://xyz.execute-api.us-west-2.amazonaws.com/production/')
        enabled=true;
    
    Copy
  4. Dans le champ de la feuille de calcul de suivi intitulé API Integration Name, enregistrez le nom de l’intégration API que vous avez créée. Vous aurez besoin du nom de l’intégration API lorsque vous exécuterez la commande CREATE EXTERNAL FUNCTION ultérieurement.

  5. Exécutez la commande CREATE API INTEGRATION que vous avez tapée ci-dessus.

Enregistrez les API_AWS_IAM_USER_ARN et API_AWS_EXTERNAL_ID.

  1. Exécutez la commande DESCRIBE INTEGRATION.

    DESCRIBE INTEGRATION <my_integration_name>;
    
    Copy

    Par exemple :

    DESCRIBE INTEGRATION my_api_integration_01;
    
    Copy
  2. Recherchez la propriété nommée API_AWS_IAM_USER_ARN puis enregistrez la property_value de cette propriété dans la feuille de calcul de suivi.

  3. Trouvez la propriété nommée API_AWS_EXTERNAL_ID puis enregistrez la property_value de cette propriété dans la feuille de calcul de suivi.

    Notez que la property_value de API_AWS_EXTERNAL_ID se termine souvent par un signe égal (« = »). Ce signe égal fait partie de la valeur ; assurez-vous de le couper et de le coller avec le reste de la property_value.

Pour les étapes suivantes, vous retournez à votre fenêtre d’administration AWS. Ne fermez pas votre fenêtre d’administration Snowflake maintenant ; vous devez y revenir plus tard.