Choisir le mécanisme d’authentification approprié

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Pour les applications qui s’interfacent avec Azure DevOps Services, vous devez vous authentifier pour accéder à des ressources telles que les API REST. Cet article fournit des conseils pour vous aider à choisir le mécanisme d’authentification approprié pour votre application.

Le tableau suivant présente les mécanismes d’authentification recommandés pour différents types d’application. Reportez-vous aux descriptions, exemples et exemples de code associés pour vous aider à démarrer.

Type d’application Description Exemple Mécanisme d’authentification Exemples de code
Application côté client interactive (REST) Application cliente qui autorise l’interaction utilisateur appelant des API REST Azure DevOps Services Application console énumérant des projets dans un organization Bibliothèque d’authentification Microsoft (MSAL) Échantillon
Application côté client interactive (bibliothèques clientes) Application cliente qui autorise l’interaction utilisateur appelant les bibliothèques clientes Azure DevOps Services Application console énumérant les bogues attribués à l’utilisateur actuel Fournisseurs de données pour la connexion à Azure Analysis Services Échantillon
Application JavaScript interactive Application JavaScript basée sur l’interface graphique graphique Application à page unique AngularJS affichant des informations de projet pour un utilisateur Bibliothèque d’authentification Microsoft pour JavaScript (MSAL JS) Échantillon
Application web OAuth interactive Application web basée sur une interface utilisateur graphique qui nécessite le consentement de l’utilisateur Tableau de bord web personnalisé affichant des résumés de build OAuth Échantillon
Application côté client non interactive Application texte sans tête uniquement côté client Application console affichant tous les bogues attribués à un utilisateur Profil d’appareil Échantillon
Un jeton d’accès personnel (PAT) Jeton du porteur pour accéder à vos propres ressources Utilisez votre PAT à la place de votre mot de passe pour les demandes REST. Pas idéal pour la création d’applications. Pats docs
Application serveur Azure DevOps Server application à l’aide de la bibliothèque du modèle de service client extension Azure DevOps Server affichant les tableaux de bord des bogues d’équipe Bibliothèques clientes Échantillon
Application principaux de service Application avec accès aux ressources Azure DevOps de organization Fonction Azure pour créer des éléments de travail Principaux de service et identités managées Échantillon
Extension web extension Azure DevOps Services Extension Cartes agiles KIT DE DÉVELOPPEMENT LOGICIEL (SDK) d’extension web VSS Échantillon

Pour plus d’informations, consultez les articles suivants :

L’activation de l’authentification de base IIS invalide l’utilisation de PAT pour Azure DevOps Server

Pour plus d’informations, consultez Utilisation de l’authentification de base IIS avec Azure DevOps localement.

Forum Aux Questions (FAQ)

Q : Pourquoi mon compte de service ne peut-il pas accéder à l’API REST Azure DevOps ?

R : Votre compte de service peut ne pas avoir « matérialisé ». Les comptes de service sans autorisations de connexion interactive ne peuvent pas se connecter. Pour plus d’informations, consultez cette procédure de contournement pour une solution.

Q : Dois-je utiliser les bibliothèques clientes Azure DevOps Services ou les API REST Azure DevOps Services pour mon application interactive côté client ?

R : Nous vous recommandons d’utiliser des bibliothèques clientes Azure DevOps Services sur des API REST pour accéder aux ressources Azure DevOps Services. Ils sont plus simples et plus faciles à gérer lorsque les versions du point de terminaison REST changent. Si les bibliothèques clientes ne disposent pas de certaines fonctionnalités, utilisez MSAL pour l’authentification avec nos API REST.

Q : Cette aide s’applique-t-elle uniquement à Azure DevOps Services ou est-elle également pertinente pour les utilisateurs locaux Azure DevOps Server ?

R : Ces conseils concernent principalement les utilisateurs d’Azure DevOps Services. Pour les utilisateurs d’Azure Devops Server, nous vous recommandons d’utiliser les bibliothèques clientes, l’authentification Windows ou les jetons d’accès personnel (PAT) pour l’authentification.

Q : Que se passe-t-il si je souhaite que mon application s’authentifie auprès de Azure DevOps Server et Azure DevOps Services ?

R : La meilleure pratique consiste à avoir des chemins d’authentification distincts pour Azure DevOps Server et Azure DevOps Services. Vous pouvez utiliser le requestContext service pour déterminer le service auquel vous accédez, puis appliquer le mécanisme d’authentification approprié. Si vous préférez une solution unifiée, les PAT fonctionnent pour les deux.