Agence web » Actualités du digital » Comment configurer l'authentification unique avec Azure OpenID Connect

Comment configurer l'authentification unique avec Azure OpenID Connect

L'authentification unique (SSO) offre une commodité et une sécurité intrinsèque indispensables aux activités de connexion des applications. Heureusement, l'authentification unique fonctionne avec n'importe quelle application Web dans votre Azure Active Directory, alors voyons comment nous pouvons la configurer.

Avec SSO, vos utilisateurs se connecteront une fois avec un seul compte et auront accès à vos applications Web, SAAS, aux ressources de l'entreprise et aux appareils appartenant au domaine. Une fois connectés, ils peuvent lancer n'importe quelle application à partir d'Azure AD MyApps et / ou du portail Office 365. Les administrateurs peuvent gérer les comptes d'utilisateurs et ajouter / supprimer l'accès aux applications en fonction de l'adhésion.

Sans SSO, vos utilisateurs doivent se souvenir des informations de journal spécifiques à l'application et se connecter à chacune d'elles. Le personnel doit mettre à jour, créer et gérer les comptes pour chaque application. Les utilisateurs doivent se souvenir des mots de passe et passer leur temps à se connecter.

Ainsi, il n’est pas difficile de voir que SSO est un gagnant incontestable en matière d’accessibilité sur le Web. Mais ce n’est pas seulement pratique, c’est sécurisé, alors jetons un œil à OpenID Connect.

Qu'est-ce qu'OpenID Connect?

Même si Security Assertion Markup Language est la principale solution SSO actuelle pour les entreprises, beaucoup résolvent leur utilisation de OpenID connect pour de nombreuses raisons.

En voici quelques-uns pour n'en nommer que quelques-uns:

  1. Fonctionne mieux sur les appareils mobiles
  2. Basé sur OAuth 2, donc plus facile pour les développeurs
  3. Parfait pour les non-employés
  4. Facile à configurer et abordable à entretenir
  5. Norme de l'industrie pour Azure Active Directory, Okta, Google G Suite, Auth0, OneLogin, etc.

OpenID Connect est natif de nombreux IDPS, à savoir Azure AD, c'est pourquoi nous utiliserons fit.

OIDC et SAML peuvent fonctionner ensemble. Donc, si vous avez besoin de séparer et de catégoriser vos utilisateurs externes et internes, cela pourrait être la solution. C'est également utile pour séparer vos solutions, où vous utilisez SAML pour l'accès des employés et OIDC pour l'intégration de cartes sur d'autres sites.

Même si les deux méthodes sont appliquées, DSO peut toujours être utilisé, mais ce n’est pas vraiment utilisé dans ce scénario.

Comment ajouter une application OpenID à partir d'Azure AD?

