Création d’un paquet d’application

Cette rubrique décrit comment créer et gérer un paquet d’application avec le Snowflake Native App Framework.

À propos des paquets d’application

Un paquet d’application est un conteneur qui encapsule le contenu des données, la logique d’application, les métadonnées et le script d’installation requis par une application. Un paquet d’application contient également des informations sur les versions et les niveaux de correctifs définis pour l’application.

Création d’un paquet d’application

Le Snowflake Native App Framework permet de créer un paquet d’application à l’aide de Snowsight. Vous pouvez également créer une application à l’aide de commandes SQL.

Privilèges requis pour créer un paquet d’application

Pour créer un paquet d’application, vous devez disposer du privilège global CREATE APPLICATION PACKAGE accordé à votre rôle.

Chargement en zone de préparation nommée du fichier manifeste et du script d’installation

Avant de créer un paquet d’application, vous devez créer le fichier manifeste et le script d’installation, puis les charger vers une zone de préparation nommée accessible par votre compte.

Il existe deux façons de charger des fichiers dans une zone de préparation nommée :

Création d’un paquet d’application à l’aide de Snowsight

Pour créer un paquet d’application à l’aide de Snowsight, procédez comme suit :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » App Packages.

  3. Sélectionnez Create » App Package.

  4. Saisissez un nom pour votre paquet d’application.

  5. Sélectionnez le consommateur pour qui le paquet d’application est prévu :

    • Sélectionnez Consumers outside of your organization pour que le paquet d’application soit disponible en dehors de votre organisation. La sélection de cette option déclenche une analyse de sécurité automatisée pour chaque version et chaque correctif définis dans votre paquet d’application.

    • Sélectionnez Consumers within your organization pour mettre le paquet d’application à la disposition de votre organisation. L’analyse de sécurité automatisée n’est pas lancée.

  6. Vous pouvez, si vous le souhaitez, laisser des commentaires pour un paquet d’application. Ces commentaires ne sont pas visibles pour le consommateur.

  7. Sélectionnez Create.

Création d’un paquet d’application à l’aide de commandes SQL

Pour créer un paquet d’application avec SQL, utilisez la commande CREATE APPLICATION PACKAGE comme indiqué dans l’exemple suivant :

CREATE APPLICATION PACKAGE HelloSnowflakePackage;
Copy

Après avoir créé un paquet d’application, utilisez la commande SHOW APPLICATION PACKAGES pour voir la liste des paquets d’applications disponibles.

Attribution de privilèges sur un paquet d’application

Certaines tâches liées au développement d’un paquet d’application dont vous avez besoin ont des privilèges spécifiques définis sur le paquet d’application. Le tableau suivant décrit les privilèges nécessaires à l’exécution de ces tâches :

Privilège

Tâche

ATTACH LISTING

Ajouter un paquet d’application à une annonce.

DEVELOP

Créer une objet APPLICATION en mode développement à partir du paquet d’application.

INSTALL

Créer un objet APPLICATION basé sur le paquet d’application.

MANAGE RELEASES

Spécifier une directive de version, voir la version et le niveau de correctif.

MANAGE VERSIONS

Ajouter une version et un niveau de correctif à un paquet d’application.

OWNERSHIP

Effectuer toutes les tâches ci-dessus.

Attribution de privilèges sur un paquet d’application à l’aide de Snowsight

Pour définir les privilèges d’un paquet d’application à l’aide de Snowsight, procédez comme suit :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » App Packages.

  3. Sélectionnez le paquet d’application, puis l’onglet Settings.

  4. Dans la section Privileges sélectionnez l’icône de modification en regard du privilège que vous souhaitez accorder.

  5. Sélectionnez Add Role, puis le rôle auquel vous souhaitez accorder le privilège.

  6. Sélectionnez Save.

Le rôle apparaît à côté du privilège.

Définition des privilèges sur un paquet d’application à l’aide des commandes SQL

Pour attribuer un privilège sur le paquet d’application à un rôle à l’aide de SQL, utilisez la commande GRANT <privilèges> comme indiqué dans l’exemple suivant :

GRANT MANAGE RELEASES ON APPLICATION PACKAGE HelloSnowflakePackage TO ROLE app_release_mgr;
Copy

La commande attribue le privilège MANAGE RELEASES au rôle app_release_mgr. Vous pouvez utiliser la même commande pour accorder les autres privilèges disponibles sur un paquet d’application.

Transfert de propriété d’un paquet d’application

Après avoir créé un paquet d’application, vous pouvez en transférer la propriété à un autre rôle de niveau compte.

Transfert de propriété à l’aide de Snowsight

Pour transférer la propriété d’un paquet d’application à l’aide de Snowsight, procédez comme suit :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » App Packages.

  3. Sélectionnez à côté du paquet d’application que vous souhaitez supprimer, puis sélectionnez Transfer Ownership.

  4. Sous Transfer to, sélectionnez le nouveau rôle au niveau du compte.

  5. Sélectionnez Transfer.

Transfert de propriété à l’aide de commandes SQL

Pour transférer la propriété d’un paquet d’application à un autre rôle au niveau du compte à l’aide de SQL, utilisez la commande GRANT OWNERSHIP comme indiqué dans l’exemple suivant :

GRANT OWNERSHIP ON APPLICATION HelloSnowflakePackage TO ROLE native_app_dev;
Copy

Suppression d’un paquet d’application de votre compte

Les utilisateurs disposant du privilège OWNERSHIP sur un paquet d’application peuvent le supprimer d’un compte. Toutefois, vous ne pouvez pas supprimer un paquet d’application qui est actuellement associé à une annonce.

Après avoir supprimé un paquet d’application, celui-ci n’est plus disponible dans le compte fournisseur.

Note

Après avoir supprimé une annonce et le paquet d’application qui y était associé, le consommateur peut voir l”Snowflake Native App créée à partir du paquet d’application, mais il n’y a pas accès. Si un consommateur tente d’accéder à l”Snowflake Native App, il reçoit une erreur indiquant que le paquet d’applications a été supprimé.

Suppression d’un paquet d’application à l’aide de Snowsight

Pour supprimer un paquet d’application à l’aide de Snowsight, procédez comme suit :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » App Packages.

  3. Sélectionnez à côté du paquet d’application que vous souhaitez supprimer, puis sélectionnez Drop.

Suppression d’un paquet d’application à l’aide de commandes SQL

Pour supprimer un paquet d’application à l’aide de SQL, exécutez la commande DROP APPLICATION PACKAGE comme indiqué dans l’exemple suivant :

DROP APPLICATION PACKAGE HelloSnowflakePackage;
Copy