Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
L’authentification répartie collecte les informations d’identification de l’utilisateur à l’aide du répartiteur d’authentification système pour authentifier une application. Un répartiteur d’authentification système est une application s’exécutant sur l’ordinateur d’un utilisateur qui gère les liaisons d’authentification et la maintenance des jetons pour tous les comptes connectés.
L’authentification répartie offre les avantages suivants :
- Active l'Sign-On authentification unique (SSO) : Permet aux applications de simplifier la façon dont les utilisateurs s’authentifient avec l’ID Microsoft Entra et protègent les jetons d’actualisation microsoft Entra contre l’exfiltration et l’utilisation incorrecte.
- Sécurité renforcée : De nombreuses améliorations de sécurité sont fournies avec le répartiteur, sans avoir à mettre à jour la logique de l’application.
- Prise en charge améliorée des fonctionnalités : Grâce à l’aide du répartiteur, les développeurs peuvent accéder à des fonctionnalités de système d’exploitation et de service riches.
- Intégration du système : Les applications qui utilisent le plug-and-play broker avec le sélecteur de compte intégré, ce qui permet à l’utilisateur de choisir rapidement un compte existant au lieu de réentérer les mêmes informations d’identification sur et sur plusieurs.
- Protection des jetons : Garantit que les jetons d’actualisation sont liés à l’appareil et permet aux applications d’acquérir des jetons d’accès liés à l’appareil. Voir Protection des jetons.
Windows fournit un répartiteur d’authentification appelé Gestionnaire de comptes web (WAM). WAM permet aux fournisseurs d’identité tels que Microsoft Entra ID de se connecter en mode natif au système d’exploitation et de fournir des services de connexion sécurisés aux applications. L’authentification répartie active l’application pour toutes les opérations autorisées par les informations d’identification de connexion interactives.
Les comptes personnels Microsoft et les comptes professionnels ou scolaires sont pris en charge. Sur les versions windows prises en charge, l’interface utilisateur basée sur le navigateur par défaut est remplacée par une expérience d’authentification plus fluide, similaire aux applications Windows intégrées.
Linux utilise l’authentification unique Microsoft pour Linux comme répartiteur d’authentification.
Configurer l’application pour l’authentification répartie
Pour activer l’authentification répartie dans votre application, procédez comme suit :
Dans le portail Azure, accédez à Microsoft Entra ID et sélectionnez Inscriptions d’applications dans le menu de gauche.
Sélectionnez l'enregistrement de votre application, puis sélectionnez Authentification.
Ajoutez l’URI de redirection approprié à votre inscription d’application via une configuration de plateforme :
Sous Configurations des plateformes, sélectionnez + Ajouter une plateforme.
Sous Configurer des plateformes, sélectionnez la vignette de votre type d’application (plateforme) pour configurer ses paramètres, tels que les applications mobiles et de bureau.
Dans les URI de redirection personnalisés, entrez l’URI de redirection suivant pour votre plateforme :
Platform URI de redirection Windows 10+ ou WSL ms-appx-web://Microsoft.AAD.BrokerPlugin/{your_client_id}macOS msauth.com.msauth.unsignedapp://authpour les applications non signées
msauth.{bundle_id}://authpour les applications signéesLinux https://login.microsoftonline.com/common/oauth2/nativeclientRemplacez
{your_client_id}ou{bundle_id}utilisez l’ID d’application (client) dans le volet Vue d’ensemble de l’inscription de l’application.Sélectionnez Configurer.
Pour en savoir plus, consultez Ajouter un URI de redirection à l'enregistrement d'une application.
De nouveau dans le volet Authentification, sous Paramètres avancés, sélectionnez Oui pour Autoriser les flux de clients publics.
Sélectionnez Enregistrer pour appliquer les modifications.
Pour autoriser l'application pour des ressources spécifiques, naviguez jusqu'à la ressource en question, sélectionnez Permissions API et activez Microsoft Graph et les autres ressources auxquelles vous souhaitez accéder.
Important
Vous devez également être l'administrateur de votre locataire pour accorder le consentement à votre application lorsque vous vous connectez pour la première fois.
Attribuer des rôles
Pour exécuter votre code d’application avec l’authentification répartie, accordez à votre compte d’utilisateur des autorisations à l’aide du contrôle d’accès en fonction du rôle (RBAC) Azure. Attribuez un rôle approprié à votre compte d’utilisateur pour le service Azure approprié. Par exemple:
- Stockage Blob Azure : attribuez le rôle Contributeur aux données du compte de stockage .
- Azure Key Vault : attribuez le rôle Agent de secrets Key Vault .
Si une application est spécifiée, elle doit avoir des permissions API définies pour user_impersonation Accessure Storage (étape 6 de la section précédente). Cette permission API permet à l'application d'accéder au stockage Azure au nom de l'utilisateur connecté après que le consentement a été accordé lors de la connexion.
Implémenter le code
La bibliothèque Azure Identity prend en charge l’authentification répartie à l’aide d’InteractiveBrowserCredential. Par exemple, pour utiliser InteractiveBrowserCredential dans une application console Node.js pour vous authentifier auprès d’Azure Key Vault avec SecretClient, procédez comme suit :
Installez les packages @azure/identity et @azure/identity-broker :
npm install @azure/identity @azure/identity-brokerCréez une instance d’InteractiveBrowserCredential en utilisant des options de courtier et inscrivez le plug-in natif du courtier :
import { useIdentityPlugin, InteractiveBrowserCredential } from "@azure/identity"; import { nativeBrokerPlugin } from "@azure/identity-broker"; // Register the native broker plugin for brokered authentication useIdentityPlugin(nativeBrokerPlugin); // Use InteractiveBrowserCredential with broker for interactive or silent authentication // On Windows: Uses Windows Authentication Manager (WAM) - you'll be prompted to sign in // On macOS: Opens a browser window for authentication, since the broker flow isn't currently supported. // On Linux: Uses Microsoft Single Sign-on (SSO) for Linux. const credential = new InteractiveBrowserCredential({ brokerOptions: { enabled: true, useDefaultBrokerAccount: true, // For Node.js console apps, we need to provide an empty buffer for parentWindowHandle parentWindowHandle: new Uint8Array(0), }, });
Conseil / Astuce
Affichez le code complet de l'exemple d'application dans le référentiel GitHub du kit de développement logiciel (SDK) Azure pour JavaScript.
Dans l’exemple précédent, la propriété useDefaultBrokerAccount est définie truesur , qui opte dans un flux d’authentification silencieux et réparti avec le compte système par défaut. De cette façon, l’utilisateur n’a pas à sélectionner à plusieurs reprises le même compte. Si l’authentification silencieuse échoue ou useDefaultBrokerAccount est définie falsesur , InteractiveBrowserCredential revient à l’authentification interactive et répartie.
La capture d’écran suivante montre l’expérience d’authentification interactive et répartie alternative :
La vidéo suivante montre l’expérience d’authentification interactive et répartie alternative :
Contenu connexe
- Authentifier des applications JavaScript auprès des services Azure à l’aide du Kit de développement logiciel (SDK) Azure pour JavaScript
- Authentifier des applications JavaScript auprès des services Azure pendant le développement local
- Bibliothèque d’identités Azure pour JavaScript
- Bibliothèque Azure Identity Broker pour JavaScript