Partager via


Configurer Snowflake pour l’approvisionnement automatique d’utilisateurs avec l’ID Microsoft Entra

Cet article montre les étapes que vous effectuez dans Snowflake et l’ID Microsoft Entra pour configurer l’ID Microsoft Entra pour approvisionner et déprovisionner automatiquement les utilisateurs et les groupes dans Snowflake. Pour découvrir des détails importants sur ce que fait ce service, son fonctionnement et les questions fréquemment posées, consultez Qu’est-ce que le provisionnement automatique des utilisateurs d’applications SaaS dans Microsoft Entra ID ?.

Fonctionnalités prises en charge

  • Créer des utilisateurs dans Snowflake
  • Supprimer des utilisateurs dans Snowflake quand ils ne nécessitent plus d’accès
  • Maintenir la synchronisation des attributs utilisateur entre Microsoft Entra ID et Snowflake
  • Provisionner des groupes et des appartenances aux groupes dans Snowflake
  • Autoriser l’authentification unique auprès de Snowflake (recommandé)

Conditions préalables

Le scénario décrit dans cet article suppose que vous disposez déjà des conditions préalables suivantes :

Étape 1 : Planifier votre déploiement d’approvisionnement

  1. Découvrez comment fonctionne le service d’approvisionnement.
  2. Déterminez qui est concerné par la mise en service.
  3. Déterminez les données à mapper entre Microsoft Entra ID et Snowflake.

Étape 2 : Configurer Snowflake pour prendre en charge le provisionnement avec Microsoft Entra ID

Avant de configurer Snowflake pour le provisionnement automatique d’utilisateurs avec Microsoft Entra ID, vous devez activer le provisionnement SCIM (System for Cross-domain Identity Management) dans Snowflake.

  1. Connectez-vous à Snowflake en tant qu’administrateur et exécutez ce qui suit à partir de l’interface de feuille de calcul Snowflake ou de SnowSQL.

    use role accountadmin;
    
     create role if not exists aad_provisioner;
     grant create user on account to role aad_provisioner;
     grant create role on account to role aad_provisioner;
    grant role aad_provisioner to role accountadmin;
     create or replace security integration aad_provisioning
         type = scim
         scim_client = 'azure'
         run_as_role = 'AAD_PROVISIONER';
     select system$generate_scim_access_token('AAD_PROVISIONING');
    
  2. Utilisez le rôle ACCOUNTADMIN.

    Capture d’écran d’une feuille de calcul dans l’interface utilisateur Snowflake avec le jeton d’accès SCIM mis en évidence.

  3. Créez le rôle personnalisé AAD_PROVISIONER. Tous les utilisateurs et rôles de Snowflake créés par l'identifiant Microsoft Entra appartiennent au rôle AAD_PROVISIONER restreint.

    Capture d’écran montrant le rôle personnalisé.

  4. Laissez le rôle ACCOUNTADMIN créer l’intégration de sécurité en utilisant le rôle personnalisé AAD_PROVISIONER.

    Capture d’écran montrant les intégrations de sécurité.

  5. Créez et copiez le jeton d’autorisation dans le Presse-papiers et stockez-le de manière sécurisée pour une utilisation ultérieure. Utilisez ce jeton pour chaque demande d’API REST SCIM et placez-le dans l’en-tête de demande. Le jeton d’accès expire après six mois et un nouveau jeton d’accès peut être généré avec cette instruction.

    Capture d’écran montrant la génération de jetons.

Ajoutez Snowflake à partir de la galerie d’applications Microsoft Entra pour gérer le provisionnement dans Snowflake. Si vous avez déjà configuré Snowflake pour l’authentification unique (SSO), vous pouvez utiliser la même application. Toutefois, nous vous recommandons de créer une application distincte quand vous testez initialement l’intégration. En savoir plus sur l’ajout d’une application à partir de la galerie.

Étape 4 : Définir qui est concerné par le provisionnement

