Synchronisation Azure Active Directory

Aperçu

Cette section contient les instructions sur la configuration du connecteur de synchronisation Azure Active Directory (AD) de WorkflowGen, qui s'appuie sur les fonctionnalités d'approvisionnement des utilisateurs d'Azure AD. Les utilisateurs et les groupes seront automatiquement mis à jour (envoyés vers WorkflowGen) par Azure (toutes les 20 à 40 minutes) en utilisant le protocole SCIM v2. Les mots de passe des utilisateurs Azure ne seront pas synchronisés. Seulement un annuaire WorkflowGen peut être synchronisé par Azure.

Dans les instructions, remplacez <workflowgen url> par le domaine et le chemin de votre instance de WorkflowGen; par exemple, localhost/wfgen ou www.macompagnie.com/wfgen.

Note : Si vous utilisez l'approvisionnement des utilisateurs Azure AD SCIM, vous devez désactiver le service de synchronisation de répertoires de WorkflowGen si le service a déjà été installé et démarré.

Prérequis

  • Assurez-vous d'avoir une instance de WorkflowGen en fonctionnement dans un réseau accessible par Azure AD avec les ports HTTPS ou HTTP ouverts.

  • Assurez-vous de connaître l'adresse de l'instance.

  • Assurez-vous d'avoir exécuté un npm install --production dans le dossier scim.

  • Assurez-vous que l'instance de WorkflowGen est opérationnelle.

  • Une licence Azure Premium P2 doit être activée dans le client Azure Active Directory.

Configuration de WorkflowGen

Cette section contient les instructions sur la définition d'un nouveau annuaire qui sera utilisé par Azure AD pour la synchronisation des utilisateurs et des groupes. Si vous avez satisfait les prérequis ci-dessus, vous pouvez procéder à la configuration de WorkflowGen pour recevoir les informations d'Azure AD.

Créez et configurez un annuaire Azure AD SCIM v2

  1. Dans le module d'administration de WorkflowGen (https://<workflowgen url>/admin), cliquez sur Annuaires, puis cliquez sur Nouvel annuaire dans l'écran Annuaires.

  2. Saisissez un nom et une description pour l'annuaire.

    Important : Ne cochez pas l'option Mot de passe des utilisateurs, car l'authentification sera gérée par Azure AD.

  3. Choisissez Azure AD SCIM v2 depuis la liste déroulante Connecteur d'annuaire.

    Note : Vous pouvez avoir un seul annuaire SCIM par instance de WorkflowGen.

  4. Copiez le jeton généré, parce que vous en aurez besoin pour la configuration de Azure AD.

  5. Cliquez Enregistrer pour créer l'annuaire.

Configuration d'Azure Active Directory

Cette section contient les étapes pour la configuration d'une application d'entreprise typique avec Azure AD pour approvisionner votre instance de WorkflowGen avec des utilisateurs et des groupes.

Note sur les instances de WorkflowGen existantes

Si vous avez déjà synchronisé une instance de WorkflowGen avec une application d'entreprise dans Azure AD, ne réutilisez pas cette application d'entreprise avec une autre instance de WorkflowGen. Au lieu, créez une nouvelle application d'entreprise pour chaque instance vous voulez synchroniser.

Étape 1 : Créez une nouvelle application d'entreprise

Pour approvisionner WorkflowGen, vous devez l'inscrire dans le portail Azure AD en ajoutant une nouvelle application d'entreprise. Pour ce faire :

  1. Dans le panneau Azure Active Directory dans votre portail Microsoft Azure, cliquez sur Enterprise applications, puis cliquez New application.

  2. Dans le panneau Add an application, cliquez sur Non-gallery application.

  3. Saisissez le nom de l'application. Généralement, il vous faudra un nom comme WorkflowGen SCIM v2 afin de l'identifier facilement.

  4. Cliquez sur Add.

Vous pouvez maintenant passer à la configuration de l'application pour approvisionner WorkflowGen.

Étape 2 : Configurez l'application Azure AD

