Accueil Blog Intégration SSO d'Acumatica Cloud ERP avec Microsoft Active Directory et Azure Active Directory

Intégration SSO d'Acumatica Cloud ERP avec Microsoft Active Directory et Azure Active Directory

Mark Franks | 7 décembre 2022

Dans le billet de la semaine dernière, je vous ai présenté l'authentification unique (SSO) sur la plateforme Acumatica Cloud ERP, permettant une expérience d'authentification plus transparente pour les utilisateurs. J'ai traité superficiellement Active Directory et Azure Active Directory de Microsoft, en me concentrant sur les solutions des fournisseurs externes Google et Microsoft de manière plus approfondie. Je suis entré dans les détails de la mise en œuvre d'OAuth 2.0 de chaque entreprise. Je pense que cela vaut la peine de faire un billet de suivi, en revisitant et en fournissant plus de détails sur Azure Active Directory pour être complet.

Comme je l'ai déjà mentionné, vous pouvez facilement activer l'Active Directory de Microsoft, l'Azure Active Directory, le Live ID de Microsoft ou les identifiants clients OAuth 2.0 de Google sans trop d'efforts.

J'ai activé Google et Microsoft en tant que fournisseurs externes pour que les utilisateurs puissent se connecter à mon instance Acumatica ci-dessous - et j'ai ajouté Azure Active Directory. Une fois ces trois éléments ajoutés, les utilisateurs se connectant au système verront l'écran de connexion suivant dans la figure 1 ci-dessous.

Acumatica Cloud ERP Login - Nom d'utilisateur et mot de passe

Lorsque les utilisateurs choisissent l'un des fournisseurs externes, ils seront automatiquement redirigés vers la page de connexion du fournisseur d'identité sélectionné lorsqu'ils navigueront vers votre instance Acumatica ERP. De plus, vous pouvez afficher des formulaires Acumatica ERP sur vos autres sites web. Par exemple, vous pouvez intégrer un lien vers le formulaire Tâches (EP.40.40.00) dans la page Office 365 de votre entreprise pour afficher et accéder à votre liste de tâches Acumatica ERP directement dans Office 365.

Pour plus de détails sur l'intégration de Google ou de LiveID, voir mon précédent article ici.

Intégration avec Microsoft Active Directory

Acumatica prend en charge l'intégration avec Microsoft Active Directory (AD) et Microsoft Azure Active Directory (Azure AD) pour fournir une gestion centralisée des utilisateurs et des accès. Une fois que ces produits ont été intégrés à Acumatica, les utilisateurs du domaine peuvent utiliser leurs identifiants de domaine pour se connecter au système.

En intégrant Acumatica Cloud ERP et Azure Active Directory (Azure AD), vos utilisateurs bénéficient d'une authentification unique pour l'ensemble des applications. Les utilisateurs peuvent accéder à l'instance d'Acumatica ERP en fonction de leur compte organisationnel dans Azure AD. Les droits d'accès des utilisateurs dans Acumatica ERP sont appliqués automatiquement, sur la base des règles de mappage prédéfinies entre les groupes Azure AD et les rôles Acumatica ERP.

En outre, vous pouvez configurer une connexion silencieuse. Avec la connexion silencieuse, les utilisateurs sont automatiquement redirigés vers l'écran de connexion Azure lorsqu'ils tentent d'accéder à l'instance Acumatica ERP. Vous pouvez configurer l'intégration avec Azure Active Directory lors de l'implémentation d'Acumatica ERP ou à tout moment par la suite. Lorsqu'un utilisateur du domaine se connecte à Acumatica, un compte utilisateur approprié sera créé automatiquement dans Acumatica avec les champs de nom d'utilisateur et de mot de passe non disponibles et avec des rôles d'utilisateur correspondant aux groupes du domaine AD.

Activation de Microsoft Active Directory

La première chose à faire pour activer Active Directory est de créer un compte d'utilisateur Active Directory disposant de droits de lecture sur l'ensemble de la forêt AD. Ce compte d'utilisateur doit avoir au moins des droits de lecture sur les propriétés suivantes définies dans le schéma Active Directory :

