Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Azure Active Directory (Azure AD) a été renommé Microsoft Entra ID (ME-ID). Bien que la documentation WorkflowGen ait été mise à jour pour refléter ce changement de nom, les paramètres de l'application WorkflowGen font toujours référence à Azure AD (par exemple, connecteur d'annuaire Azure AD SCIM v2).
De même, certains éléments de configuration ME-ID dans le portail Azure ont été renommés et / ou déplacés. La documentation WorkflowGen a été mise à jour en conséquence, mais il se peut qu'elle ne soit toujours pas tout à fait exacte à cet égard. Consultez la documentation Microsoft Entra ID pour plus d'informations.
Cette section contient les instructions sur la configuration du connecteur de synchronisation Azure AD de WorkflowGen, qui s'appuie sur les fonctionnalités d'approvisionnement des utilisateurs de Microsoft Entra ID (ME-ID). Les utilisateurs et les groupes seront automatiquement mis à jour (envoyés vers WorkflowGen) par ME-ID (toutes les 20 à 40 minutes) en utilisant le protocole SCIM v2.
Comme mentionné, c'est ME-ID qui pousse les données vers WorkflowGen. La nature du protocole ne permet pas à WorkflowGen de mettre à jour le répertoire dans ME-ID. En d'autres termes, c'est Azure qui interroge WorkflowGen pour obtenir des informations, et non l'inverse. Cela signifie que ME-ID est la seule source de vérité pour les utilisateurs et les groupes du système.
Dans les instructions, remplacez <url workflowgen> par le domaine et le chemin de votre instance de WorkflowGen; par exemple, localhost/wfgen ou www.macompagnie.com/wfgen.
Assurez-vous d'avoir une instance de WorkflowGen en fonctionnement dans un réseau accessible par ME-ID avec les ports HTTPS ou HTTP ouverts.
Assurez-vous de connaître l'adresse de l'instance.
Assurez-vous que l'instance de WorkflowGen est opérationnelle.
Cette section contient les instructions sur la définition d'un nouvel annuaire qui sera utilisé par ME-ID 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 de ME-ID.
Dans le module d'administration de WorkflowGen (https://<url workflowgen>/admin), cliquez sur Annuaires, puis cliquez sur Nouvel annuaire dans l'écran Annuaires.
Entrez un nom et une description pour l'annuaire.
Choisissez Azure AD SCIM v2 dans la liste déroulante Connecteur d'annuaire.
Cette section contient les étapes pour la configuration d'une application d'entreprise typique avec ME-ID pour approvisionner votre instance de WorkflowGen avec des utilisateurs et des groupes.
Pour approvisionner WorkflowGen, vous devez l'inscrire dans le portail Azure en ajoutant une nouvelle application d'entreprise. Pour ce faire :
Dans votre portail Azure, cliquez sur Applications d'entreprise, puis cliquez sur Nouvelle application.
Dans la page Parcourir la galerie Microsoft Entra, cliquez sur Créer votre propre application, puis sélectionnez Intégrer une autre application que vous ne trouvez pas dans la galerie (non-galerie).
Entrez le nom de l'application. Généralement, il vous faudra un nom comme WorkflowGen SCIM v2
Vous pouvez maintenant passer à la configuration de l'application pour approvisionner WorkflowGen.
Cliquez sur Provisionnement sur la page de l'application, puis cliquez sur Démarrer. Toute la configuration restante sera faite ici.
Pour configurer la connexion entre WorkflowGen et ME-ID :
Choisissez le mode d'approvisionnement Automatique.
Cliquez sur Informations d'identification de l'administrateur. Pour l'URL de locataire, ajoutez votre adresse WorkflowGen (p.ex. : https://<url workflowgen>/wfgen/scim).
✏️ Note : Si votre domaine de base pointe déjà vers l'instance de WorkflowGen, n'incluez pas wfgen dans l'adresse.
Deux nouvelles sections devraient maintenant être disponibles : Mappages et Paramètres. Vous devrez modifier certains mappages afin de faire correspondre correctement les données correspondantes dans WorkflowGen et de réduire les risques d'erreurs.
Groupes
Cliquez sur l'option qui contient Groupes pour changer le mappage des groupes. Ensuite, dans la nouvelle page, accédez à la section Mappages d'attributs et conservez seulement les mappages externalId, displayName et member réglées sur customappsso. Vous devez aussi changer le mappage de externalId en objectID de ME-ID. Ceci empêchera deux groupes différents d'être approvisionnés avec le même mappage externalId. Cet attribut doit être unique.
Vous avez également la possibilité de personnaliser les opérations à exécuter dans le répertoire WorkflowGen. Si vous partez de zéro, vous devez laisser les opérations Créer, Mettre à jour et Supprimer activées pour vous assurer qu'Azure peut effectuer toutes les opérations dont il a besoin pour garder WorkflowGen synchronisé avec ME-ID.
Les mappages finaux doivent ressembler au tableau suivant. Si vous avez des mappages supplémentaires qui ne sont pas listées ici, vous devez les supprimer, car elles ne seront pas mappés dans WorkflowGen.
Une fois que vous avez défini tous les mappages des groupes, cliquez à nouveau sur Enregistrer.
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 sur le bouton pour les correspondances des utilisateurs dans la section Mappages.
Dans la section Mappages d'attributs dans la nouvelle page, vous devez changer seulement la correspondance de externalId en objectId de ME-ID.
Vous avez également la possibilité de personnaliser les opérations à exécuter dans le répertoire WorkflowGen. Si vous partez de zéro, vous devez laisser les opérations Créer, Mettre à jour et Supprimer activées pour vous assurer que ME-ID peut effectuer toutes les opérations dont il a besoin pour garder WorkflowGen synchronisé avec ME-ID.
Les mappages finaux doivent ressembler au tableau suivant. Si vous avez des mappages supplémentaires qui ne sont pas listés ici, vous devez les supprimer, car elles ne seront pas mappés dans WorkflowGen.
Lorsque toutes les mappages des utilisateurs sont réglés, cliquez sur Enregistrer.
Vous êtes maintenant prêt à lancer la synchronisation des utilisateurs et des groupes avec votre instance de WorkflowGen. Pour ce faire, naviguez à la section Paramètres dans la page Provisionnement de votre application d'entreprise.
Si vous voulez synchroniser seulement un sous-ensemble de vos utilisateurs et vos groupes ME-ID, 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 Utilisateurs et groupes de l'application et ajoutez-y manuellement vos utilisateurs.
Vous pouvez aussi configurer l'application pour synchroniser tous les utilisateurs et les groupes de votre répertoire. Dans ce cas, sélectionnez l'option pour synchroniser tous les utilisateurs et groupes.
Lorsque vous êtes prêt, réglez le status de l'approvisionnement sur Activé, puis cliquez sur Enregistrer.
Vous avez maintenant complété la configuration de l'approvisionnement des utilisateurs et des groups de ME-ID à 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.
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 Microsoft Entra ID sans devoir les supprimer et récréer.
Tout d'abord, il est important de comprendre comment ME-ID 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 ME-ID 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 ME-ID en objectId. Dans WorkflowGen, externalId correspond à la propriété systemIdentifier d'un utilisateur, donc la valeur objectId de ME-ID est approvisionnée dans la valeur systemIdentifier dans WorkflowGen.
Deuxièmement, ME-ID 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 de ME-ID, 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 ME-ID.
Désactivez le connecteur d'Active Directory classique.
Créez un nouveau connecteur d'annuaire Azure SCIM v2.
Déplacez les utilisateurs et les groupes déjà dans Active Directory depuis d'autres annuaires WorkflowGen existants à l'annuaire SCIM.
Créez un script qui mettra à jour les utilisateurs et les groupes dans l'annuaire SCIM avec leurs propriétés
L'exemple ci-dessous inclut un algorithme qui associe les utilisateurs et les groupes à ME-ID :
L'exemple ci-dessous inclut un algorithme qui associe seulement les utilisateurs à ME-ID :
Si vous rencontrez ce problème, cela peut être dû au fait que les utilisateurs et les groupes sont hors de portée de la synchronisation. La raison peut être que vous n'avez pas affecté d'utilisateurs à l'application d'entreprise et que vous avez sélectionné une portée d'utilisateurs affectés uniquement. Pour résoudre ce problème, affectez des utilisateurs à l'application d'entreprise en accédant à sa section Utilisateurs et groupes. Vous pouvez également modifier la portée de la synchronisation pour tous les utilisateurs et groupes de l'annuaire en modifiant les paramètres de synchronisation de l'application d'entreprise.
Une autre cause possible peut être liée à d'autres configurations dans votre ME-ID. Pour des instructions sur comment résoudre ce problème, consultez l'article Microsoft .
Une licence P2 doit être activée dans le locataire ME-ID.
Cliquez sur Enregistrer pour créer l'annuaire.
Copiez la valeur du jeton SCIM généré, car vous en aurez besoin pour la prochaine étape de la configuration de Microsoft Entra ID.
Cliquez sur Créer.
Dans le champ Jeton secret, collez le jeton SCIM que vous avez généré antérieurement lorsque vous avez créé le nouvel annuaire SCIM.
Cliquez sur Test de la connexion et attendez les résultats. Si tout est bien, vous recevrez une notification ainsi que des options supplémentaires.
Cliquez sur Enregistrer en haut de la page.
La colonne Groupe WorkflowGen correspond aux champs et propriétés du groupe qui seront mis à jour dans WorkflowGen.
firstName
jobTitle
title
jobTitle
mail
emails[type eq "work"].value
email
objectId
externalId
systemIdentifier
employeeId
urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber
employeeId
companyName
urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:organization
companyName
department
urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department
department
manager
urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager
manager
mobile
phoneNumbers[type eq "mobile"].value
mobile
city
addresses[type eq "work"].locality
city
state
addresses[type eq "work"].region
state
postalCode
addresses[type eq "work"].postalCode
postalCode
country
addresses[type eq "work"].country
country
physicalDeliveryOfficeName
addresses[type eq "other"].Formatted
office
streetAddress
addresses[type eq "work"].streetAddress
postalAddress
surname
name.familyName
lastName
telephoneNumber
phoneNumbers[type eq "work"].value
phone
userPrincipalName
userName
userName
La colonne Utilisateur WorkflowGen correspond aux champs de l'utilisateur qui seront mis à jour dans WorkflowGen.
systemIdentifierobjectIdAttribut ME-ID
Attribut customappsso
Groupe WorkflowGen
objectId
externalId
systemIdentifier
mailNickname
displayName
name
members
members
users
Attribut ME-ID
Attribut customappsso
Utilisateur WorkflowGen
Switch([IsSoftDeleted], , "False", "True", "True", "False")
active
isActive
displayName
displayName
commonName
FacsimileTelephoneNumber
phoneNumbers[type eq "fax"].value
fax
givenName
name.givenName
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)users = fetch_users_from_azure()
for user in users:
wfgUser = fetch_wfg_user_with_key(user.something)
wfgUser.systemIdentifier = user.objectId
update(wfgUser)Ce guide fournit des informations et des instructions détaillées sur :
Synchronisation Microsoft Entra IDComment configurer la synchronisation des utilisateurs et des groupes avec Microsoft Entra ID
Authentification Microsoft Entra IDComment configurer l'authentification WorkflowGen avec OpenID Connect et Microsoft Entra ID
Configuration de Microsoft Entra ID pour WorkflowGen Plus v2Comment autoriser l'accès aux applications mobiles avec OpenID Connect et Microsoft Entra ID
Configuration de Microsoft Entra ID pour les scripts côté serveurComment autoriser WorkflowGen pour accéder aux scripts côté serveur avec OpenID et Microsoft Entra ID
Configuration de Microsoft Entra ID pour les applications monopageComment autoriser WorkflowGen pour accéder aux applications monopage avec OpenID Connect et Microsoft Entra ID
Configuration de Microsoft Entra ID pour la CLI WorkflowGenComment configurer Microsoft Entra ID pour une utilisation avec l'interface de ligne de commande WorkflowGen
Exchange Online : Authentification moderne pour l'Approbation à distanceComment configurer le service d'Approbation à distance de WorkflowGen pour s'intégrer à Exchange Online à l'aide de l'authentification moderne.
Configuration de la base de données SQL AzureComment configurer la base de données WorkflowGen avec la base de données SQL Azure
Comment configurer la fonctionnalité facultative de lecture du Scale-Out
Comment configurer l'équilibreur de charge d'Azure pour une plus haute disponibilité et une infrastructure plus évolutive
Comment configurer un partage Azure Files pour utilisation avec WorkflowGen
Comment configurer un SMTP Azure SendGrid avec WorkflowGen
Comment générer un lien universel pour simplifier la connexion des utilisateurs à l'application mobile WorkflowGen Plus
Comment configurer et gérer un cluster Kubernetes adapté à WorkflowGen dans Azure
Azure Active Directory (Azure AD) a été renommé Microsoft Entra ID (ME-ID). Bien que la documentation WorkflowGen ait été mise à jour pour refléter ce changement de nom, les paramètres de l'application WorkflowGen font toujours référence à Azure AD (par exemple, connecteur d'annuaire Azure AD SCIM v2).
De même, certains éléments de configuration ME-ID dans le portail Azure ont été renommés et / ou déplacés. La documentation WorkflowGen a été mise à jour en conséquence, mais il se peut qu'elle ne soit toujours pas tout à fait exacte à cet égard. Consultez la documentation Microsoft Entra ID pour plus d'informations.
Cette section fournit des instructions sur la façon de configurer Microsoft Entra ID (ME-ID) avec une application monopage afin que les utilisateurs puissent s'authentifier via celle-ci et envoyer des requêtes à l'API WorkflowGen GraphQL. Cette configuration se fait en trois étapes : l'enregistrement de votre application monopage, l'octroi de l'accès à l'API et la définition de certaines URLs de redirection.
Assurez-vous d'avoir une copie de WorkflowGen sous licence installée et en fonctionnement sur un serveur Web IIS en mode de connexion sécurisé HTTPS.
Assurez-vous d'avoir un accès administratif à ME-ID pour pouvoir le configurer correctement.
Assurez-vous d'avoir approvisionné un utilisateur ME-ID existant avec lequel vous pouvez vous authentifier auprès de WorkflowGen afin de pouvoir utiliser l'application par la suite.
Dans le portail Azure, cliquez sur Inscriptions d'applications dans la section Services Azure.
Cliquez sur Nouvelle inscription, puis entrez les propriétés :
Nom : Mon nom SPA
Vous avez maintenant inscrit avec succès votre application dans ME-ID.
Cliquez sur Authentification.
Naviguez à la sous-section Octroi implicite et flux hybrides.
Cochez les cases Jetons d'accès et Jetons d'ID.
Maintenant que vous avez enregistré avec succès votre application monopage, vous devez lui accorder l'accès à l'application WorkflowGen GraphQL API, qui devrait déjà être inscrite si vous avez rempli les conditions préalables.
Cliquez sur API autorisées.
Dans la section Autorisations configurées, cliquez sur Ajouter une autorisation.
Cliquez sur Mes API, puis sélectionnez l'application WorkflowGen GraphQL API dans la liste.
Vous devriez maintenant voir WorkflowGen GraphQL API dans la liste des autorisations d'API de votre application monopage enregistrée. Par conséquent, lorsque vous demandez un jeton d'accès à Azure, en fonction de l'audience, vous devriez pouvoir obtenir un jeton correct que vous enverrez à l'API GraphQL de votre instance WorkflowGen en plus de la demande.
Cette section contient les instructions sur comment configurer la fonctionnalité facultative de la lecture du Scale-Out, qui permet l'équilibrage des charges de travail en utilisant un réplica en lecture-seule au lieu d'un réplica en lecture écriture. Pour plus d'informations sur cette fonctionnalité, voir l'article Microsoft .
Azure Active Directory (Azure AD) a été renommé Microsoft Entra ID (ME-ID). Bien que la documentation WorkflowGen ait été mise à jour pour refléter ce changement de nom, les paramètres de l'application WorkflowGen font toujours référence à Azure AD (par exemple, connecteur d'annuaire Azure AD SCIM v2).
De même, certains éléments de configuration ME-ID dans le portail Azure ont été renommés et / ou déplacés. La documentation WorkflowGen a été mise à jour en conséquence, mais il se peut qu'elle ne soit toujours pas tout à fait exacte à cet égard. Consultez la documentation pour plus d'informations.
Le nom du serveur (p.ex. smtp.sendgrid.net)
Le nom d'utilisateur (p.ex. apikey)
Le mot de passe généré
Le port 25 ou le port 287 réglé pour les connexions TLS et les connexions SSL explicites.
Pour plus d'informations sur l'intégration d'un SMTP SendGrid, consultez l'article Twilio Integrating with the SMTP API (disponible en anglais uniquement).
Pour créer la connexion entre WorkflowGen et Azure SendGrid SMTP :
Naviguez à l'onglet Général du panneau de configuration.
Dans la section SMTP :
Sélectionnez Serveur comme méthode de livraison.
Entrez le nom de votre serveur dans le champ Nom d'hôte.
Réglez le port 25 ou le port 587 dans le champ Port.
Cochez Utiliser SSL/TLS.
Entrez votre nom d'utilisateur dans le champ Nom d'utilisateur.
Entrez votre mot de passe dans le champ Mot de passe.
Cliquez sur Tester à côté du champ Nom d'hôte.
Entrez une adresse email pour le test dans le champ Adresse destinataire qui s'affichera sous le champ Adresse expéditeur, puis cliquez sur Envoyer.
WorkflowGen GraphQL API également inscrite.Types de comptes pris en charge : Comptes dans cet annuaire d'organisation uniquement (Default Directory uniquement - Locataire unique)
✏️ Note : En fonction du contexte, vous devez choisir la bonne option pour votre cas d'utilisation pour la valeur du type de compte supporté.
URI de redirection :
Plateforme : Web
Valeur : https://<mon url de connexion SPA>
Cliquez sur S'inscrire en bas de la page.
Cliquez sur Autorisations déléguées, puis cochez defaut dans la colonne Autorisations.
Cliquez sur Ajouter des autorisations.
Dans la page API autorisées, cliquez sur Accorder un consentement d'administrateur pour <votre nom de locataire>, puis cliquez sur Oui.
Depuis la version 7.16.0 de WorkflowGen serveur, vous pouvez générer un lien universel pour simplifier le processus de connexion Microsoft Entra ID (ME-ID) de vos utilisateurs de l'application mobile WorkflowGen Plus.
L'application mobile WorkflowGen Plus v2 supporte l'authentification déléguée ME-ID avec le fournisseur Microsoft Identity Platform v2.0 (ms-identity-v2) uniquement.
protocol: workflowgenplus://
hostname: auth.init
Vous devez régler les paramètres suivants :
provider : ms-identity-v2
server_address : L'URL de votre application WorkflowGen, dont la valeur doit être encodée URL (p.ex. : https://macompagnie.com/wfgen)
client_id : Ceci est l'ID d'application (client) de votre inscription d'application native WorkflowGen Plus dans ME-ID (p.ex. : 4b72dd6c-013e-4a9c-b837-f03a58cb8fd1)
tenant_id : Ceci est l'ID de répertoire (locataire) de votre inscription d'application native WorkflowGen Plus dans ME-ID (p.ex. :
6g909d00-8580-49a4-9003-a30f6b87ae86)
audience : L'URL de votre API GraphQL WorkflowGen, dont la valeur doit être encodée URL (p.ex. : https://macompagnie.com/wfgen/graphql).
Le lien universel devrait suivre cette structure :
Une fois que vous aurez généré le lien universel, donnez-le à vos utilisateurs, qui pourront l'utiliser pour se connecter à WorkflowGen Plus v2 par la méthode de connexion pré-configurée.
workflowgenplus://auth.init?provider=ms-identity-v2&server_address=https%3A%2F%2Fmycompany.com%2Fwfgen&client_id=4b72dd6c-013e-4a9c-b837-f03a58cb8fd1&tenant_id=6g909d00-8580-49a4-9003-a30f6b87ae86&audience=https%3A%2F%2Fmycompany.com%2Fwfgen%2Fgraphql
Assurez-vous d'avoir un niveau de service Premium ou Business Critical.
Vous devez avoir les permissions requises pour modifier la base de données dans le portail Azure.
Installez ou mettez à jour le module Azure PowerShell dans PowerShell en exécutant les commandes suivantes :
Pour plus d'informations, consultez l'article Microsoft Installation d'Azure PowerShell.
Connectez-vous à votre compte Microsoft Azure dans PowerShell en exécutant la commande suivante :
Si vous rencontrez des problèmes de sécurité lors du processus de connexion à Microsoft Azure, vous devez donc ajouter manuellement https://login.microsoftonline.com/ ainsi que les URIs de tous les sites Web associés dans la zone Sites approuvés dans les options Internet d'Internet Explorer.
Activez la fonctionnalité du Read Scale-Out dans PowerShell en exécutant la commande suivante :
Remplacez <resource group> par le nom du groupe de ressources.
Remplacez <server name> par le nom du serveur (p.ex. workflowgen.database.windows.net).
Remplacez <database name> par le nom de la base de données (p.ex. WFGEN
Vous pouvez aussi activer la fonctionnalité du read Scale-Out avec l'API REST de la base de données SQL Azure.
Naviguez à la section Base de données sur l'onglet Général du panneau de configuration de WorkflowGen.
Dans le champ Chaîne de connexion à la base de données « maître », ajoutez le paramètre ApplicationIntent=ReadWrite à la chaîne de connexion existante, puis cliquez sur Tester pour tester la disponibilité de la base de données. Voici un exemple d'une chaîne de connexion :
Dans le champ Chaîne de connexion de la base de données en lecture seule, ajoutez (ou modifiez) la chaîne de connexion avec le nouveau paramètre, puis cliquez sur Tester pour tester la disponibilité de la base de données. Voici un exemple d'une chaîne de connexion :
Cochez l'option Multi-base de données.
Vérifiez les composants et les modules du portail utilisateur qui utiliseront la base de données en lecture seule. Pour plus d'informations, voir la section dans le .
Azure Active Directory (Azure AD) a été renommé Microsoft Entra ID (ME-ID). Bien que la documentation WorkflowGen ait été mise à jour pour refléter ce changement de nom, les paramètres de l'application WorkflowGen font toujours référence à Azure AD (par exemple, connecteur d'annuaire Azure AD SCIM v2).
De même, certains éléments de configuration ME-ID dans le portail Azure ont été renommés et / ou déplacés. La documentation WorkflowGen a été mise à jour en conséquence, mais il se peut qu'elle ne soit toujours pas tout à fait exacte à cet égard. Consultez la documentation pour plus d'informations.
Install-Module -Name AzureRM -AllowClobber
Import-Module -Name AzureRMLogin-AzureRmAccountData Source=workflowgen.database.windows.net;Initial Catalog=WFGEN;User ID=wfgen_user;Password=Admin123!;encrypt=true;trustServerCertificate=false;ApplicationIntent=ReadWrite;Set-AzureRmSqlDatabase -ResourceGroupName <resource group> -ServerName <server name> -DatabaseName <database name> -ReadScale EnabledData Source=workflowgen.database.windows.net;Initial Catalog=WFGEN;User ID=wfgen_user;Password=Admin123!;encrypt=true;trustServerCertificate=false;ApplicationIntent=ReadOnly;Les applications mobiles doivent suivre une approche semblable à celle des applications Web ordinaires appelée « Authorization Code Flow with Proof Key for Code Exchange (PKCE) ». La principale distinction entre PKCE et le « Authorization Code Flow » classique est que l'application mobile ne reçoit pas de clé secrète client; à la place, elle échange une paire de codes pour prouver l'origine de la tentative d'authentification. Le problème est qu'on ne peut pas se fier à une application mobile car elle est distribuée librement aux utilisateurs et donc elle n'est plus sous le contrôle du développeur, puis les sources pourraient être décompilées et analysées pour révéler les clés secrètes client.
Cette section contient les instructions sur comment configurer Microsoft Entra ID (ME-ID) pour les applications mobiles afin que vos utilisateurs mobiles puissent aussi bénéficier de l'authentification déléguée.
L'application mobile WorkflowGen Plus v2 (disponible dans les marchés d'applications Apple et Google Play) supporte l'authentification déléguée ME-ID avec le fournisseur Microsoft Identity Platform v2.0 uniquement.
De plus, WorkflowGen Plus ne fonctionnera pas avec un serveur WorkflowGen configuré pour appeler des APIs tierces avec OpenID Connect (par exemple en utilisant une audience personnalisée et / ou des portées multiples).
L'application mobile WorkflowGen Plus v1 n'est plus supportée.
Assurez-vous d'avoir une copie de WorkflowGen sous licence installée et en fonctionnement sur un serveur Web IIS en mode de connexion sécurisé HTTPS.
Assurez-vous d'avoir un accès administrateur ME-ID pour pouvoir configurer ME-ID.
Assurez-vous d'avoir approvisionné un utilisateur ME-ID existant avec lequel vous pouvez vous authentifier auprès de WorkflowGen afin de pouvoir utiliser l'application par la suite.
Assurez-vous d'avoir configuré avec succès l'authentification déléguée à ME-ID avec le fournisseur Microsoft Identity Platform v2.0 sur votre instance WorkflowGen en suivant les instructions de la section avec l'application WorkflowGen GraphQL API également enregistrée.
Cette configuration se fait dans plusieurs étapes. D'abord, vous devez inscrire une nouvelle application native dans ME-ID. Ensuite, vous devez donner les permissions requises à l'application pour accéder à l'API GraphQL de WorkflowGen. Enfin, vous devez inscrire les URLs de rappel qui redirigeront dans l'application native.
Dans le portail Azure, cliquez sur Inscriptions d'applications dans la section Services Azure.
Cliquez sur Nouvelle inscription, puis entrez les propriétés :
Nom : WorkflowGen Plus
Types de comptes pris en charge : Comptes dans cet annuaire d'organisation uniquement (Default Directory uniquement - Locataire unique)
✏️ Note : En fonction du contexte, vous devez choisir la bonne option pour votre cas d'utilisation pour la valeur du type de compte supporté.
URI de redirection :
Type : Client public/natif
Value : workflowgenplus://oidc
Cliquez sur S'inscrire en bas de la page.
Vous avez maintenant enregistré avec succès votre application native WorkflowGen Plus dans Microsoft Entra ID.
Cliquez sur API autorisées.
Dans la section Autorisations configurées, cliquez sur Ajouter une autorisation.
Cliquez sur Mes API, puis sélectionnez l'application WorkflowGen GraphQL API dans la liste.
Cliquez sur Autorisations déléguées et cochez défaut dans la colonne Autorisation.
Cliquez sur Ajouter des autorisations.
Dans la page API autorisées, cliquez sur Accorder un consentement administrateur pour <votre nom de locataire>, puis cliquez sur Oui.
Prenez note des informations dont vous aurez besoin plus tard :
Une adresse serveur : Ceci est l'URL de votre application WorkflowGen (p.ex. : https://<url workflowgen>).
Un ID client : Ceci est l'ID d'application (client) dans la section d'aperçu de votre inscription d'application.
Un ID locataire : Ceci est l'ID de répertoire (locataire) dans la section d'aperçu de votre inscription d'application.
Une audience : Ceci est la propriété Application ID URI (p.ex. : https://<url workflowgen>/graphql) dans la section Exposer une API de l'inscription d'application WorkflowGen GraphQL API.
Vous devrez fournir ces informations aux utilisateurs qui utiliseront l'application mobile WorkflowGen Plus v2. L'authentification déléguée Azure AD ne fonctionnera pas à moins qu'ils ne copient ces informations dans l'application mobile.
Vous avez maintenant inscrit avec succès l'application mobile WorkflowGen Plus dans Microsoft Entra ID.
Azure Active Directory (Azure AD) a été renommé Microsoft Entra ID (ME-ID). Bien que la documentation WorkflowGen ait été mise à jour pour refléter ce changement de nom, les paramètres de l'application WorkflowGen font toujours référence à Azure AD (par exemple, connecteur d'annuaire Azure AD SCIM v2).
De même, certains éléments de configuration ME-ID dans le portail Azure ont été renommés et / ou déplacés. La documentation WorkflowGen a été mise à jour en conséquence, mais il se peut qu'elle ne soit toujours pas tout à fait exacte à cet égard. Consultez la documentation Microsoft Entra ID pour plus d'informations.
Dans certains cas, vous voudrez effectuer une tâche spécifique qui peut être automatisée mais qui doit pouvoir accéder à l'API GraphQL de WorkflowGen; ce cas d'usage est souvent sous forme d'un script ou d'une application côté serveur (p.ex. : background service, daemon, curl , Postman, etc.). Pour ceci, OAuth2 fournit un type d'octroi appelé Client Credentials (informations d'identification du client) qui échange tout simplement un ID client et une clé secrète client pour un jeton d'accès. Il n'y a aucun jeton ID car ceci ne fait pas partie du standard OpenID Connect et aucun utilisateur n'est impliqué.
Cette section fournit des instructions sur la façon de configurer Microsoft Entra ID (ME-ID) pour qu'un script ou une application côté serveur ait accès à l'API WorkflowGen GraphQL. Tout d'abord, vous devez inscrire une nouvelle application Web dans ME-ID; ensuite, vous devrez configurer une nouvelle application dans votre serveur Web WorkflowGen.
Assurez-vous d'avoir une copie de WorkflowGen sous licence installée et en fonctionnement sur un serveur Web IIS en mode de connexion sécurisé HTTPS.
Assurez-vous d'avoir un accès administratif à WorkflowGen.
Assurez-vous d'avoir un accès administratif à ME-ID pour pouvoir le configurer correctement.
Dans le portail Azure, cliquez sur Inscriptions d'applications dans la section Services Azure.
Cliquez sur Nouvelle inscription, puis entrez les propriétés :
Nom : Nom de votre script, service ou application
Vous avez maintenant inscrit avec succès votre application dans Azure Active Directory.
Cliquez sur Afficher les autorisation de l'API.
Dans la section Autorisations configurées, cliquez sur Ajouter une autorisation.
Cliquez sur Mes API, puis sélectionnez l'application WorkflowGen GraphQL API dans la liste.
Dans le menu de l'inscription de l'application, cliquez sur Certificats & secrets.
Dans la section Secrets client, cliquez sur Nouveau secret client.
Description : Mon secret, ou quelque chose qui l'identifie comme clé secrète client
Depuis la dernière mise à jour du portail Azure, il n'est plus possible de définir des clés secrètes client pour qu'elles n'expirent jamais. Vous devrez régénérer manuellement une nouvelle clé secrète client tous les deux ans (si l'option 730 jours (24 mois) a été sélectionnée) avant qu'elle n'expire. Ensuite, mettez à jour la clé secrète client utilisée par l'instance WorkflowGen dans son fichier de configuration Web.
Voici un aperçu des informations dont vous aurez besoin :
Un ID client : Ceci est l'ID d'application (client) dans la section d'aperçu de votre inscription d'application.
Une clé secrète client : Ceci est la valeur que vous avez générée dans la section Certificates & secrets.
Un ID locataire : Ceci est l'ID de répertoire (locataire) dans la section d'aperçu de votre inscription d'application.
Vous avez maintenant enregistré avec succès votre script ou application côté serveur dans Microsoft Entra ID.
Comme pour l'approvisionnement des utilisateurs, WorkflowGen a besoin de savoir quelle application accède à l'API GraphQL. Par conséquent, vous devez enregistrer l'application dans WorkflowGen, qui se compose de votre script ou application côté serveur.
Dans la page Applications du module d'administration WorkflowGen, cliquez sur Nouvelle application.
Renseignez le formulaire :
Nom : Mon application serveur
Votre application devrait maintenant apparaître dans la liste des applications WorkflowGen.
Vous devriez maintenant avoir les composants nécessaires en place pour effectuer des demandes d'API GraphQL avec votre script ou application côté serveur en transmettant le jeton d'accès qui a été précédemment récupéré à partir du point de terminaison du jeton ME-ID OAuth2 à l'aide du flux d'octroi des informations d'identification du client.
Pour que votre script ou application côté serveur envoie des requêtes à l'API WorkflowGen GraphQL, vous devez d'abord obtenir un jeton d'accès à partir de votre point de terminaison de jeton ME-ID OAuth2. Voici des exemples de la façon d'obtenir un jeton d'accès pour votre application et de faire une demande à l'API GraphQL.
Si vous avez configuré la section , la valeur du paramètre scope doit être api://my-apis/.default au lieu de https://<url workflowgen>/graphql/.default.
Azure Active Directory (Azure AD) a été renommé Microsoft Entra ID (ME-ID). Bien que la documentation WorkflowGen ait été mise à jour pour refléter ce changement de nom, les paramètres de l'application WorkflowGen font toujours référence à Azure AD (par exemple, connecteur d'annuaire Azure AD SCIM v2).
De même, certains éléments de configuration ME-ID dans le portail Azure ont été renommés et / ou déplacés. La documentation WorkflowGen a été mise à jour en conséquence, mais il se peut qu'elle ne soit toujours pas tout à fait exacte à cet égard. Consultez la documentation Microsoft Entra ID pour plus d'informations.
Assurez-vous d'avoir une copie de WorkflowGen sous licence installée et en fonctionnement sur un serveur Web IIS en mode de connexion sécurisé HTTPS.
Assurez-vous d'avoir un accès administrateur Microsoft Entra ID (ME-ID) pour pouvoir configurer Azure AD.
Assurez-vous d'avoir approvisionné un utilisateur ME-ID existant avec lequel vous pouvez vous authentifier auprès de WorkflowGen afin de pouvoir utiliser l'application par la suite.
Cette configuration se fait dans plusieurs étapes. D'abord, vous devez inscrire une nouvelle application native dans ME-ID. Ensuite, vous devez donner les permissions requises à l'application pour accéder à l'API GraphQL de WorkflowGen. Enfin, vous devez inscrire les URLs de rappel qui redirigeront dans l'application native.
Dans le portail Azure, cliquez sur Inscriptions d'applications dans la section Services Azure.
Cliquez sur Nouvelle inscription, puis entrez les propriétés :
Nom : WorkflowGen CLI
Vous avez maintenant enregistré avec succès votre application native WorkflowGen CLI dans ME-ID.
Cliquez sur API autorisées.
Dans la section Autorisations configurées, cliquez sur Ajouter une autorisation.
Cliquez sur Mes API, puis sélectionnez l'application WorkflowGen GraphQL API dans la liste.
Prenez note des informations dont vous aurez besoin plus tard :
Un ID client : Ceci est l'ID d'application (client) dans la section d'aperçu de votre inscription d'application.
Un ID locataire : Ceci est l'ID de répertoire (locataire) dans la section d'aperçu de votre inscription d'application.
Vous devrez fournir ces informations aux utilisateurs qui utiliseront la CLI WorkflowGen.
Vous avez maintenant inscrit avec succès la CLI WorkflowGen sur votre Azure AD.
La configuration du mode non interactif est la même que dans la section
Cette section contient les instructions sur comment créer et configurer la fonctionnalité Azure Load Balancer (équilibreur de charge). Voici une citation de l'article Qu’est-ce qu’Azure Load Balancer ? de Microsoft :
Azure Load Balancer vous permet de mettre à l’échelle vos applications et de créer une haute disponibilité pour vos services. Load Balancer prend en charge les scénarios entrants et sortants, offre une latence faible et un débit élevé, et peut augmenter l’échelle jusqu’à des millions de flux pour toutes les applications TCP et UDP.
Load Balancer distribue les nouveaux flux entrants qui arrivent sur son frontend vers des instances de pool backend en fonction de règles et de sondes d’intégrité.
De plus, un équilibreur de charge public peut fournir des connexions sortantes pour des machines virtuelles à l’intérieur de votre réseau virtuel en traduisant leurs adresses IP privées en adresses IP publiques.
Créez un équilibreur de charge de base en suivant les instructions dans l'article Microsoft . Lorsque vous aurez complété les étapes, vous devriez avoir :
Un équilibreur de charge avec ses ressources configurés : un pool d'adresses « back-end », une sonde d'intégrité (« health probe ») et une règle d'équilibrage de charge. ✏️ Note : Lorsque vous créez la règle d'équilibrage de charge, vous pouvez configurer la « sticky-session » dans la liste déroulante Persistance de session. Si l'état de session est activé dans les formulaires Web (voir l'article dans la base de connaissances de WorkflowGen, disponible en anglais uniquement), la « sticky-session » est obligatoire.
Un réseau virtuel
Deux machines virtuelles avec IIS installé sur chacune
Pour créer un équilibreur de charge et ses composants via l'interface de ligne de commande Azure, , puis suivez les étapes ci-dessous :
.
avec ses ressources (pool d'adresses principal, sonde d'intégrité et règle d'équilibreur de charge).
✏️ Note: Vous pouvez configurer la « sticky-session » en utilisant le paramètre --load-distribution dans le script. Pour plus de détails sur tous les paramètres supportés, voir l'article de Microsoft. Si l'état de session (Session State) est activé dans les formulaires Web, la « sticky-session » est obligatoire (voir l'article sur le forum WorkflowGen pour plus d'informations).
Installez WorkflowGen sur les deux machines virtuelles en suivant les instructions dans la section du .
✏️ Note : Une fois que WorkflowGen est installé, il est obligatoire de configurer le mode d'authentification anonyme pour le site Web de WorkflowGen. L'application wfgen et ses sous-applications pourraient avoir de différentes méthodes d'authentification configurées.
Assurez-vous que les deux instances de WorkflowGen pointent vers la même base de données. Votre base de données peut être :
Pour les deux instances de WorkflowGen, remplacez <adresse IP publique de l'équilibreur de charge> ci-haut par l'adresse IP publique de l'équilibreur de charge.
Configurez votre WorkflowGen dans une architecture de batterie de serveurs Web (« web farm ») en suivant les instructions dans la section du . Lorsque vous aurez complété les instructions, vous aurez :
Un dossier WebForms partagé.
Les services du moteur et de la synchronisation des annuaires de WorkflowGen en fonctionnement sur une instance unique de WorkflowGen.
Assurez-vous d'avoir configuré avec succès l'authentification déléguée à ME-ID avec le fournisseur Microsoft Identity Platform v2.0 sur votre instance WorkflowGen en suivant les instructions de la section Authentification Microsoft Entra ID avec l'application WorkflowGen GraphQL API également enregistrée.
Types de comptes pris en charge : Comptes dans cet annuaire d'organisation uniquement (Default Directory uniquement - Locataire unique)
✏️ Note : En fonction du contexte, vous devez choisir la bonne option pour votre cas d'utilisation pour la valeur Types de comptes pris en charge.
URI de redirection :
Plateforme : Client public/natif
Valeur : http://127.0.0.1:8888/callback
✏️ Note : Le port 8888 est celui défini par défaut, vous pouvez le changer s'il est déjà utilisé sur votre poste.
Cliquez sur S'inscrire en bas de la page.
Cliquez sur Autorisations déléguées et cochez defaut dans la colonne Autorisation.
Cliquez sur Ajouter des autorisations.
Dans la page API autorisées, cliquez sur Accorder un consentement d'administrateur pour <votre nom de locataire>, puis cliquez sur Oui.
Un groupe de sécurité réseau ✏️ Note : Lorsque vous créez les règles NGS (groupe de sécurité réseau), il est recommandé d'ajouter la règle RDP seulement pour les tests. Pour la production, nous recommandons utiliser un VPN ou une connexion privée. Voir l'article Créer les règles du groupe de sécurité réseau de Microsoft pour les instructions.
Une adresse IP publique pour l'équilibreur de charge que vous trouverez dans sa page d'aperçu. ✏️ Note : Cette adresse IP publique sera utilisée pour accéder à vos instances de WorkflowGen.
Créez deux machines virtuelles avec IIS installé sur les deux.
Une base de données Azure OU
Une instance de base de données MS SQL classique sur un serveur dédié ou sur une des machines virtuelles. Assurez-vous d'ajouter des règles d'entrée et de sortie (selon vos besoins) pour le port SQL dans le group de sécurité réseau.
Créez un partage de fichiers Azure en suivant les instructions dans la section Azure Files, puis copiez le chemin du partage de fichiers.
✏️ Note : Assurez-vous de remplacer la valeur du paramétrage ApplicationDataPath dans le fichier web.config de WorkflowGen par le nouveau chemin du partage de fichiers.
Ouvrez le fichier web.config de WorkflowGen et modifiez la valeur du paramétrage suivant :
WorkflowGen GraphQL API également enregistrée.Types de comptes pris en charge : Comptes dans cet annuaire d'organisation uniquement (Default Directory uniquement - locataire unique)
✏️ Note : Selon le contexte, vous devez choisir la bonne option pour votre cas d'utilisation pour la valeur du type de compte supporté.
URI de redirection : Laissez ce champ vide
Cliquez sur S'inscrire en bas de la page.
Cliquez sur Autorisations déléguées, puis cochez defaut dans la colonne Autorisation.
Cliquez sur Ajouter des autorisations.
Dans la page API autorisées, cliquez sur Accorder un consentement d'administrateur pour <votre nom de locataire>, puis cliquez sur Oui.
Date d'expiration : Choisissez 730 jours (24 mois) ou la période d'expiration souhaitée.
Cliquez sur Ajouter.
La clé secrète client générée automatiquement est maintenant affichée dans la colonne Valeur. Copiez la valeur de la clé secrète client et enregistrez-la dans un endroit sûr, car vous ne pourrez plus la récupérer par la suite.
Une étendue : L'étendue de l'application WorkflowGen GraphQL API dans la section Exposer une API.
✏️ Note : Vous devez ajouter un point (.) avant le nom de l'étendue defaut dans l'URL lors de la transmission de l'étendue en tant que paramètre dans la demande pour récupérer le jeton d'accès (p.ex. : https://<url workflowgen>/graphql/.default). Voir le paramètre scope dans l'exemple cURL.
Description : Une description qui identifie clairement votre script, service ou application
Type : Client non interactif
Nom d'utilisateur d'impersonnification : Tout nom d'utilisateur WorkflowGen ayant l'accès requis à l'API GraphQL
ID client : L'ID client que vous avez récupéré précédemment lors de l'inscription de votre application dans Azure AD
Actif : Cochez cette case
Cliquez sur Enregistrer.
<add key="ApplicationUrl" value="http[s]://<adresse IP publique de l'équilibreur de charge>/wfgen" />curl --location --request POST 'https://login.microsoftonline.com/<Tenant ID>/oauth2/v2.0/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'client_id=<Client ID>' \
--data-urlencode 'client_secret=<Client Secret>' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scope=https://<url workflowgen>/graphql/.default'
{
"token_type": "Bearer",
"expires_in": 3599,
"ext_expires_in": 3599,
"access_token": "<access token>"
}curl --location --request POST 'https://mycompany.com/wfgen/graphql' \
--header 'Authorization: Bearer <access token>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'query={
viewer {
userName
}
}'{
"data": {
"viewer": {
"userName": "[email protected]"
}
}
}Azure Active Directory (Azure AD) a été renommé Microsoft Entra ID (ME-ID). Bien que la documentation WorkflowGen ait été mise à jour pour refléter ce changement de nom, les paramètres de l'application WorkflowGen font toujours référence à Azure AD (par exemple, connecteur d'annuaire Azure AD SCIM v2).
De même, certains éléments de configuration ME-ID dans le portail Azure ont été renommés et / ou déplacés. La documentation WorkflowGen a été mise à jour en conséquence, mais il se peut qu'elle ne soit toujours pas tout à fait exacte à cet égard. Consultez la documentation pour plus d'informations.
À partir de la version 7.22.5 de WorkflowGen, l'Approbation à distance supporte l'utilisation d'un compte d'utilisateur Office dans Exchange Online (Office 365) à l'aide de l'authentification moderne pour recevoir et traiter les emails d'approbation.
L'authentification moderne utilise le protocole OAuth2 standard pour l'autorisation. Pour cela, OAuth2 fournit un type d'autorisation appelé Client Credentials qui échange simplement un ID client et un secret pour un jeton d'accès qui sera utilisé pour récupérer et envoyer des emails d'approbation à partir de la boîte aux lettres du compte d'utilisateur Office.
Cette section fournit des instructions sur la façon de configurer l'Approbation à distance pour s'intégrer à Exchange Online à l'aide de l'authentification moderne. Tout d'abord, vous devrez configurer une nouvelle application dans le portail Azure; vous devrez ensuite configurer les paramètres d'Approbation à distance dans WorkflowGen.
Microsoft prévoit de désactiver le support de l'authentification de base pour tous les clients du service Exchange Online dans un proche avenir. Il est maintenant suggéré de migrer vers l'authentification moderne. Consultez l'article Microsoft Basic Authentication and Exchange Online – February 2021 Update (disponible en anglais uniquement) pour plus d'informations.
Assurez-vous d'avoir une copie de WorkflowGen sous licence installée et en fonctionnement sur un serveur.
Assurez-vous d'avoir un accès administratif à WorkflowGen.
Assurez-vous d'avoir un accès administratif à Microsoft Entra ID pour pouvoir le configurer correctement.
Assurez-vous d'avoir activé l'authentification moderne pour le client Outlook dans le centre d'administration Microsoft 365. Consultez l'article Microsoft (disponible en anglais uniquement) pour plus d'informations.
Assurez-vous d'utiliser un compte d'utilisateur Microsoft 365 disposant d'une licence Microsoft 365 valide et d'autorisations de lecture/écriture sur la boîte aux lettres Exchange Online. Ce compte sera utilisé pour le nom d'utilisateur (username) d'Approbation à distance et les paramètres d'email de réponse par défaut (default reply-to email).
Dans le portail Azure, cliquez sur Inscriptions d'applications dans la section Services Azure.
Cliquez sur Nouvelle inscription et renseignez les propriétés :
Nom : Le nom de votre application d'Approbation à distance (p.ex. Approbation à distance WorkflowGen)
Types de comptes pris en charge : Comptes dans cet annuaire d'organisation uniquement (Default Directory uniquement - Locataire unique)
URI de redirection : Laissez ce champ vide
Cliquez sur S'inscrire au bas de la page.
Vous avez maintenant enregistré avec succès votre application d'Approbation à distance dans Azure Active Directory.
Cliquez sur API autorisées.
Dans la section Autorisations configurées, cliquez sur Ajouter une autorisation.
Cliquez sur API utilisées par mon organisation, puis recherchez Office 365 Exchange Online.
Sélectionnez Office 365 Exchange Online dans la liste.
Cliquez sur Autorisations de l'application.
Développez Autres autorisations, puis cochez full_access_as_app.
Cliquez sur Ajouter des autorisations.
Restez dans la section API autorisées.
Si vous êtes un administrateur Microsoft 365, cliquez sur Accorder le consentement d'administrateur pour pour accorder le consentement à l'application.
Si vous n'êtes pas un administrateur Microsoft 365, vous devrez demander à un administrateur Microsoft 365 d'accorder le consentement d'administrateur pour votre application dans son portail Azure.
Une fois que votre application a obtenu le consentement d'administrateur, vous verrez une coche verte pour chacune des autorisations.
Dans le menu Applications, cliquez sur Certificats & secrets.
Dans la section Secrets client, cliquez sur Nouveau secret client et entrez les propriétés suivantes :
Description : secret_client (ou quelque chose qui identifie clairement que c'est un secret)
Date d'expiration : Sélectionnez la date d'expiration souhaitée (p.ex. Recommandé : 6 mois)
Cliquez sur Ajouter.
Copiez et enregistrez la valeur générée par Azure dans un endroit sûr. Il s'agit de votre secret client (appelé mot de passe d'application), et vous ne pourrez pas le récupérer plus tard.
Dans le menu Applications, cliquez sur Personnalisation.
Si nécessaire, mettez à jour le nom de votre application, le logo de votre entreprise, l'URL de la page d'accueil, l'URL des conditions de service ou l'URL de la déclaration de confidentialité.
Cliquez sur Enregistrer lorsque vous avez terminé.
Voici un aperçu des informations dont vous aurez besoin :
L'ID de l'application (client) d'Approbation à distance, qui se trouve dans la section des inscriptions des applications.
Votre ID d'annuaire (locataire), qui se trouve dans la section des inscriptions des applications
Un secret client, qui est la valeur qui a été générée dans la section Certificats & secrets de l'étape 4.
Vous êtes maintenant prêt à configurer vos paramètres d'Approbation à distance dans WorkflowGen.
Ouvrez le Panneau de configuration à partir de la page d'accueil du module d'administration WorkflowGen.
Dans l'onglet Approbation à distance, remplissez le formulaire de la section Serveur de messagerie :
Type : Exchange Online - Authentification moderne
Adresse : outlook.office365.com, ou votre propre nom de domaine Exchange Online
Sécurité : SSL
Adresse email de réponse par défaut : Adresse email de l'utilisateur Office Approbation à distance
Nom d'utilisateur du compte : Nom d'utilisateur de l'utilisateur Office Approbation à distance
ID d'application (client) : L'ID d'application (client) du portail Azure
Secret client : Le secret client qui a été généré dans la section Certificats & secrets du portail Azure
Portée : https://outlook.office365.com/.default&grant_type=client_credentials (remplacez outlook.office365.com par votre propre nom de domaine Exchange Online si nécessaire)
URI du jeton d'accès : https://login.microsoftonline.com/{directory_tenant_ID}/oauth2/v2.0/token (remplacez {directory_tenant_ID} par votre propre ID d'annuaire (locataire) du portail Azure)
Dans la section Approbation à distance :
Cochez Activer pour activer le service d'Approbation à distance
Mettez à jour les autres champs au besoin
Cliquez sur Enregistrer.
Votre intégration d'Approbation à distance avec Exchange Online - Authentification moderne doit maintenant être complète et fonctionnelle.
Azure Active Directory (Azure AD) a été renommé Microsoft Entra ID (ME-ID). Bien que la documentation WorkflowGen ait été mise à jour pour refléter ce changement de nom, les paramètres de l'application WorkflowGen font toujours référence à Azure AD (par exemple, connecteur d'annuaire Azure AD SCIM v2).
De même, certains éléments de configuration ME-ID dans le portail Azure ont été renommés et / ou déplacés. La documentation WorkflowGen a été mise à jour en conséquence, mais il se peut qu'elle ne soit toujours pas tout à fait exacte à cet égard. Consultez la documentation Microsoft Entra ID pour plus d'informations.
Cette section fournit des instructions sur la façon de configurer l'authentification déléguée WorkflowGen avec l'authentification Microsoft Entra ID (ME-ID) via les fournisseurs Microsoft Identity Platform v2.0 ou API endpoint v1, et vous montrera comment configurer une instance WorkflowGen fonctionnelle qui utilise ME-ID pour authentifier vos utilisateurs.
Assurez-vous d'avoir une copie de WorkflowGen sous licence installée et en fonctionnement sur un serveur Web IIS en mode de connexion sécurisé HTTPS.
Vous devez être un administrateur WorkflowGen.
Assurez-vous d'avoir un accès administrateur ME-ID pour pouvoir configurer Azure AD.
Assurez-vous d'avoir provisionné un utilisateur Azure AD existant que vous pouvez authentifier avec WorkflowGen et que l'utilisateur dispose des permissions d'
La configuration de ME-ID se fait en deux parties. D'abord, vous devez enregistrer l'application Web WorkflowGen et la lier à votre instance de WorkflowGen; ensuite, vous devez enregistrer l'API GraphQL de WorkflowGen afin de pouvoir enregistrer d'autres applications personnalisées pour y accéder.
Dans le portail Azure, cliquez sur Inscriptions d'applications dans la section Azure Active Directory.
Cliquez sur Nouvelle inscription et entrez les propriétés :
Nom : WorkflowGen Web app
Vous devriez maintenant voir la page d'aperçu de l'enregistrement de l'application Web WorkflowGen.
Maintenant, vous devez générer une clé secrète client à utiliser par le module d'authentification OIDC de WorkflowGen.
Cliquez sur Ajouter un certificat ou un secret.
Dans la section Secrets client, cliquez sur Nouveau secret client.
Description : Mon secret, ou quelque chose de semblable pour rappeler que ceci est la clé secrète client.
Il n'est plus possible de définir des clés secrètes client pour qu'elles n'expirent jamais. Vous devrez régénérer manuellement une nouvelle clé secrète client tous les deux ans (si l'option 24 mois a été sélectionnée) avant qu'elle n'expire. Ensuite, mettez à jour la clé secrète client utilisée par l'instance WorkflowGen dans son fichier de configuration Web (clé ApplicationSecurityAuthClientSecret).
Pour que la communication entre WorkflowGen et ME-ID fonctionne, vous devez ajouter un autre URI de redirection autorisé à l'application Web WorkflowGen Web app enregistrée.
Cliquez sur Authentification.
Dans la section URI de redirection, cliquez sur Ajouter l'URI.
Entrez les informations suivantes :
URI de redirection : https://<url workflowgen>/auth/logout/return
Pour exposer l'API GraphQL, vous devez ajouter une nouvelle application qui la représentera. Pour ce faire :
Dans le portail Azure, cliquez sur Inscriptions d'applications dans la section Services Azure.
Cliquez sur Nouvelle inscription et renseignez le formulaire des propriétés :
Nom : WorkflowGen GraphQL API
Vous avez maintenant correctement enregistré l'application WorkflowGen GraphQL API dans Azure AD.
Cliquez sur Exposer une API.
À droite de URI ID d'application, cliquez sur Définir et entrez l'URI https://<url workflowgen>/graphql.
📌 Exemple : https://macompagnie.com/wfgen/graphql
Cliquez sur Enregistrer.
Depuis octobre 2021, Azure AD nécessite l'utilisation d'un schéma par défaut ou d'un domaine vérifié pour l'URL AppId sur l'application à locataire unique (voir la documentation Microsoft pour plus d'informations).
La documentation Microsoft sur la façon d'ajouter et de vérifier un domaine personnalisé est disponible .
Dans la page d'inscription de l'application WorkflowGen Web app, cliquez sur Autorisations de l'API.
Cliquez sur Ajouter une autorisation, puis sélectionnez l'onglet Mes API.
Cliquez sur l'application WorkflowGen GraphQL API dans la liste.
Vous devriez maintenant avoir toutes les informations dont vous aurez besoin pour configurer WorkflowGen pour déléguer l'authentification à ME-ID. Voici un résumé :
Un ID client. Ceci est l'ID d'application (client) de l'inscription de l'application WorkflowGen Web app dans Azure AD. Vous pouvez le trouver sur sa page d'aperçu.
Une clé secrète client. Ceci est la clé secrète client précédemment générée à l'étape 2 pour l'application WorkflowGen Web app.
Une audience. Ceci est la propriété Application ID URI (p.ex. : https://<url workflowgen>/graphql
Vous devriez maintenant avoir toutes les informations requises pour lier votre instance de WorkflowGen à ME-ID.
Vous devez maintenant configurer WorkflowGen pour déléguer l'authentification à ME-ID.
web.config de WorkflowGenOuvrez le fichier web.config de WorkflowGen et ajoutez et / ou mettez à jour les propriétés suivantes sous <appSettings>:
Pour Microsoft Identity Platform v2.0 (recommandé) :
Pour Azure v1 :
✏️ Note : Check session iFrame (p.ex. ApplicationSecurityAuthCheckSessionUrl) n'est pas supporté dans Microsoft Identity Platform v2.0.
Remplacez <CLIENT ID>
Tableau des options web.config
WorkflowGen devrait maintenant être lié à votre ME-ID. La dernière chose qui reste à faire est de configurer quelques options supplémentaires afin de terminer le « câblage interne » de WorkflowGen afin qu'il puisse déléguer son authentification.
WorkflowGen utilise un jeton de session interne pour gérer la session utilisateur et identifier l'utilisateur actuel pour toutes les requêtes HTTP adressées à l'application Web une fois que l'utilisateur s'est connecté à ME-ID. Pour générer un jeton de session, vous devez ajouter quelques paramètres supplémentaires au fichier web.config.
Ouvrez le fichier web.config de WorkflowGen et ajoutez et / ou mettez à jour la propriété suivante sous <appSettings> :
Remplacez <SECRET> par une valeur personnalisée qui ne peut pas être devinée, telle qu'un UUID ou un mot de passe complexe.
Le secret ne sera accessible qu'à l'intérieur de votre instance de WorkflowGen, donc lors de la génération d'un jeton de session, WorkflowGen le signera avec ce secret afin de vérifier la validité de tous les jetons de session qui lui sont transmis.
Vous devez maintenant activer la délégation en remplaçant le système d'authentification dans IIS et faire pointer les modules de WorkflowGen au module d'authentification correct.
Dans Gestionnaire IIS, cliquez sur le site Web WorkflowGen dans l'arborescence.
Cliquez sur le bouton Authentification.
Activez Authentification anonyme et désactivez toutes les autres authentifications.
Répétez ces étapes pour toutes les sous-applications.
web.config des sous-applicationsCertaines sous-applications doivent faire vérifier leur authentification par le module d'authentification spécial Advantys.Security.JWTAuthenticationModule WorkflowGen, mais certaines autres sous-applications (telles que /wfgen/auth, /wfgen/hooks et /wfgen/scim) ne devraient pas le faire car elles sont publics ou ne font pas partie du système d'authentification global.
Ajoutez la propriété suivante au fichier web.config de WorkflowGen :
Si vous avez développé des formulaires Web personnalisés avec leurs propres dossiers \bin, vous devez copier les assemblies .NET et les bibliothèques de dépendances suivants de \wfgen\bin dans le dossier \bin de chaque formulaire Web personnalisé (\wfgen\wfapps\webforms\bin) :
Si vous avez sauté les étapes de la section d' plus tôt, il est nécessaire d'appliquer la configuration dans la section .
Vous devriez maintenant avoir une instance de WorkflowGen en fonctionnement avec l'authentification déléguée à Microsoft Entra ID via le protocole OpenID Connect. Assurez-vous d'avoir approvisionné vos utilisateurs à WorkflowGen afin qu'ils puissent accéder à WorkflowGen.
Cette configuration présente quelques inconvénients. Par exemple, l'application mobile ne sera pas compatible avec cette configuration.
Par défaut, le seul destinataire du jeton d'accès est l'application WorkflowGen GraphQL API. Cela signifie que le jeton d'accès ne peut être utilisé que pour envoyer des requêtes à l'API GraphQL uniquement. Afin d'utiliser le même jeton d'accès pour appeler vos propres API à partir de WorkflowGen (par exemple, des formulaires Web), vous devrez effectuer les étapes suivantes dans votre portail Azure, puis modifier le fichier web.config de WorkflowGen.
Dans le portail Azure, cliquez sur Inscriptions d'applications dans la section Services Azure.
Cliquez sur Nouvelle inscription et renseignez le formulaire des propriétés :
Nom : Mes API
Cliquez sur Exposer une API.
À droite de URI ID d'application, cliquez sur Définir et entrez l'URI api://mes-api.
Cliquez sur Enregistrer.
Cliquez sur Manifeste.
Recherchez la propriété JSON appRoles et ajoutez l'objet JSON suivant au tableau JSON :
✏️ Note : Remplacez<NEW ID> par la valeur générée par la commande PowerShell[guid]::NewGuid().ToString() ou utilisez n'importe quel générateur de GUID.
Mes APIDans la page d'inscription de l'application WorkflowGen Web app, cliquez sur API autorisées.
Dans la section Autorisations configurées, cliquez sur Ajouter une autorisation.
Cliquez sur Mes API, puis choisissez l'application Mes API dans la liste.
Mes APIPour chacune de vos applications automatisées dans Azure (par exemple, un script côté serveur, un service en arrière-plan ou une application) qui nécessite un accès à l'application Mes API, procédez comme suit :
Accédez à la page d'inscription de l'application, puis cliquez sur API autorisées.
Dans la section Autorisations configurées, cliquez sur Ajouter une autorisation.
Cliquez sur Mes API, puis sélectionnez l'application Mes API dans la liste.
web.config de WorkflowGen :Ouvrez le fichier web.config de WorkflowGen, ajoutez et / ou mettez à jour les paramètres d'application suivants, puis enregistrez le fichier :
La classe WorkflowPage de la bibliothèque WorkflowGen.My fournit une méthode publique CurrentUserAccessToken pour récupérer facilement le jeton d'accès partagé de l'utilisateur actuel qui peut être utilisé pour interroger l'API GraphQL et vos API tierces. Voir l'extrait de code ci-dessous.
WorkflowGen supporte seulement les requêtes à l'API SOAP en utilisant les méthodes d'authentification classiques. Si vous devez toujours utiliser cette API, vous devez effectuer quelques étapes additionnelles pour la configurer correctement. Pour ce faire :
Créez un nouvel annuaire WorkflowGen (utilisateurs et groupes) séparé pour les utilisateurs de l'API SOAP.
Approvisionnez-le avec des utilisateurs et des groupes au besoin.
Dans Gestionnaire IIS, cochez la méthode d'authentification De base pour l'application \wfgen\ws.
Microsoft Entra ID supporte la , un standard de « extension draft », en plus du standard principal de OpenID Connect. Ce standard définit les règles pour gérer la session SSO du fournisseur depuis le client. Par exemple, si un utilisateur se déconnecte de sa session ME-ID depuis n'importe quel appareil, un client Web régulier recevra un message qui lui permettra d'enlever la session locale de cet utilisateur. WorkflowGen supporte cette fonctionnalité quand l'authentification déléguée est activée avec ME-ID.
Le tableau ci-dessous liste toutes les options configurables dans WorkflowGen que vous pouvez utiliser pour personnaliser votre expérience d'authentification; elles se trouvent dans le fichier web.config de WorkflowGen.
Si le portail utilisateur ou le module d'administration de WorkflowGen est affiché sans le menu d'en-tête principal, cette fonctionnalité ne fonctionnera pas. Par exemple, ce scénario pourrait se produire lorsque la page d'accueil du portail ou un formulaire de suivi de demande est affiché dans une iFrame dans une solution externe.
Si, pour une raison quelconque, vous ne pouvez pas enregistrer l'application WorkflowGen GraphQL API et que vous n'avez pas besoin de l'authentification API GraphQL configurée avec le fournisseur, vous pouvez éviter de créer l'enregistrement et configurer WorkflowGen avec l'API Microsoft Graph, qui est incluse par défaut dans toutes les inscriptions d'applications. Pour ce faire, il vous suffit de modifier certaines options de configuration dans le fichier web.config :
Remplacez la clé ApplicationSecurityAuthAudience par l'URL de l'API Microsoft Graph, par exemple https://graph.microsoft.com.
Définissez l'option ApplicationSecurityAuthDecodeAccessToken sur N.
Gardez à l'esprit qu'en définissant ApplicationSecurityAuthDecodeAccessToken=N, la date d'expiration du jeton de session généré par WorkflowGen sera basée sur celle du jeton ID.
Vous ne pourrez pas utiliser le jeton d'accès reçu de ME-ID pour interroger l'API GraphQL. Ce jeton d'accès vous donnera accès à l'API Microsoft Graph et à rien d'autre. Pour interroger l'API GraphQL, vous devrez configurer son authentification avec une autre méthode, comme l'authentification de base.
Le mode de chiffrement AES et sa clé sont requis pour que l'authentification fonctionne.
Comptes dans cet annuaire d'organisation uniquement (Default Directory uniquement - Locataire unique) ✏️ Note : En fonction du contexte, vous devez choisir la bonne option pour votre cas d'utilisation pour la valeur Types de comptes pris en charge.
URI de redirection :
Plateforme : Web
Valeur : https://<url workflowgen>/auth/callback
📌 Exemple : https://macompagnie.com/wfgen/auth/callback
Cliquez sur S'inscrire en bas de la page.
Date d'expiration : Choisissez 730 jours (24 mois) ou la période d'expiration souhaitée.
Cliquez sur Ajouter.
La clé secrète client générée automatiquement est maintenant affichée sous la colonne Valeur. Copiez la valeur de la clé secrète client et enregistrez-la dans un endroit sûr, car vous ne pourrez plus la récupérer par la suite.
https://macompagnie.com/wfgen/auth/logout/returnhttps://<url workflowgen>/auth/callbackCliquez sur Enregistrer en haut de la section.
Comptes dans cet annuaire d'organisation uniquement (Default Directory uniquement - Locataire unique)
Cliquez sur S'inscrire en bas de la page.
Cliquez sur Ajouter une étendue et entrez les informations suivantes :
Nom de l'étendue : defaut
Qui peut accepter ? : Administrateurs et utilisateurs
Nom d'affichage du consentement administrateur : Accès par défaut à l'API WorkflowGen GraphQL
Description du consentement administrateur : Permet à l'application d'accéder à l'API WorkflowGen GraphQL.
Nom d'affichage du consentement de l'utilisateur : Accès par défaut à l'API WorkflowGen GraphQL
Description du consentement de l'utilisateur : Permet à l'application d'accéder à l'API WorkflowGen GraphQL
Cliquez sur Ajouter une étendue.
Cliquez sur Autorisations déléguées et cochez defaut dans la colonne Autorisation.
Cliquez sur Ajouter des autorisations.
Dans la page API autorisées, cliquez sur Accorder un consentement d'administrateur pour <votre nom de locataire>, puis cliquez sur Oui.
WorkflowGen GraphQL APILe point de terminaison des métadonnées. Cette URL est liée à votre annuaire ME-ID. Pour la trouver :
Accédez à la page Vue d'ensemble et copiez la valeur ID de locataire.
L'URL du point de terminaison des métadonnées est créée en remplaçant <Tenant ID> par votre ID de locataire comme suit :
Pour Microsoft Identity Platform v2.0 (recommandé) :
Pour Azure v1 :
WorkflowGen Web appRemplacez <CLIENT SECRET> par la clé secrète générée par l'inscription de l'application WorkflowGen Web app de ME-ID.
Remplacez <METADATA URL> par l'URL du point de terminaison de métadonnées que vous avez créée précédemment à partir de la valeur Tenant ID de votre ME-ID.
Pour Microsoft Identity Platform v2.0, remplacez <url workflowgen> par votre URL WorkflowGen dans la valeur de la clé ApplicationSecurityAuthAdditionalScopes (p.ex. : https://macompagnie.com/wfgen/graphql/default) si vous avez configuré l'enregistrement de l'application WorkflowGen GraphQL API (étapes 4 à 6). Sinon, supprimez complètement la clé ApplicationSecurityAuthAdditionalScopes.
Pour Azure v1, remplacez <CHECK SESSION URL> (qui est généralement https://login.microsoftonline.com/<Tenant ID>/oauth2/checksession) par la valeur de la propriété check_session_iframe du point de terminaison de métadonnées. Pour ce faire, vous devrez envoyer une requête HTTP GET à l'URL de votre point de terminaison de métadonnées (p.ex. : https://login.microsoftonline.com/<Tenant ID>/.well-known/openid-configuration), puis copier et coller la valeur. Voir les exemples ci-dessous sur la façon de demander le point de terminaison de métadonnées.
Exemple de requête Linux / macOS :
✏️ Note : Enlevez | python -m json.tool si vous n'avez pas Python; ceci est pour l'impression automatique (« pretty printing »).
Exemple de requête Windows PowerShell :
Le nom de la revendication contenue dans le jeton d'accès qui identifie l'utilisateur dans WorkflowGen. Il est utilisé par WorkflowGen pour générer un jeton de session ainsi que par l'API GraphQL en récupérant un jeton d'accès. ✏️ Note : Il est recommandé de garder la valeur par défaut.
ApplicationSecurityAuthAccessTokenUsernameClaim
Cette valeur est utilisée par l'API GraphQL lors de la réception d'un jeton d'accès.
✏️ Note : Il est recommandé de garder la valeur par défaut.
ApplicationSecurityAuthClockTolerance
Cette valeur est utilisée lors de la vérification d'un jeton dans WorkflowGen. Il est essentiellement pour gérer des différences mineures entre les horloges des serveurs. ✏️ Note : Il est recommandé de garder la valeur par défaut.
ApplicationSecurityAuthSessionRefreshEnableIFrame
Lorsqu'elle est activée (Y), cette option active la fonctionnalité d'auto-rafraîchissement de session à l'aide d'un <iframe> invisible. Cela permet aux utilisateurs d'entrer leurs mots de passe moins souvent en actualisant leur session en arrière-plan pendant qu'ils travaillent.
✏️ Note : Cette option est uniquement disponible lorsque WorkflowGen est configuré avec l'authentification OIDC.
Advantys.My.dll
Advantys.Security.dll
Newtonsoft.Json.dll
jose-jwt.dll
Comptes dans cet annuaire d'organisation uniquement (Locataire unique)
✏️ Note : Selon le contexte, vous devez choisir la bonne option pour votre cas d'utilisation pour la valeur Types de comptes pris en charge.URI de redirection : Laissez ce champ vide
Cliquez sur S'inscrire en bas de la page.
Nom de l'étendue : wfgen-graphql-full-access
Qui peut accepter ? : Administrateurs et utilisateurs
Nom d'affichage du consentement administrateur : Accès complet à l'API WorkflowGen GraphQL
Description du consentement administrateur : Permet à l'application d'accéder à l'API WorkflowGen GraphQL.
Nom d'affichage du consentement de l'utilisateur : Accès complet à l'API WorkflowGen GraphQL
Description du consentement de l'utilisateur : Allows the application to get access to WorkflowGen GraphQL API.
Cliquez sur Ajouter une étendue.
Ajoutez toute autre étendue qui semble nécessaire pour vos autres API.
Cliquez sur Autorisations déléguées et cochez wfgen-graphql-full-access dans la colonne Autorisation.
Cliquez sur Ajouter des autorisations.
Dans la page API autorisées, cliquez sur Accorder un consentement d'administrateur pour <votre nom de locataire>, puis cliquez sur Yes.
wfgen-graphql-full-access-role dans la colonne Autorisation.
Cliquez sur Ajouter des autorisations.
Dans la page API autorisées, cliquez sur Accorder un consentement d'administrateur pour <votre nom de locataire>, puis cliquez sur Oui.
web.config\Inetpub\wwwroot\wfgen<location path="ws" inheritInChildApplications="false">Valeur de la portée GraphQL personnalisée à vérifier lors de la validation des portées autorisées dans le jeton d'accès renvoyé par le fournisseur OIDC.
ApplicationSecurityAuthGraphQLAppRole
Valeur de rôle d'application GraphQL personnalisée qui sera vérifiée lors de la validation des rôles dans le jeton d'accès renvoyé par le fournisseur OIDC dans un flux d'informations d'identification client.
✏️ Note : Disponible uniquement pour le fournisseur ms-identity-v2.
Option
Description
ApplicationSecurityAuthProvider
Le nom du fournisseur d'identité supporté par WorkflowGen. À présent, seulement Microsoft Entra ID, Microsoft Identity Platform v2.0, Auth0, AD FS et Okta sont supportés. Valeur : azure-v1, ms-identity-v2,auth0, adfs, ou okta
ApplicationSecurityAuthClientId
Chaque fournisseur d'identité génère un code qui identifie uniquement votre application. Dans ce cas, cette valeur est le code qui identifie uniquement l'application Web WorkflowGen dans ME-ID, Auth0, AD FS ou Okta.
ApplicationSecurityAuthClientSecret
Comme pour l'ID client, cette valeur est aussi générée par le fournisseur d'identité, mais est plutôt comme un mot de passe d'utilisateur. Il est important de le garder secret parce qu'un logiciel malveillant ayant accès pourrait agir au nom de l'application. Cette valeur doit être générée explicitement dans ME-ID.
ApplicationSecurityAuthMetadataUrl
Le point de terminaison fourni par le fournisseur d'identité qui supporte le standard OpenID Connect Discovery. Il permet à WorkflowGen de récupérer des informations publiques sur votre domaine ME-ID, sans lequel vous devrez effectuer beaucoup plus de configurations dans le fichier web.config. Notez que l'URL du point de terminaison des métadonnées est différente pour Microsoft Identity Platform v2.0 et Azure v1.
ApplicationSecurityAuthAppIdClaim
Le nom de la revendication contenu dans le jeton d'accès obtenu du fournisseur d'identité qui identifie uniquement un client non-interactif. Il est utilisé seulement si vous avez une application machine-à-machine qui doit accéder à l'API GraphQL. Pour le configurer, voir la section Configuration de Microsoft Entra ID pour les applications monopage. ✏️ Note : Il est recommandé de garder la valeur par défaut.
Option
Description
ApplicationSecurityAuthSessionTokenCookie
Le nom du cookie de session généré par le module d'authentification. Valeur par défaut : wfgen_token
✏️ Note : Ceci est utile quand vous avez de multiples instances de WorkflowGen en fonctionnement auxquelles vous voulez accéder lorsque vous y êtes authentifié en même temps.
ApplicationSecurityAuthSessionTimeOut
La durée de la session en secondes. Sa valeur par défaut est le temps d'expiration du jeton d'ID reçu du fournisseur. Valeur par défaut : la valeur d'expiration (« exp value » du jeton ME-ID
ApplicationSecurityAuthMobileSessionTimeOut
La durée de la session en secondes lorsqu'elle est demandée par des appareils mobiles sur le point de terminaison de jeton. Valeur par défaut : 7200 secondes
ApplicationSecurityAuthAudience
Le destinataire prévu du jeton d'accès (par exemple, l'API cible). Valeur par défaut :https://<url workflowgen>/graphql
ApplicationSecurityAuthAdditionalScopes
Portées supplémentaires à ajouter à la demande d'authentification. Elles apparaîtront dans le contenu du jeton d'accès.
✏️ Note : Les portées openid, profile et email sont toujours dans la requête.
ApplicationSecurityAuthUsernameClaim
ApplicationSecurityAuthGraphQLScope
Azure Files est un service dans le cloud qui offre un service de sauvegarde de stockage pour les instances de WorkflowGen hébergées dans le cloud Azure ou sur place via un partage de fichiers utilisant le procotole SMB standard. Ce service fournit plusieurs bonnes options pour L'accès au données, le partage, la synchronisation et la redondance pour usage dans des scénarios d'une ou de plusieurs instances de WorkflowGen.
Pour plus d'informations sur les avantages ou des cas d'usage d'Azure Files, voir l'article Microsoft .
La section suivante contient des instructions et des recommandations sur la configuration d'un partage Azure Files pour utiliser dans WorkflowGen.
https://login.microsoftonline.com/<Tenant ID>/v2.0/.well-known/openid-configurationcurl "<METADATA URL>" | python -m json.tool<!-- Microsoft Identity Platform v2 -->
<add key="ApplicationSecurityAuthProvider" value="ms-identity-v2"/>
<add key="ApplicationSecurityAuthClientId" value="<CLIENT ID>" />
<add key="ApplicationSecurityAuthClientSecret" value="<CLIENT SECRET>" />
<add key="ApplicationSecurityAuthMetadataUrl" value="<METADATA URL>" />
<add key="ApplicationSecurityAuthAppIdClaim" value="appid" />
<add key="ApplicationSecurityAuthUsernameClaim" value="preferred_username" />
<add key="ApplicationSecurityAuthClockTolerance" value="60" />
<add key="ApplicationSecurityAuthSessionRefreshEnableIFrame" value="Y"/>
<add key="ApplicationSecurityAuthAccessTokenUsernameClaim" value="upn" />
<add key="ApplicationSecurityAuthAdditionalScopes" value="https://<url workflowgen>/graphql/default" /><!-- Azure v1 auth -->
<add key="ApplicationSecurityAuthProvider" value="azure-v1"/>
<add key="ApplicationSecurityAuthClientId" value="<CLIENT ID>" />
<add key="ApplicationSecurityAuthClientSecret" value="<CLIENT SECRET>" />
<add key="ApplicationSecurityAuthMetadataUrl" value="<METADATA URL>" />
<add key="ApplicationSecurityAuthAppIdClaim" value="appid" />
<add key="ApplicationSecurityAuthUsernameClaim" value="upn" />
<add key="ApplicationSecurityAuthClockTolerance" value="60" />
<add key="ApplicationSecurityAuthSessionRefreshEnableIFrame" value="Y"/>
<add key="ApplicationSecurityAuthCheckSessionUrl" value="<CHECK SESSION URL>" /> <!-- Auth -->
<add key="ApplicationSecurityAuthSessionTokenSigningSecret" value="<SECRET>" /><configuration>
<system.webServer>
<modules>
<add name="ApplicationSecurityAuthenticationModule" type="Advantys.Security.Http.JWTAuthenticationModule" />
</modules>
</system.webServer>
</configuration>{
"allowedMemberTypes": [
"Application"
],
"description": "Allows the application to get access to WorkflowGen GraphQL API.",
"displayName": "wfgen-graphql-full-access-role",
"id": "<NEW ID>",
"isEnabled": true,
"lang": null,
"origin": "Application",
"value": "wfgen-graphql-full-access-role"
}<add key="ApplicationSecurityAuthAudience" value="api://my-apis"/>
<add key="ApplicationSecurityAuthAdditionalScopes" value="api://my-apis/wfgen-graphql-full-access" />
<add key="ApplicationSecurityAuthGraphQLScope" value="wfgen-graphql-full-access" />
<add key="ApplicationSecurityAuthGraphQLAppRole" value="wfgen-graphql-full-access-role" />protected void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
string accessToken = this.CurrentUserAccessToken();
// Use accessToken to query GraphQL API or your third-party APIs...
}<configuration>
<appSettings>
<add key="ApplicationSecurityAuthAudience" value="https://graph.microsoft.com"/>
<add key="ApplicationSecurityAuthDecodeAccessToken" value="N"/>
</appSettings>
</configuration><system.webServer>
<modules>
<remove name="ApplicationSecurityAuthenticationModule" />
</modules>
</system.webServer>https://login.microsoftonline.com/<Tenant ID>/.well-known/openid-configurationInvoke-RestMethod -Uri "<METADATA URL>" -Method GET | ConvertTo-JSONAvant de choisir Azure Files comme le service de sauvegarde de stockage principal pour votre WorkflowGen, il faut examiner quelques scénarios de configuration de performance pour votre stockage des données :
Dans une configuration avec une seule instance de WorkflowGen
Hébergée sur une machine virtuelle Azure :
Pour la meilleure performance, utilisez un disque SSD local.
Pour une bonne performance, utilisez un partage d'Azure Files dans votre région géographique.
Hébergée sur place :
Pour la meilleure performance, utilisez un disque SSD local.
Pour une performance de base, utilisez un partage Azure Files dans la région géographique la plus proche de votre serveur pour la plus basse latence.
Dans une configuration « web farm » (batterie de serveurs Web)
Hébergée sur une machine virtuelle Azure :
Pour la meilleure performance, utilisez un partage de fichiers sur un serveur de fichiers assuré par le stockage SSD. ✏️ Note : Un des serveurs Web WorkflowGen ou une machine virtuelle dédiée peut agir en tant que serveur de fichiers.
Assurez-vous d'avoir une instance de WorkflowGen en fonctionnement avec accès Internet.
Assurez-vous de connaître l'adresse de l'instance.
Le port TCP 445 doit être ouvert pour la sortie de l'instance.
La version 5.1 ou supérieure de Windows PowerShell est requise sur l'instance pour effectuer une des étapes de la configuration.
Une inscription Azure active.
Vous devez avoir les permissions requises pour modifier le Windows de l'instance de WorkflowGen, p.ex. le privilège administrateur.
Vous devez avoir les permissions requises pour modifier les comptes du service de stockage dans le portal Azure.
Dans le portail Azure, sélectionnez le service Comptes de stockage.
Ajoutez un nouveau compte de stockage.
Entrez un nom.
✏️ Note : Le nom de compte de stockage wfgendatastorage sera utilisé comme exemple dans cette section.
Type de compte : Choisissez Stockage (v1 à usage général) ou StorageV2 (v2 à usage général).
Emplacement : Choisissez un emplacement dans la même region de votre machine virtuelle Azure, ou celui le plus proche de votre emplacement.
Performance : Choisissez Standard.
Choisissez votre abonnement.
Créez un nouveau groupe de ressources.
✏️ Note : Le nom de groupe de ressources wfgenresourcegroup sera utilisé dans cette section.
Vous pouvez laisser le reste des configurations réglées sur leurs valeurs par défaut ou vous pouvez les personnaliser selon vos besoins.
Cliquez sur Vérifier + créer.
Pour plus d'informations sur les comptes de stockage, voir l'article À propos des comptes de stockage Azure.
Pour créer un compte de stockage via Azure CLI (interface de ligne de commande Azure), connectez-vous d'abord à votre compte Azure avec Azure CLI.
Le script suivant crée un compte de stockage dans Azure. La variable de nom de groupe de ressources ($resourceGroup) et la variable de compte de stockage ($storageAccount) doivent être mises à jour.
Dans le service Comptes de stockage, choisissez wfgendatastorage.
Dans la section Vue d'ensemble ou la section SERVICE DE FICHIERS, choisissez Fichiers.
Ajoutez un nouveau Partage de fichiers.
Entrez un nom.
✏️ Note : Le nom de stockage wfgenshare sera utilisé comme exemple dans cette section.
Entrez un quota selon vos besoins.
Cliquez sur OK.
Pour plus d'informations sur le partage des fichiers, voir l''article Créer un partage de fichiers SMB Azure.
Pour créer un partage de fichiers via Azure CLI, connectez-vous d'abord à votre compte Azure avec Azure CLI.
Le script suivant crée un partage de fichiers dans Azure. La variable de compte de stockage ($storageAccount) et la variable de partage de fichier ($share) doivent être mises à jour.
Connectez-vous à votre instance de WorkflowGen depuis votre compte d'administration.
Lancez une instance de Windows PowerShell 5.1 en tant qu'administrateur.
Testez le port TCP 445 pour la sortie en exécutant la commande suivantes dans PowerShell :
✏️ Note : Assurez-vous de remplacer wfgendatastorage dans les instructions ci-dessus par votre nom de compte de stockage.
Si le test réussit, continuez à la prochaine étape. Sinon, contactez votre administrateur de réseau pour ouvrir le port TCP 445 pour la sortie.
Installez ou mettez à jour le module d'Azure PowerShell dans PowerShell :
Pour plus d'informations, voir l'article .
Dans la console de gestion de l'ordinateur de Windows, créez un utilisateur local en tant que compte de service qui sera utilisé pour le pool d'applications IIS de WorkflowGen :
Entrez un nouveau nom d'utilisateur et un nouveau mot de passe.
✏️ Note : Le nom d'utilisateur wfgen_service sera utilisé comme exemple dans cette section.
Cochez L'utilisateur ne peut pas changer de mot de passe
Connectez-vous à votre instance de WorkflowGen depuis le compte wfgen_service.
Ouvrez une instance de Windows PowerShell 5.1 en tant qu'administrateur.
Connectez-vous à votre compte Microsoft Azure dans PowerShell :
Si vous rencontrez des problèmes de sécurité lors de la procédure de connexion à Microsoft Azure, vous devez ajouter manuellement https://login.microsoftonline.com/ et tous les URIs des sites Web associés à la zone des sites approuvés dans les options d'Internet Explorer.
Dans la fenêtre Microsoft Azure, connectez-vous au compte Azure que vous avez utilisé pour créer votre compte de stockage.
Si vous vous êtes connecté à votre compte Azure avec succès, PowerShell va afficher les informations suivantes :
Persistez les informations d'identification (« credential ») dans Windows pour le compte wfgen_service dans PowerShell :
✏️ Note : Assurez-vous de remplacer wfgendatastorage et wfgenresourcegroup dans les instructions ci-dessus par votre nom de compte de stockage et votre nom de groupe de ressources.
Les informations d'identification doivent être persistées pour le compte wfgen_service en cas de redémarrage du serveur Windows.
Si les informations d'identification sont enregistrées avec succès, le message suivant devrait être affiché :
Vérifiez si les informations d'identité ont été enregistrées pour la compte de stockage dans PowerShell :
Si l'enregistrement est réussi, vous devriez ensuite voir :
Testez le partage Azure Files dans l'explorateur de fichiers de Windows.
✏️ Note : Assurez-vous de remplacer wfgendatastorage et wfgenshare dans les instructions ci-dessus par votre nom de compte de stockage et votre nom de partage de fichiers.
Pour plus d'informations sur le partage de fichiers dans Windows, voir l'article Monter un partage de fichiers SMB Azure sur Windows.
Connectez-vous à votre instance de WorkflowGen depuis votre compte d'administration.
Ouvrez la console Gestionnaire IIS.
Modifiez le pool d'applications de WorkflowGen pour utiliser le compte personnalisé wfgen_service avec les réglages suivants :
Identité : wfgen_service
Charger le profil utilisateur : True
Enregistrez les modifications, puis redémarrez IIS.
Connectez-vous à votre instance de WorkflowGen depuis le compte wfgen_service.
Copiez tous les fichiers de WorkflowGen au partage Azure Files dans PowerShell :
✏️ Note : Assurez-vous de remplacer C:\inetpub\wwwroot\wfgen\App_Data, wfgendatastorage et wfgenshare dans les instructions ci-dessus par le nom du dossier App_Data, le nom de votre compte de stockage et le nom de votre partage de fichiers de votre instance de WorkflowGen.
Mettez à jour le fichier de configuration Web de WorkflowGen :
✏️ Note : Assurez-vous de remplacer wfgendatastorage et wfgenshare dans les instructions ci-dessus par le nom de votre compte de stockage et le nom de votre partage de fichiers de votre instance de WorkflowGen.
Ouvrez le module d'administration ou le portail utilisateur de WorkflowGen et lancer un nouveau test de demande.
Utilisez une des méthodes suivantes :
Dans votre compte de stockage dans le portail Azure :
Utilisez l'outil Storage Explorer (preview) (Explorateur du stockage)
ou
Naviguez dans le partage de fichiers wfgenshare sous la section Files.
OU
Montez le partage de fichiers wfgenshare dans Windows :
Naviguez au partage de fichiers wfgenshare dans la section Files.
Cliquez sur Connect pour afficher un onglet avec des instructions de connexion.
Vous devriez maintenant pouvoir parcourir le contenu du disque Z dans l'explorateur de fichiers de Windows.
Si vous rencontrez des problèmes, consultez l'article Résoudre les problèmes Azure Files.
Cette section fournit les instructions sur comment créer et configurer votre base de données SQL Azure.
L'instance de la base de données SQL Azure doit être créée dans le . Consultez l'article Microsoft pour des informations sur comment créer la base de données. Une fois que vous avez complété les instructions, vous aurez :
Le nom du serveur SQL Azure
Les informations d'identification du compte administrateur
Une règle de pare-feu au niveau du serveur pour le serveur de votre adresse IP
Le nom de votre base de données SQL Azure
Connectez-vous à votre instance de base de données SQL Azure depuis le compte d'administrateur que vous avez créé dans ou dans .
Vous devez créer un compte utilisateur SQL Server avec les permissions db_datareader et db_datawriter. Consultez l'article Microsoft ou bien exécutez le script dans l'éditeur de requête de la base de données SQL ou dans SQL Management Studio (la base de données master doit être sélectionnée) :
La base de données SQL Azure peut également être créée via des scripts Azure CLI (interface de ligne de commande Azure). Pour ce faire :
.
Copiez le script create.sql de la base de données WorkflowGen dans le dossier C:\Azure\setup\sql. Si vous souhaitez modifier le chemin, vous devez également modifier la variable $sqlScriptPath dans le script suivant.
Les scripts suivants créent le serveur SQL et la base de données SQL. La variable de mot de passe de l'administrateur de la base de données SQL ($sqlAdminPassword) doit être mise à jour; le nom du groupe de ressources ($resourceGroup), le niveau tarifaire ($sqlServiceObjective) et le chemin du script SQL ($sqlScriptPath) doivent également être mis à jour. (Pour plus d'informations sur le niveau tarifaire, voir .)
Option A : Mode base de données autonome
Le script suivant crée l'utilisateur de la base de données (wfgen_user) dans une base de données autonome. La variable de mot de passe de l'utilisateur de la base de données SQL ($sqlUserPassword) doit être mise à jour.
✏️ Note : N'exécutez pas le script Remove my public IP si vous devez accéder à la base de données à partir de votre bureau ou si votre serveur WorkflowGen n'est pas hébergé par Azure.
Option B : Mode base de données standard
Le script suivant crée l'utilisateur de la base de données (wfgen_user
Ouvrez le fichier web.config de WorkflowGen et ajouter le nœud suivant sous <connectionStrings> :
Remplacez <server name> par le nom du serveur (p.ex. workflowgen.database.windows.net).
Remplacez <database name> par le nom de la base de données (p.ex. WFGEN).
Remplacez