Le service d’approvisionnement Microsoft Entra vous permet d’étendre l’étendue qui est approvisionnée en fonction de l’affectation à l’application, ou en fonction des attributs de l’utilisateur ou du groupe. Si vous choisissez de définir qui peut accéder à votre application selon l'affectation, vous pouvez utiliser les étapes permettant d’affecter des utilisateurs et des groupes à l’application. Si vous choisissez de définir le périmètre des utilisateurs ou groupes qui sont approvisionnés uniquement en fonction de leurs attributs, vous pouvez utiliser un filtre de périmètre.

  • Commencez petit. Testez avec un petit ensemble d’utilisateurs et de groupes avant de les déployer pour tout le monde. Lorsque l’étendue de l’approvisionnement est définie sur les utilisateurs et les groupes affectés, vous pouvez le contrôler en affectant un ou deux utilisateurs ou groupes à l’application. Lorsque l’étendue est définie sur tous les utilisateurs et groupes, vous pouvez spécifier un filtre d’étendue basé sur des attributs .

  • Si vous avez besoin de rôles supplémentaires, vous pouvez mettre à jour le manifeste de l’application pour ajouter de nouveaux rôles.

Étape 5 : Configurer l’approvisionnement automatique d’utilisateurs sur Snowflake

Cette section vous guide tout au long des étapes à suivre pour configurer le service de provisionnement Microsoft Entra afin de créer, de mettre à jour et de désactiver des utilisateurs et des groupes dans Snowflake. Vous pouvez baser la configuration sur des affectations d’utilisateurs et de groupes dans Microsoft Entra ID.

Pour configurer le provisionnement automatique d’utilisateurs pour Snowflake dans Microsoft Entra ID :

  1. Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.

  2. Accédez aux Entra ID>applications d'entreprise.

    Capture d’écran montrant le volet Applications d’entreprise.

  3. Dans la liste des applications, sélectionnez Snowflake.

    Capture d’écran montrant une liste d’applications.

  4. Sélectionnez l’onglet Approvisionnement.

    Capture d’écran des options Gérer, avec l’option Provisionnement mise en évidence.

  5. Définissez le mode d’approvisionnementsur Automatique.

    Capture d’écran de la liste déroulante Mode de provisionnement avec l’option Automatique en évidence.

  6. Dans la section Informations d’identification de l’administrateur, entrez les valeurs d’URL de base SCIM 2.0 et de jeton d’authentification que vous avez récupérées précédemment dans les zones URL de locataire et Jeton secret, respectivement.

    Remarque

    Le point de terminaison SCIM Snowflake se compose de l’URL de compte Snowflake suivie de /scim/v2/. Par exemple, si le nom de votre compte Snowflake est acme et si ce compte Snowflake se trouve dans la région Azure east-us-2, la valeur de l’URL de locataire est https://acme.east-us-2.azure.snowflakecomputing.com/scim/v2.

    Sélectionnez Tester la connexion pour vous assurer que Microsoft Entra ID peut se connecter à Snowflake. Si la connexion échoue, vérifiez que votre compte Snowflake dispose d’autorisations d’administrateur, puis réessayez.

    Capture d’écran montrant les zones de l’URL du locataire et du jeton secret, avec le bouton Tester la connexion.

  7. Dans la zone e-mail de notification , entrez l’adresse e-mail d’une personne ou d’un groupe qui doit recevoir les notifications d’erreur d’approvisionnement. Cochez ensuite la case Envoyer une notification par e-mail en cas de défaillance.

    Capture d’écran montrant la zone et la case à cocher pour l’e-mail de notification.

  8. Cliquez sur Enregistrer.

  9. Dans la section Mappages, sélectionnez Synchroniser les utilisateurs Microsoft Entra avec Snowflake.

  10. Passez en revue les attributs utilisateur synchronisés de Microsoft Entra ID vers Snowflake dans la section Mappage d’attributs. Les attributs sélectionnés en tant que propriétés de Correspondance sont utilisés pour faire correspondre les comptes d’utilisateur dans Snowflake pour les opérations de mise à jour. Sélectionnez le bouton Enregistrer pour valider les modifications.

    Caractéristique Catégorie
    Actif Booléen
    nom d’affichage Chaîne
    e-mails[type eq « travail »].value Chaîne
    nom d’utilisateur Chaîne
    nom_prénom Chaîne
    nom.de.famille Chaîne
    externalId Chaîne

    Remarque

    Attributs utilisateur d’extension personnalisée pris en charge par Snowflake durant le provisionnement SCIM :

    • rôle par défaut
    • ENTREPÔT_PAR_DÉFAUT
    • RÔLES_SECONDAIRES_PAR_DÉFAUT
    • LE NOM SNOWFLAKE ET LES CHAMPS LOGIN_NAME DOIVENT ÊTRE DIFFÉRENTS

    La configuration des attributs d’extension personnalisée Snowflake dans le provisionnement d’utilisateurs SCIM Microsoft Entra est expliquée ici.

  11. Dans la section Mappages, sélectionnez Synchroniser les groupes Microsoft Entra avec Snowflake.

  12. Passez en revue les attributs de groupe synchronisés de Microsoft Entra ID vers Snowflake dans la section Mappage d’attributs. Les attributs sélectionnés en tant que propriétés de Correspondance sont utilisés pour faire correspondre les groupes dans Snowflake pour les opérations de mise à jour. Sélectionnez le bouton Enregistrer pour valider les modifications.

    Caractéristique Catégorie
    nom d’affichage Chaîne
    membres Référence
  13. Pour configurer des filtres d’étendue, consultez les instructions de l’article sur le filtre d’étendue.

  14. Pour activer le service de provisionnement Microsoft Entra pour Snowflake, modifiez État du provisionnement sur Activé dans la section Paramètres.

    Capture d’écran montrant le paramètre État du provisionnement activé.

  15. Définissez les utilisateurs et les groupes que vous voulez provisionner sur Snowflake en choisissant les valeurs souhaitées dans Étendue dans la section Paramètres.

    Si cette option n’est pas disponible, configurez les champs requis sous Informations d’identification de l’administrateur, sélectionnez Enregistrer et actualisez la page.

    Capture d’écran montrant les choix disponibles pour l’étendue du provisionnement.

  16. Lorsque vous êtes prêt à provisionner, sélectionnez Enregistrer.

    Capture d’écran du bouton permettant d’enregistrer une configuration de provisionnement.