objectSid, distinguishedName, sAMAccountName, displayName, description, lastLogon, pwdLastSet, primaryGroupID et memberOf

.

Ensuite, vous devrez apporter quelques modifications au fichier Web.config de l'instance d'application que vous souhaitez intégrer à Active Directory :


<system.web>
<activeDirectory enabled=”true” path=”domain_path” dc=”domain_name”
user=”user_name” password=”user_password” />
</system.web>

Le paramètre path="domain_path" est obligatoire et doit être le chemin d'accès à votre serveur AD. Le paramètre dc="domain_name" est facultatif et n'est requis que dans le cas où vous avez plus d'un domaine dans la forêt. Les informations d'identification du compte d'utilisateur appartiennent au compte d'utilisateur que vous avez créé à l'étape précédente.

Par ailleurs, si vous intégrez Acumatica à Active Directory Federation Services, vous devez également configurer l'authentification basée sur les revendications.

Après avoir activé Active Directory, vous devrez faire correspondre les groupes Active Directory aux rôles des utilisateurs définis dans Acumatica ERP en utilisant le formulaire User Roles (SM.20.10.05) - référez-vous si nécessaire à la documentation d'aide appropriée de votre instance d'application. Notez que l'activation de l'intégration Active Directory n'affecte PAS le mécanisme d'autorisation et d'authentification standard d'Acumatica. Avec l'intégration Active Directory activée, vous pouvez toujours créer des utilisateurs normaux (non-AD) dans Acumatica.

Une fois ces étapes terminées, les utilisateurs du domaine peuvent se connecter à Acumatica en utilisant leurs identifiants de domaine.

Activation de Microsoft Azure Active Directory

Vous pouvez configurer l'intégration avec Azure Active Directory lors de l'implémentation d'Acumatica ERP ou à tout moment par la suite. Lorsqu'un utilisateur du domaine se connecte à Acumatica ERP, un compte utilisateur approprié sera créé automatiquement dans Acumatica ERP avec le nom d'utilisateur et le mot de passe non disponibles et avec des rôles d'utilisateur correspondant aux groupes du domaine AD.

Utilisateurs locaux et de domaine
Une fois que vous avez configuré l'intégration, certains employés auront à la fois des comptes d'utilisateurs locaux dans Acumatica ERP et des comptes créés automatiquement pour ces employés en tant qu'utilisateurs de domaine. Vous pouvez supprimer les comptes locaux des employés qui n'effectuent pas de tâches d'administration et de configuration dans Acumatica ERP. Les politiques de mot de passe en vigueur pour les utilisateurs locaux créés dans Acumatica ERP n'affectent pas les utilisateurs du domaine. Par exemple, un utilisateur connecté à Acumatica ERP en tant qu'utilisateur de domaine Active Directory ne pourra pas modifier son mot de passe en utilisant Acumatica ERP. Seules les stratégies de mot de passe du domaine affectent les utilisateurs du domaine.

Les nouveaux utilisateurs du domaine obtiendront automatiquement le droit de se connecter à Acumatica ERP dès qu'ils rejoindront un domaine Active Directory. Leur appartenance aux rôles Acumatica ERP sera automatiquement mise à jour pour correspondre à l'appartenance de ces utilisateurs aux groupes du domaine Active Directory. Si nécessaire, vous pouvez assigner les utilisateurs aux différents rôles d'Acumatica ERP sans tenir compte des groupes de domaine Active Directory en utilisant le formulaire User Roles (SM.20.10.05) comme mentionné ci-dessus.

Pour Azure Active Directory, vous devez d'abord enregistrer votre instance Acumatica ERP dans le portail Azure et obtenir les informations d'identification OAuth 2.0 et enregistrer l'ID client et le secret client (mot de passe) que vous avez obtenus pour activer l'authentification unique avec Azure Active Directory. Ensuite, vous devrez mapper les groupes Azure AD aux rôles Acumatica ERP de la même manière que celle mentionnée précédemment.

