Approuver des connexions à des ressources externes à l’aide de spécifications d’application

Cette rubrique décrit comment les consommateurs peuvent utiliser les spécifications d’application pour approuver des connexions à des ressources externes pour une Snowflake Native App.

À propos des spécifications d’application

Les spécifications d’application permettent aux fournisseurs de spécifier les points de terminaison et les ressources externes (en dehors de Snowflake) dont une application a besoin. Les consommateurs peuvent voir les points de terminaison demandés par l’application et les approuver ou les refuser selon le cas.

Une fois qu’un consommateur a approuvé la spécification d’application, l’application dispose des autorisations nécessaires pour se connecter à ces points de terminaison. Les spécifications d’application permettent uniquement à un consommateur d’approuver les connexions à des ressources externes.

L’application peut également demander des privilèges pour créer des objets, y compris des intégrations d’accès externes. Pour plus d’informations, voir Autoriser une application à créer des ressources dans un compte de consommateur.

État d’une spécification d’application

Une spécification d’application dispose d’un état qui indique si un consommateur l’a approuvée ou refusée. Les états possibles sont :

  • PENDING Le consommateur n’a pas approuvé ni refusé la spécification d’application. Il s’agit de l’état par défaut.

  • APPROVED Le consommateur a approuvé la spécification d’application.

  • DECLINED Le consommateur a refusé la spécification d’application.

Pour plus d’informations sur la manière de déterminer l’état d’une spécification d’application, consultez Afficher les points de terminaison externes requis par l’application.

Numéros de séquence d’une spécification d’application

Les numéros de séquence sont utilisés pour identifier de manière unique une version de la spécification d’application. Les numéros de séquence sont automatiquement incrémentés lorsqu’un fournisseur modifie la définition de la spécification d’application. La définition d’une spécification d’application comprend la configuration et d’autres informations requises. Les champs qui ne font pas partie de la définition, comme description, ne déclenchent pas de mise à jour du numéro de séquence.

Les numéros de séquence permettent aux fournisseurs et aux consommateurs de connaître l’état actuel de la spécification d’application et les points de terminaison externes qui ont été activés.

Afficher les spécifications d’application d’une application

Pour voir les points de terminaison externes demandés par une application, les consommateurs peuvent utiliser la commande SHOW SPECIFICATIONS, comme indiqué dans l’exemple suivant :

SHOW SPECIFICATIONS IN APPLICATION hello_snowflake_app;
Copy

Cette commande répertorie des informations sur les spécifications d’application de l’application nommée hello_snowflake_app.

La colonne status indique si la spécification d’application a été approuvée ou refusée, ou si elle est toujours en attente. Pour plus d’informations, voir État d’une spécification d’application.

Afficher les points de terminaison externes requis par l’application

Pour voir les points de terminaison externes requis par l’application, les consommateurs peuvent voir les détails de la spécification d’application en utilisant les commandes DESCRIBE SPECIFICATION ou SHOW SPECIFICATIONS, comme indiqué dans les exemples suivants :

DESC SPECIFICATION my_app_specification IN APPLICATION hello_snowflake_app;
SHOW SPECIFICATIONS IN APPLICATION hello_snowflake_app;
Copy

Pour chaque numéro de séquence, cette commande affiche les propriétés de la spécification d’application et leurs valeurs.

Le champ definition contient une liste des ports d’hôtes externes que l’application demande. Voir Numéros de séquence d’une spécification d’application.

Approuver une spécification d’application à l’aide de l’Snowsight

En utilisant l’Snowsight, les consommateurs peuvent approuver ou refuser une spécification d’application.

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Data Products » Apps.

  3. Sélectionnez l’application.

  4. Sélectionnez l’icône Settings dans la barre d’outils.

  5. Sélectionnez Connections.

  6. À côté de la connexion que vous souhaitez approuver, développez Details.

    L’Snowsight affiche les intégrations d’accès externes, les règles de réseau et les points de terminaison demandés pour l’application.

  7. Approuvez ou refusez les points de terminaison demandés :

    • Pour approuver les points de terminaison, sélectionnez , puis sélectionnez Approve.

    • Pour refuser les points de terminaison, sélectionnez , puis sélectionnez Deny.

Approuver ou refuser une spécification d’application à l’aide de SQL

Les consommateurs peuvent approuver ou refuser une spécification d’application permettant à celle-ci de se connecter à des points de terminaison externes.

Privilèges requis pour approuver ou refuser une spécification d’application

Pour approuver ou refuser une spécification d’application, un utilisateur doit utiliser un rôle qui possède le privilège MANAGE APPLICATION SPECIFICATIONS. Ce privilège est accordé par défaut au rôle SECURITYADMIN. Les utilisateurs disposant du rôle SECURITYADMIN peuvent accorder ce privilège à d’autres rôles si nécessaire.

Note

Étant donné que l’approbation d’une spécification d’application permet à une application d’accéder à des points de terminaison en dehors de Snowflake, les consommateurs doivent utiliser un rôle qui possède le privilège MANAGE APPLICATION SPECIFICATIONS, tel que délégué par l’administrateur de sécurité du rôle du compte de consommateur. Être le propriétaire de l’application n’accorde pas les privilèges nécessaires.

Approuver une spécification d’application à l’aide de l’SQL

Pour approuver une spécification d’application, les consommateurs peuvent exécuter la commande ALTER APPLICATION, comme indiqué dans l’exemple suivant :

ALTER APPLICATION hello-snowflake-app APPROVE SPECIFICATION
  my-app-spec SEQUENCE_NUMBER = 2;
Copy

Cette commande approuve la spécification d’application nommée my-app-spec pour l’application nommée hello-snowflake-app.

Les consommateurs peuvent obtenir la valeur pour SEQUENCE_NUMBER en exécutant la commande DESCRIBE SPECIFICATION ou SHOW SPECIFICATIONS.

Refuser une spécification d’application à l’aide de SQL

Pour refuser une spécification d’application, les consommateurs peuvent exécuter la commande ALTER APPLICATION, comme indiqué dans l’exemple suivant :

ALTER APPLICATION hello-snowflake-app DECLINE SPECIFICATION
  my-app-spec SEQUENCE_NUMBER = 2;
Copy