Tutoriel : Configurer Snowflake pour l’approvisionnement automatique d’utilisateurs
Ce tutoriel présente les étapes à effectuer dans Snowflake et Microsoft Entra ID afin de configurer Microsoft Entra ID pour provisionner et déprovisionner automatiquement des utilisateurs et des groupes sur 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é)
Prérequis
Le scénario décrit dans ce tutoriel part du principe que vous disposez des prérequis suivants :
- Un locataire Microsoft Entra
- L’un des rôles suivants : Administrateur d’application, Administrateur d’application cloud ou Propriétaire d’application.
- Un locataire Snowflake
- Au moins un utilisateur dans Snowflake disposant du rôle ACCOUNTADMIN.
Étape 1 : Planifier votre déploiement de l’approvisionnement
- En savoir plus sur le fonctionnement du service d’approvisionnement.
- Déterminez qui sera dans l’étendue pour l’approvisionnement.
- 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.
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');
Utilisez le rôle ACCOUNTADMIN.
Créez le rôle personnalisé AAD_PROVISIONER. Tous les utilisateurs et rôles dans Snowflake créés par Microsoft Entra ID appartiendront au rôle à l’étendue réduite AAD_PROVISIONER.
Laissez le rôle ACCOUNTADMIN créer l’intégration de sécurité en utilisant le rôle personnalisé AAD_PROVISIONER.
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.
Étape 3 : Ajouter Snowflake à partir de la galerie d’applications Microsoft Entra
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 sera dans l’étendue pour l’approvisionnement
Le service de provisionnement Microsoft Entra vous permet de déterminer qui sera provisionné, en fonction de l’affectation à l’application ou en fonction des attributs de l’utilisateur ou du groupe. Si vous choisissez de définir l’étendue des utilisateurs qui seront provisionnés pour votre application en fonction de l’attribution, vous pouvez utiliser les étapes permettant d’affecter des utilisateurs et des groupes à l’application. Si vous choisissez de définir l’étendue des utilisateurs qui seront provisionnés uniquement en fonction des attributs de l’utilisateur ou du groupe, vous pouvez utiliser un filtre d’étendue.
Gardez à l’esprit les conseils suivants :
Quand vous attribuez des utilisateurs et des groupes à Snowflake, vous devez sélectionner un rôle autre que le rôle Accès par défaut. Les utilisateurs disposant du rôle Accès par défaut sont exclus de l’approvisionnement et sont marqués comme non autorisés dans les journaux de configuration. Si le seul rôle disponible sur l’application est le rôle Accès par défaut, vous pouvez mettre à jour le manifeste de l’application pour ajouter plus de rôles.
Si vous avez besoin de rôles supplémentaires, vous pouvez mettre à jour le manifeste d’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 :
Connectez-vous au Centre d’administration de Microsoft Entra au minimum en tant qu’Administrateur d’application cloud.
Accédez à Identité>Applications>Applications d’entreprise.
Dans la liste des applications, sélectionnez Snowflake.
Sélectionnez l’onglet Approvisionnement.
Définissez le Mode d’approvisionnement sur Automatique.
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.
Notes
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 estacme
et si ce compte Snowflake se trouve dans la région Azureeast-us-2
, la valeur de l’URL de locataire esthttps://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.
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 de provisionnement. Cochez ensuite la case Envoyer une notification par e-mail en cas de défaillance.
Sélectionnez Enregistrer.
Dans la section Mappages, sélectionnez Synchroniser les utilisateurs Microsoft Entra avec Snowflake.
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. Cliquez sur le bouton Enregistrer pour valider les modifications.
Attribut Type active Boolean displayName String emails[type eq "work"].value String userName String name.givenName String name.familyName String externalId String Notes
Attributs utilisateur d’extension personnalisée pris en charge par Snowflake durant le provisionnement SCIM :
- DEFAULT_ROLE
- DEFAULT_WAREHOUSE
- DEFAULT_SECONDARY_ROLES
- 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.
Dans la section Mappages, sélectionnez Synchroniser les groupes Microsoft Entra avec Snowflake.
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. Cliquez sur le bouton Enregistrer pour valider les modifications.
Attribut Type displayName String membres Informations de référence Pour configurer des filtres d’étendue, consultez les instructions fournies dans le tutoriel sur les filtres d’étendue.
Pour activer le service de provisionnement Microsoft Entra pour Snowflake, modifiez État du provisionnement sur Activé dans la section Paramètres.
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 nécessaires sous Informations d’identification de l’administrateur, sélectionnez Enregistrer, puis actualisez la page.
Quand vous êtes prêt à effectuer l’approvisionnement, sélectionnez Enregistrer.
Cette opération démarre la synchronisation initiale de tous les utilisateurs et groupes définis dans É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
Après avoir configuré l’approvisionnement, utilisez les ressources suivantes pour superviser votre déploiement :
- Utilisez les journaux d’approvisionnement pour déterminer quels utilisateurs ont été configurés avec succès ou ceux pour laquelle la procédure a échoué.
- Consultez la barre de progression pour afficher l’état d’avancement du cycle d’approvisionnement et le moment où il se terminera.
- Si la configuration de l’approvisionnement semble se trouver dans un état non sain, l’application passe en quarantaine. En savoir plus sur les états de quarantaine.
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
- Gestion de l’approvisionnement de comptes d’utilisateur pour les applications d’entreprise
- Qu’est-ce que l’accès aux applications et l’authentification unique avec Microsoft Entra ID ?