Pour commencer, il suffit de se rendre sur le site https://azure.microsoft.com. Voir la figure 2 ci-dessous. Si vous n'avez pas de compte Azure, vous pouvez commencer par un essai gratuit (1) et faire quelques tests initiaux. C'est ce que j'ai fait pour pouvoir tester et travailler moi-même sur l'intégration d'Azure Directory afin d'en parler ici. Notez qu'à l'heure actuelle, ils sont en train de passer à un nouveau portail (2). Certaines fonctionnalités avancées d'Azure ne sont disponibles que sur le nouveau portail.

Intégration SSO d'Acumatica Cloud ERP avec Azure Active Directory

Après avoir obtenu un compte, vous pouvez enregistrer l'instance Acumatica, configurer votre répertoire, etc. Vous trouverez ci-dessous le tableau de bord du nouveau portail Azure, qui vous permet de gérer divers services et ressources. Cliquez simplement sur Azure Active Directory dans le panneau de gauche vers le bas(Figure 3), et vous pouvez commencer à activer Azure AD.

Le tableau de bord du portail Azure vous permet de gérer différents services et ressources. 

Enregistrer l'instance Acumatica avec Azure AD

Outre la gestion de votre domaine AD via le portail, vous devrez enregistrer votre instance Acumatica. Après avoir sélectionné Azure Active Directory dans le portail, l'écran suivant devrait s'afficher comme indiqué ci-dessous dans la Figure 4.

Enregistrer l'instance Acumatica avec Azure AD.