Cette opération démarre la synchronisation initiale de tous les utilisateurs et groupes définis dans l’étendue dans la section Paramètres . La synchronisation initiale prend plus de temps que les synchronisations ultérieures. Les synchronisations suivantes se produisent toutes les 40 minutes environ, tant que le service de provisionnement Microsoft Entra est en cours d’exécution.

Étape 6 : Surveiller votre déploiement

Une fois le provisionnement configuré, utilisez les ressources suivantes pour superviser votre déploiement :

  1. Utilisez les journaux d’approvisionnement pour déterminer quels utilisateurs sont provisionnés correctement ou sans succès
  2. Vérifiez la barre de progression pour voir l’état du cycle d’approvisionnement et à quel point il est proche de l’achèvement.
  3. Si la configuration d’approvisionnement semble être dans un état non sain, l’application passe en quarantaine. Pour en savoir plus sur les états de quarantaine, consultez l'article sur le statut de mise en quarantaine des applications.

Limitations du connecteur

Les jetons SCIM générés par Snowflake expirent au bout de 6 mois. N’oubliez pas que vous devez actualiser ces jetons avant leur expiration pour permettre aux synchronisations de provisionnement de continuer de fonctionner.

Conseils de dépannage

Le service de provisionnement Microsoft Entra fonctionne actuellement dans des plages IP spécifiques. Si nécessaire, vous pouvez restreindre d’autres plages d’adresses IP et ajouter ces plages d’adresses IP particulières à la liste verte de votre application. Cette technique autorisera le flux de trafic du service de provisionnement Microsoft Entra vers votre application.

Journal des modifications

  • 21/07/2020 : Activation de la suppression réversible pour tous les utilisateurs (via l’attribut actif).
  • 12/10/2022 : Configuration SCIM de Snowflake mise à jour.

Ressources supplémentaires