Afin de démarrer le processus d'activation de l'authentification unique pour vos applications, vous devez:

  1. Accédez au «portail Azure» et sélectionnez «Azure Active Directory».
  2. Accédez à "Applications d'entreprise", puis à "Toutes les applications".
  3. Sélectionnez le bouton «Nouvelle application» et saisissez le nom dans la zone de recherche. (OpenID et OAuth ont le bouton Ajouter désactivé par défaut. L'administrateur de votre client doit sélectionner le bouton d'inscription et fournir l'accès à l'application.
  1. Une fois l'autorisation réussie, vous pouvez accepter le consentement, puis la page d'accueil de l'application s'ouvrira.
  2. Lorsque vous sélectionnez le bouton d'inscription, vous serez redirigé vers «Azure Active Directory» pour remplir les informations de connexion.

À ce stade, vous avez provisionné l'accès au locataire pour la solution OpenID pour cette application spécifique.

Vous ne pouvez ajouter qu'une seule instance d'une application. Si vous l'avez déjà fait et avez essayé de demander le consentement, il ne sera pas ajouté à nouveau au locataire. Une instance d'application par locataire, c'est la seule façon dont cela fonctionne.

Comment l'authentification fonctionnera avec OpenID Connect

Pour continuer avec l'authentification SSO, vous devez d'abord comprendre comment fonctionne un flux de connexion simple:

  1. L'utilisateur se connecte et entre ses informations d'identification, puis consent aux autorisations. (Ceci est exécuté via la commande / oauth2 / authorize.)
  2. Un id_token est renvoyé et le code d'autorisation est envoyé au navigateur.
  3. Une redirection se produit vers l'URL.
  4. Le id_token est validé ;, un cookie de session est défini.
  5. Le porteur de code OAuth est invité à fournir code_autorisation.
  6. Le jeton est renvoyé avec refresh_token.
  7. L'API Web est appelée avec un jeton dans l'en-tête Auth.
  8. Le jeton est validé.
  9. Les données sécurisées sont renvoyées à l'application Web Server.

Il s’agit d’une représentation très simple du flux d’autorisation, et c’est ce à quoi il revient en fin de compte.

Activation du cadre de consentement

Afin de développer une application client native ou une application Web mutualisée, vous pouvez utiliser l'infrastructure de consentement Azure AD. Cela permettra la connexion à partir des comptes d'utilisateurs d'un certain Locataire Azure AD, qui a été fourni avec l'accès dans les anciennes étapes.

L'accès à APIS Web peut être nécessaire. Par exemple, le API Microsoft Graph pour accéder à Azure AD, Office 365 ou Intune. En outre, tout APIS Web personnel devra avoir accès à partir du locataire.

Le cadre de consentement est basé sur un administrateur ou un utilisateur antérieur qui donne son consentement à une application qui demande l'enregistrement dans l'annuaire. Cela peut impliquer un accès aux données de l'annuaire, mais ce n'est pas obligatoire. Une fois le consentement donné, l'application contactera l'API Graph au nom de l'utilisateur et accédera aux informations si nécessaire.

L'API permet d'accéder à divers points de données, mais elle fournit également l'accès aux groupes et aux utilisateurs dans Azure AD et à tout autre service cloud Microsoft. Par conséquent, il fonctionnera avec n'importe laquelle de vos applications Web.

Voici comment l'expérience de consentement se produira pour l'utilisateur et le développeur:

Consentement du développeur / utilisateur

Une application client Web a besoin d'autorisations pour accéder à une ressource. Le portail Azure déclare une demande d'autorisation pour définir une heure configurée. Comme tout autre paramètre de configuration, il fait partie des points de données d'inscription Azure AD.

Pour accéder au chemin d'autorisation, vous devez cliquer sur «Inscriptions d'application» sur le côté gauche et ouvrir l'application avec laquelle vous travaillerez. Ensuite, vous pouvez vous rendre dans le menu «Autorisations API» et sélectionner une option «Ajouter une autorisation». Ensuite, sélectionnez "Microsoft Graph" et choisissez les options dans "Application et autorisations déléguées".

Maintenant que les autorisations ont été mises à jour, l'utilisateur est sur le point d'utiliser SSO pour la première fois. L'application doit d'abord recevoir un code d'autorisation du point de terminaison dans Azure AD, puis le code sera utilisé pour accéder à un jeton actualisé. Si l'utilisateur n'a pas été authentifié, le point de terminaison demandera une connexion.

Une fois qu'ils se sont connectés, Azure AD déterminera si l'utilisateur doit recevoir une demande de consentement. La décision sera basée sur le groupe qui a été accordé à l'utilisateur.

Si le consentement n'a pas été accordé, une invite apparaîtra et affichera les autorisations nécessaires pour la fonctionnalité. Un utilisateur peut consentir à diverses autorisations, mais d'autres peuvent avoir besoin d'accéder à un compte d'administrateur de locataire.

Conclusion

Même si le processus d'activation d'OpenID Connect est assez simple, la fonctionnalité et l'application de SSO seront strictes en fonction de la capacité du développeur qui sera en charge de la mise en œuvre de la fonction.

OIDC est livré avec une variété de plug-ins intégrés qui permettent un accès instantané à partir de la boîte, comme mentionné via le flux d'autorisation de base, mais tout ce qui nécessite une approche personnalisée sera d'une approche plus impliquée.

Pour plus d'informations sur la façon d'étendre l'opportunité de l'authentification unique, lisez une partie de la documentation d'origine d'Azure.

★★★★★