Établissez une connexion entre WorkflowGen et Azure AD

Cliquez sur Provisioning sur la page de l'application. Toute la configuration restante sera faite ici.

Pour configurer la connexion entre WorkflowGen et Azure AD:

  1. Choisissez le mode d'approvisionnement Automatic.

  2. Pour le Tenant URL, ajoutez votre adresse WorkflowGen (p.ex. : https://<workflowgen url>/wfgen/scim).

    Note : Si votre domaine de base pointe déjà vers l'instance de WorkflowGen, n'incluez pas wfgen dans l'adresse.

  3. Dans le champ Secret token, collez le jeton que vous avez généré antérieurement lorsque vous avez créé le nouvel annuaire SCIM.

  4. Cliquez sur Test Connection et attendez les résultats. Si tout est bien, vous recevrez une notification ainsi que des options supplémentaires.

Configurez l'approvisionnement

Deux nouvelles sections devraient maintenant être disponibles : Mapping et Settings. Vous devez changer quelques correspondances (« mappings ») pour égaler les données correspondantes dans WorkflowGen, et pour réduire la possibilité d'erreurs.

Groupes

Cliquez l'option qui contient Groups pour changer la correspondance des groupes. Ensuite, dans la nouvelle page, naviguez à la section Attribute Mappings et conservez seulement les correspondances externalId, displayName et member réglées à customappsso. Vous devez aussi changer la correspondance de externalId en objectID d'Azure AD. Ceci empêchera deux groupes différents d'être approvisionnés avec la même correspondance externalId. Cet attribut doit être unique.

Le tableau ci-dessous liste les correspondances par défaut des groupes :

Groupe Azure AD

urn:ietf:params:scim:schemas: core:2.0:Group

Groupe WorkflowGen

displayName

externalId

systemIdentifier

mail

emails[type eq "work"].value

Aucune correspondance

mailNickname

displayName

name

members

members

users

objectId

id

Aucune correspondance

proxyAddresses

emails[type eq "other"].Value

Aucune correspondance

Lorsque toutes les correspondances des groupes sont réglées, cliquez sur Save.

Utilisateurs

Vous devez aussi modifier les correspondances des utilisateurs. Pour ce faire, retournez aux options d'approvisionnement pour l'application de l'entreprise, puis cliquez le bouton pour les correspondances des utilisateurs dans la section Mappings. Dans la section Attribute Mappings dans la nouvelle page, vous devez changer seulement la correspondance de externalId en objectId d'Azure.

Le tableau ci-dessous liste les correspondances par défaut des utilisateurs :

Utilisateur Azure AD

urn:ietf:params:scim:schemas: extension:enterprise:2.0:User

Utilisateur WorkflowGen

IsSoftDeleted

active

isActive

displayName

displayName

commonName

Facsimile-TelephoneNumber

phoneNumbers[type eq "fax"].value

fax

givenName

name.givenName

firstName

jobTitle

title

jobTitle

mail

emails[type eq "work"].value

email

mailNickname

externalId

systemIdentifier

manager

manager

manager

mobile

phoneNumbers[type eq "mobile"].value

mobile

objectId

id

Aucune correspondance

postalCode

addresses[type eq "work"].postalCode

postalCode

proxy-Addresses

emails[type eq "other"].Value

Aucune correspondance

physical-Delivery-OfficeName

addresses[type eq "other"].Formatted

office

streetAddress

addresses[type eq "work"].streetAddress

postalAddress

surname

name.familyName

lastName

telephone-Number

phoneNumbers[type eq "work"].value

phone

user-PrincipalName

userName

userName

Lorsque toutes les correspondances des utilisateurs sont réglées, cliquez sur Save.

Étape 3 : Lancez la synchronisation

Vous êtes maintenant prêt à lancer la synchronisation des utilisateurs et des groupes avec votre instance de WorkflowGen. Pour ce faire, naviguer à la section Settings dans la page d'approvisionnement de votre application d'entreprise.

Si vous voulez synchroniser seulement un sous-ensemble de vos utilisateurs et vos groupes Azure AD, sélectionnez l'option pour synchroniser les utilisateurs et les groupes affectés, ensuite affectez-les manuellement à cette application dans l'annuaire. Pour ce faire, naviguez à la section Users and groups de l'application et ajoutez vos utilisateurs manuellement.

Vous pouvez aussi configurer l'application pour synchroniser tous les utilisateurs et les groupes de votre répertoire. Encore, sélectionnez la portée correcte.

Lorsque vous êtes prêt, réglez le status de l'approvisionnement à On, puis cliquez sur Save.

Vous avez maintenant complété la configuration de l'approvisionnement des utilisateurs et des groups de Azure AD à WorkflowGen en utilisant le protocole SCIM v2. Vous pouvez vérifier l'approvisionnement dans les logs de synchronisation dans le module d'administration de WorkflowGen, ou bien dans les fichiers de log créés par l'API SCIM de WorkflowGen, qui sont situés dans le répertoire APP_DATA de WorkflowGen.

Migration d'Active Directory classique vers Azure Active Directory

Si vous avez déjà une synchronisation avec un Active Directory classique, cette section contient les instructions sur comment migrer vos utilisateurs WorkflowGen vers votre nouvel Azure AD sans devoir les supprimer et récréer.

À propos de l'approvisionnement Azure Active Directory

Tout d'abord, il est important de comprendre comment Azure AD synchronise votre annuaire via le connecteur SCIM avant de procéder à une migration. Dans ce guide, nous avons changé les correspondances par défaut entre les propriétés d'objet Azure AD et les propriétés SCIM. Une de ces propriétés est externalId, qui représente un identifiant unique depuis un système externe, donc elle doit être opaque pour WorkflowGen. Vous avez changé cette correspondance de displayName dans Azure AD en objectId. Dans WorkflowGen, externalId correspond à la propriété systemIdentifier d'un utilisateur, donc la valeur objectId de Azure AD est approvisionnée dans la valeur systemIdentifier dans WorkflowGen.

Deuxièmement, Azure AD commence la synchronisation en interrogeant le connecteur SCIM pour trouver les utilisateurs existants. D'abord, il envoie des requêtes GET avec ses valeurs objectId. Puisque WorkflowGen n'a pas de Id qui correspond à objectId d'Azure, il retournera toujours une erreur 404 NOT FOUND. Ensuite, il envoie des requêtes GET mais avec un filtre sur externalId; cette fois, il trouve les utilisateurs dans WorkflowGen si leurs systemIdentifier correspondent à un objectId d'un utilisateur dans Azure AD.

Comment migrer les utilisateurs et les groupes à Azure Active Directory

  1. Désactivez le connecteur d'Active Directory classique.

  2. Créez un nouveau connecteur d'annuaire Azure SCIM v2.

  3. Déplacez les utilisateurs et les groupes déjà dans Azure AD depuis d'autres annuaires WorkflowGen existants à l'annuaire SCIM.

  4. Créez un script qui mettra à jour les utilisateurs et les groupes dans l'annuaire SCIM avec leurs propriétés systemIdentifier réglés pour égaler leurs propriétés objectId Azure AD correspondantes.

L'exemple ci-dessous inclut un algorithme qui associe les utilisateurs et les groupes à Azure AD :

groups = fetch_groups_from_azure()
for group in groups:
for user in group.users:
wfgUser = fetch_wfg_user_with_key(user.something)
wfgUser.systemIdentifier = user.objectId
update(wfgUser)
wfgGroup = fetch_wfg_group_with_key(group.something)
wfgGroup.systemIdentifier = group.objectId
update(wfgGroup)

L'exemple ci-dessous inclut un algorithme qui associe seulement les utilisateurs à Azure AD :

users = fetch_users_from_azure()
for user in users:
wfgUser = fetch_wfg_user_with_key(user.something)
wfgUser.systemIdentifier = user.objectId
update(wfgUser)