Sélectionnez ensuite App Registrations (Enregistrements d'applications) sous MANAGE dans le volet de gauche, comme indiqué ci-dessus. Tout d'abord, remarquez que j'ai déjà enregistré deux applications - Figure 5. Je les ai créées lors des tests/expérimentations de ma mise en œuvre il y a quelques semaines (1). Mais ajoutons un nouvel enregistrement (2), nommons l'instance d'application et spécifions le type d'application et l'URL de connexion (3). Notez que l'URL de signature est mon instance Acumatica particulière fonctionnant dans le nuage - et non mon instance locale. Contrairement au cas LiveID de la semaine dernière, vous devrez avoir une instance Acumatica fonctionnant dans le nuage et accessible afin d'activer Azure AD avec votre instance Acumatica.

Microsoft Azure - Acumatica -App Registration Panel.

Après avoir ajouté et rempli les champs obligatoires ci-dessus, cliquez sur Créer et votre enregistrement est presque terminé. Vous remarquerez maintenant que vous devrez créer des clés pour l'instance de l'application en formant votre secret ou votre mot de passe qui est automatiquement généré. Voir la figure 6 ci-dessous.

Acumatica - Enregistrement de l'application - My Awesome Acumatica ERP Instance - Paramètres

L'écran ci-dessus est présenté après que le portail s'est enregistré et a généré l'identifiant unique de l'application. Cet identifiant est affiché dans le panneau central gauche (1). Cliquez sur l'application nouvellement enregistrée et les détails de l'instance (2) s'afficheront ainsi que le panneau Paramètres - à l'extrême droite. Vous devez maintenant sélectionner Clés (3) afin de générer votre secret/mot de passe.

 Après l'identification unique de l'application, l'application nouvellement enregistrée et les détails de l'instance s'affichent.

Remplissez la description de la clé, sélectionnez Expiration (1) et cliquez sur Enregistrer (2). À ce stade, votre valeur secrète s'affichera et vous devrez la copier immédiatement, car lorsque vous quitterez le panneau des clés, elle ne sera plus visible. Si vous ne le faites pas, vous devrez supprimer votre instance et recommencer. Vous n'avez pas intérêt à faire cela.

Il ne vous reste plus qu'à franchir les dernières étapes de l'habilitation et vous aurez terminé - si tout est configuré correctement et si tous les éléments sont en place.

Configuration de votre instance Acumatica ERP

The matter remaining is adding the necessary web.config settings and testing.  After you have obtained the required credentials from Azure AD portal, you have to register these credentials in your Acumatica ERP instance. Modify the Acumatica instance’s web.config by opening the file from the site’s instance location. The file is usually located in %Program Files%\ Acumatica ERP\<instance name>, where <instance name> is the name of the application instance website. Next, enable Azure AD integration byt adding the following parameters shown below in the ActiveDirectory section located under <system.web> of the web.config file:


<activeDirectory enabled=”true” protocol=”ADAL”
path=”tenant id@OnMicrosoft.com”
user=”application id”
password=”application secret“/>

Pour clarifier, votre identifiant de locataire est votre domaine (dans mon cas, il s'agit de acumatica@OnMicrosoft.com.) L'utilisateur et le mot de passe sont ceux que vous avez sauvegardés dans le processus d'enregistrement que nous avons décrit ci-dessus.

Ensuite, dans la section System.identityModel du fichier web.config, ajoutez une référence à votre instance Acumatica ERP, comme indiqué ci-dessous.


<system.identityModel>
<identityConfiguration>…
…
<audienceUris>
<add value=”Acumatica instance URL” />
</audienceUris>
…
</identityConfiguration>
</system.identityModel>

Maintenant, ajoutez les références suivantes à la section System.identityModel.services du web.config, comme indiqué ci-dessous :


<system.identityModel.services>
<federationConfiguration>
<wsFederation passiveRedirectEnabled=”false”
issuer=”https://login.windows.net/tenant id.onmicrosoft.com/wsfed”
realm=”Acumatica instance URL”
requireHttps=”false” PersistentCookiesOnPassiveRedirects=”false” />
</federationConfiguration>
</system.identityModel.services>

Encore une fois, l'identifiant du locataire est votre domaine comme mentionné ci-dessus. Une fois les configurations ci-dessus terminées, sauvegardez le fichier web.config. Maintenant que vous avez fini d'activer Azure Active Directory, vous devez mapper les groupes Azure AD aux rôles de votre instance Acumatica ERP. Ceci a été décrit plus haut dans la section Microsoft Active Directory.

Enfin, vous pouvez lancer votre instance d'Acumatica et vous verrez également que la page de connexion d'Acumatica affichera une icône Azure AD, comme le montre la figure 8 ci-dessous.

Configuration de l'instance d'Acumatica ERP et d'Azure

Après avoir cliqué sur l'icône Azure AD, ci-dessus... Dans Acumatica et heureux comme un poisson dans l'eau - Figure 9, ci-dessous.

Résultat final de l'intégration d'Acumatica et d'Azure.

Résumé

Alors que les systèmes logiciels continuent de proliférer pour soutenir les processus d'entreprise, les utilisateurs doivent se souvenir d'un nombre croissant d'informations d'identification. Les utilisateurs se connectent généralement à de nombreux systèmes, chacun d'entre eux impliquant souvent des noms d'utilisateur et des informations d'authentification différents. Les administrateurs doivent gérer des comptes d'utilisateurs pour chaque système auquel accèdent leurs utilisateurs. Ces comptes doivent être coordonnés afin de maintenir l'intégrité de l'application de la politique de sécurité de l'organisation.

Voici quelques-uns des avantages à prendre en compte lors de la mise en œuvre de l'authentification unique :

  1. Amélioration de la sécurité, les utilisateurs n'ayant pas à se souvenir de plusieurs jeux d'identifiants.
  2. Réduire le temps de connexion aux systèmes à des domaines individuels - en tenant compte des échecs de connexion dus à des trous de mémoire.
  3. Réduction des coûts informatiques grâce à la diminution du nombre d'appels au service d'assistance informatique pour la réinitialisation des mots de passe.
  4. Confort d'utilisation et utilisateurs satisfaits

Ceci termine notre discussion sur le SSO pour l'instant. Au fur et à mesure de l'évolution du paysage, nous reviendrons sur le sujet et nous aurons plus de connaissances à vous transmettre - que nous espérons vous voir opportunes et informatives - pour vous aider à utiliser notre plateforme technologique afin de résoudre vos défis commerciaux et de réduire vos coûts d'exploitation - en gagnant en inefficacité et en agilité.

Auteur du blog

Mark était auparavant responsable des relations avec les développeurs chez Acumatica.

Recevez les mises à jour du blog dans votre boîte de réception.