Test-NetConnection -ComputerName "wfgendatastorage.file.core.windows.net" -Port 445# Configuration variables
$location="East US"
$resourceGroup="wfgenresourcegroup"
$storageAccount="wfgendatastorage"
# Create a Storage account
az storage account create `
--name $storageAccount `
--resource-group $resourceGroup `
--location $location# Configuration variables
$storageAccount="wfgendatastorage"
$share="wfgenshare"
# Create the file shares
az storage share create `
--name $share `
--account-name $storageAccount `Pour une bonne performance, utilisez un partage Azure Files dans votre région géographique.
Hébergée sur place :
Pour la meilleure performance, utilisez un partage sur un serveur de fichiers assuré par le stockage SSD. ✏️ Note : Un des serveurs WorkflowGen ou un serveur dédié peut agir en tant que serveur de fichiers.
Pour une performance de base, utilisez un partage Azure Files dans la région géographique la plus proche de votre serveur pour la plus basse latence.
Cochez Le mot de passe n'expire jamais.
Cliquez sur Créer.
Affectez l'utilisateur wfgen_service au groupe IIS_IUSRS.
Affectez l'utilisateur au groupe Remote Desktop Users si l'instance est hébergée sur un serveur distant.
Z
✏️ Note : Assurez-vous de remplacer la chaîne key assignée à $acctKey, wfgendatastorage et wfgenshare dans les instructions ci-dessus par un de vos noms Access keys, un de vos noms storage account et un de vos noms file shares de votre compte de stockage.
DISQUE:\temp.
Ouvrez le dossier source DISQUE:\temp\pack\Databases\MsSQLServer et exécutez le script SQL de création de base de données create.sql sur la nouvelle instance de la base de données.
$sqlUserPassword
✏️ Note : N'exécutez pas le script Remove my public IP si vous devez accéder à la base de données à partir de votre bureau ou si votre serveur WorkflowGen n'est pas hébergé par Azure.
<database user>wfgen_userRemplacez <password> par le mot de passe de l'utilisateur de la base de données (p.ex. Admin123!).
Install-Module -Name Az -AllowClobber
Import-Module -Name AzConnect-AzAccount Account : <votre-nom-de-compte-microsoft-azure>
SubscriptionName : <votre-nom-d'abonnement>
TenantId : <votre-id-locataire>
Environment : AzureCloud$resourceGroupName = "wfgenresourcegroup"
$storageAccountName = "wfgendatastorage"
$storageAccount = Get-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName
$storageAccountKeys = Get-AzStorageAccountKey -ResourceGroupName $resourceGroupName -Name $storageAccountName
Invoke-Expression -Command "cmdkey /add:$([System.Uri]::new($storageAccount.Context.FileEndPoint).Host) /user:AZURE\$($storageAccount.StorageAccountName) /pass:$($storageAccountKeys[0].Value)"CMDKEY: Credential added successfully.cmdkey /listTarget: Domain:target=wfgendatastorage.file.core.windows.net
Type: Domain Password
User: AZURE\wfgendatastorage\\wfgendatastorage.file.core.windows.net\wfgenshare Copy-Item -Path "C:\inetpub\wwwroot\wfgen\App_Data" -Recurse -Destination "\\wfgendatastorage.file.core.windows.net\wfgenshare" -Container <add key="ApplicationDataPath" value="\\wfgendatastorage.file.core.windows.net\wfgenshare\App_Data" /> $acctKey = ConvertTo-SecureString -String "aftEV8YUKljZeiwKP9Ts/kZysDASFVFsvSqAvWVjMb3E+QP4BWpVSNLVyqB2ScZjGtEIg/k0P7WBIg==" -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential -ArgumentList "Azure\wfgendatastorage", $acctKey
New-PSDrive -Name Z -PSProvider FileSystem -Root "\\wfgendatastorage.file.core.windows.net\wfgenshare" -Credential $credential -Persist -- Replace <database name>, <database user>, and <password> with the ones you choose (e.g. WFGEN, wfgen_user, <YourPWD>!)
-- Create SQL Login template for Azure SQL Database and Azure SQL Data Warehouse Database
CREATE LOGIN <database user>
WITH PASSWORD = '<password>'
GO
-- Create SQL Login template for Azure SQL Database and Azure SQL Data Warehouse Database
CREATE USER <database user>
FROM LOGIN <database user>
WITH DEFAULT_SCHEMA = <database name>
GO
-- Add user to the database owner role
EXEC sp_addrolemember N'db_datawriter', N'<database user>'
EXEC sp_addrolemember N'db_datareader', N'<database user>'
GO# Configuration variables
$resourceGroup= "workflowgen"
$location="East US"
$sqlServer="wfgen-sql-server"
$sqlAdminUsername="wfgen_sa"
$sqlAdminPassword="<your(Strong!)password1>"
$sqlDatabase="WFGEN"
$sqlServiceObjective="Basic"
$connectionStringWithSqlAdmin = "Server=tcp:$sqlServer.database.windows.net,1433;Initial Catalog=$sqlDatabase;Persist Security Info=False;User ID=$sqlAdminUsername;Password=$sqlAdminPassword;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
$sqlScriptPath = "C:\Azure\setup\sql"
$sqlScriptCreation = Join-Path $sqlScriptPath "create.sql"
# Create the Azure SQL Server
az sql server create `
--resource-group $resourceGroup `
--location $location `
--name $sqlServer `
--admin-user $sqlAdminUsername `
--admin-password $sqlAdminPassword
# Enable Azure internal services access
az sql server firewall-rule create `
--resource-group $resourceGroup `
--server $sqlServer `
--name AllowAzureServices `
--start-ip-address 0.0.0.0 `
--end-ip-address 0.0.0.0
# Azure SQL database creation
az sql db create `
--name $sqlDatabase `
--resource-group $resourceGroup `
--server $sqlServer `
--service-objective $sqlServiceObjective
# Allow my public IP to access the SQL Server
$myPublicIP = (Invoke-WebRequest https://itomation.ca/mypublicip).content
az sql server firewall-rule create `
--resource-group $resourceGroup `
--server $sqlServer `
--name AllowMyTempPublicIP `
--start-ip-address $myPublicIP `
--end-ip-address $myPublicIP
# Initialize the database
Invoke-Sqlcmd `
-ConnectionString $connectionStringWithSqlAdmin `
-InputFile $sqlScriptCreation
# Remove my public IP
az sql server firewall-rule delete `
--resource-group $resourceGroup `
--server $sqlServer `
--name AllowMyTempPublicIP # Database user credentials
$sqlUserUsername = "wfgen_user"
$sqlUserPassword = "<your(Strong!)Password>"
# Allow my public IP to access the SQL Server
$myPublicIP = (Invoke-WebRequest https://itomation.ca/mypublicip).content
az sql server firewall-rule create `
--resource-group $resourceGroup `
--server $sqlServer `
--name AllowMyTempPublicIP `
--start-ip-address $myPublicIP `
--end-ip-address $myPublicIP
# Create the database user in the contained database
$queryVariables = "USERNAME=$sqlUserUsername","PASSWORD='$sqlUserPassword'"
Invoke-Sqlcmd `
-ConnectionString $connectionStringWithSqlAdmin `
-Query '
CREATE USER $(USERNAME) WITH PASSWORD = $(PASSWORD);
ALTER ROLE db_datareader ADD MEMBER $(USERNAME);
ALTER ROLE db_datawriter ADD MEMBER $(USERNAME);
' `
-Variable $queryVariables
# Remove my public IP
az sql server firewall-rule delete `
--resource-group $resourceGroup `
--server $sqlServer `
--name AllowMyTempPublicIP <add name="MainDbSource" connectionString="Data Source=<server name>;Initial Catalog=<database name>;User ID=<database user>;Password=<password>;encrypt=true;trustServerCertificate=false;" providerName="System.Data.SqlClient" /># Master database connection string
$connectionStringMaster = "Server=tcp:$sqlServer.database.windows.net,1433;Persist Security Info=False;User ID=$sqlAdminUsername;Password=$sqlAdminPassword;MultipleActiveResultSets=False;Encrypt=True;"
# Database user credentials
$sqlUserUsername = "wfgen_user"
$sqlUserPassword = "<your(Strong!)Password>"
# Allow my public IP to access the SQL Server
$myPublicIP = (Invoke-WebRequest https://itomation.ca/mypublicip).content
az sql server firewall-rule create `
--resource-group $resourceGroup `
--server $sqlServer `
--name AllowMyTempPublicIP `
--start-ip-address $myPublicIP `
--end-ip-address $myPublicIP
# Create the database login in the master db
$queryVariables = "USERNAME=$sqlUserUsername","PASSWORD='$sqlUserPassword'","DATABASE=$sqlDatabase"
Invoke-Sqlcmd `
-ConnectionString $connectionStringMaster `
-Query '
CREATE LOGIN $(USERNAME) WITH PASSWORD = $(PASSWORD);
' `
-Variable $queryVariables
# Create the user in the WorkflowGen database
Invoke-Sqlcmd `
-ConnectionString $connectionStringWithSqlAdmin `
-Query '
CREATE USER $(USERNAME) FROM LOGIN $(USERNAME) WITH DEFAULT_SCHEMA = $(DATABASE);
ALTER ROLE db_datareader ADD MEMBER $(USERNAME);
ALTER ROLE db_datawriter ADD MEMBER $(USERNAME);
' `
-Variable $queryVariables
# Remove my public IP
az sql server firewall-rule delete `
--resource-group $resourceGroup `
--server $sqlServer `
--name AllowMyTempPublicIPCette section présente quelques indications sur la configuration et la gestion d'un cluster (groupement) Kubernetes adapté à WorkflowGen dans Azure.
Pour créer un nouveau cluster qui supporte les charges de travail Linux et Windows, consultez l'article Microsoft , qui comprend des instructions étape par étape sur la façon de créer le cluster. Suivez toutes les instructions, y compris la création d'un pool de nœuds Windows. À la fin, vous devez avoir au moins deux nœuds : un nœud Linux et un nœud Windows.
Vous pouvez utiliser Microsoft Entra ID (anciennement Azure Active Directory) pour authentifier et autoriser les utilisateurs du cluster. Consultez l'article Microsoft pour plus d'informations.
Par défaut, AKS ne restreint pas d'autres nœuds Windows d'empêcher le déploiement de Linux sur eux. Il est recommandé d'utiliser des taches (« taints ») et tolérances pour éviter les problèmes d'ordonnancement de déploiement Linux sur les nœuds Windows (voir l'article Kubernetes pour plus d'informations). Voici un exemple de la façon dont vous pouvez utiliser les taches et les tolérances pour gérer les déploiements hybrides.
L'application de taches à tous les nœuds Windows empêchera tout déploiement sur les nœuds Windows, sauf lorsque le déploiement a la tolérance requise. Par conséquent, pour de nombreux cartes (« charts ») Linux Helm qui n'ont pas de sélecteur de nœud, les déploiements seront automatiquement ordonnancés sur les nœuds Linux. Google Kubernetes Engine le fait par défaut. Exécutez la commande suivante pour appliquer une tache à un nœud Windows :
Pour pouvoir déployer des modules Windows sur des nœuds Windows, vous devez utiliser une combinaison de tolérances et de sélecteurs de nœuds dans votre spécification de déploiement. Par exemple, considérez ce déploiement WorkflowGen :
Pour qu'il soit ordonnancé sur un nœud Windows, vous devez ajouter ce qui suit au spec du template :
Cela ajoute une tolérance à la tache que vous venez d'ajouter au nœud et indique à l'ordonnanceur Kubernetes de sélectionner un nœud Windows lors de l'ordonnancement des pods (capsules) WorkflowGen.
Vous pouvez également simplifier cela en créant un objet RuntimeClass qui contient ces informations et en référençant la classe d'exécution dans vos déploiements Windows :
Appliquez ce fichier :
Ensuite, ajoutez ce qui suit à la spécification du pod :
Comme vous pouvez le voir, cet objet RuntimeClass garantit également que le déploiement se fera sur un nœud Windows LTSC 2019 (1809).
Il y a deux choses que vous devez considérer pour la gestion des mises à jour : la version de Kubernetes et la mise à jour du système d'exploitation. Pour plus d'informations sur la mise à jour du cluster vers une version Kubernetes spécifique, consultez l'article Microsoft . (Ne vous inquiétez pas du titre de l'article, il contient un paragraphe sur les mises à jour Windows.)
Vous pouvez utiliser un « autoscaler » dans AKS pour mettre à l'échelle automatiquement le nombre de nœuds dans votre cluster en fonction des règles pour répondre aux demandes. Consultez l'article Microsoft pour plus d'informations. Cette fonctionnalité se marie bien avec l'autoscaler horizontal de pod Kubernetes. Consultez l'article Kubernetes pour plus d'informations.
Vous pouvez également utiliser des instances de conteneur Azure pour faire évoluer rapidement votre cluster pendant une courte période. Consultez l'article Microsoft pour plus d'informations.
kubectl taint nodes "<NODE_NAME>" os=windows:NoScheduleapiVersion: apps/v1
kind: Deployment
metadata:
name: wfgen-webapps
spec:
replicas: 3
strategy:
type: Recreate
selector:
matchLabels:
app.kubernetes.io/name: workflowgen
app.kubernetes.io/component: webapps
template:
metadata:
labels:
app.kubernetes.io/name: workflowgen
app.kubernetes.io/component: webapps
spec:
containers:
- name: wfgen
image: advantys/workflowgen:7.18.3-win-ltsc2019
imagePullPolicy: Always
resources:
requests:
memory: "2Gi"
cpu: "1"
limits:
memory: "2Gi"
cpu: "1"
ports:
- name: http
containerPort: 80
protocol: TCP
envFrom:
- configMapRef:
name: wfgen-config
env:
- name: WFGEN_START_SERVICE
value: webapps
livenessProbe:
periodSeconds: 30
timeoutSeconds: 5
initialDelaySeconds: 60
exec:
command:
- powershell
- C:\healthcheck.ps1
livenessProbe:
timeoutSeconds: 5
initialDelaySeconds: 60
exec:
command:
- powershell
- -Command
- if (Test-Path "C:\iislog\W3SVC\*log") { return 0 } else { return 1 }
volumeMounts:
- mountPath: C:\wfgen\data
name: wfgdata
- mountPath: C:\wfgen\licenses
readOnly: true
name: licenses
- mountPath: C:\secrets
readOnly: true
name: secrets
volumes:
- name: wfgdata
persistentVolumeClaim:
claimName: wfgdata-pvc
- name: licenses
secret:
secretName: wfgen-license-secret
items:
# The following must match the name of the license item in
# the license secret, e.g. the name of the license file
- key: WorkflowGen.lic
path: WorkflowGen.lic
- name: secrets
secret:
secretName: wfgen-secnodeSelector:
kubernetes.io/os: windows
tolerations:
- key: os
operator: Equal
value: windows
effect: NoScheduleapiVersion: node.k8s.io/v1beta1
kind: RuntimeClass
metadata:
name: windows-1809
handler: 'docker'
scheduling:
nodeSelector:
kubernetes.io/os: 'windows'
kubernetes.io/arch: 'amd64'
node.kubernetes.io/windows-build: '10.0.17763'
tolerations:
- key: os
operator: Equal
value: windows
effect: NoSchedulekubectl apply -f windows-runtimeclass.yamlruntimeClass: windows-1809