Elección del mecanismo de autenticación correcto
Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2013
En el caso de las aplicaciones que Azure DevOps Services, debe autenticarse para obtener acceso a recursos como las API REST. Somos conscientes de Azure DevOps Services ofrece muchas maneras diferentes de autenticar la aplicación. En este artículo se proporcionan instrucciones para ayudarle a elegir la autenticación adecuada para la aplicación. En la tabla siguiente se describe el mecanismo de autenticación recomendado para diferentes tipos de aplicación. Consulte las siguientes descripciones básicas, ejemplos y ejemplos de código para empezar a trabajar.
| Tipo de aplicación | Descripción | ejemplo | Mecanismo de autenticación | Ejemplos de código |
|---|---|---|---|---|
| Lado cliente interactivo (REST) | Aplicación cliente, que permite la interacción del usuario, llamando a Azure DevOps Services API REST | Aplicación de consola que enumera los proyectos de una organización | Biblioteca de autenticación de Microsoft (MSAL) | Muestra |
| Lado cliente interactivo (biblioteca cliente) | Aplicación cliente, que permite la interacción del usuario, llamando a Azure DevOps Services bibliotecas cliente | Aplicación de consola que enumera los errores asignados al usuario actual | Bibliotecas de cliente | Muestra |
| JavaScript interactivo | Aplicación JavaScript basada en GUI | Aplicación de página única de AngularJS que muestra información del proyecto para un usuario | Biblioteca de autenticación de Microsoft para JavaScript (MSAL JS) | Muestra |
| Token de acceso personal (PAT) | Alternativa sencilla a los tokens de OAuth normales. | Use el PAT en lugar de la contraseña. | Palmaditas | |
| Lado cliente no interactivo | Aplicación del lado cliente solo de texto sin sentido | Aplicación de consola que muestra todos los errores asignados a un usuario | Perfil de dispositivo | Muestra |
| Aplicaciones interactivas del lado cliente destinadas a Azure DevOps | La aplicación cliente, que permite la interacción del usuario, autentica Azure DevOps usuarios | Aplicación de consola que permite Azure DevOps usuarios ver errores asignados | Biblioteca cliente (autenticación interactiva Windows cliente) | Muestra |
| Web interactiva | Aplicación web basada en GUI | Panel web personalizado que muestra resúmenes de compilación | OAuth | Muestra |
| Azure DevOps Server aplicación | Azure DevOps Server aplicación mediante la biblioteca de OM de cliente | Azure DevOps Server extensión que muestra los paneles de errores del equipo | Bibliotecas de cliente | Muestra |
| Azure DevOps Services extensión | Azure DevOps Services extensión | Tarjetas ágiles | SDK de extensión web de VSS | ejemplo de recorrido por |
Nota
La API Azure DevOps no admite el acceso de servicio no interactivo a través de entidades de servicio.
Para más información sobre cómo se administran la seguridad y la identidad, consulte Acerca de la seguridad y la identidad.
Para más información sobre cómo almacenamos las credenciales, consulte Almacenamiento de credenciales para Azure DevOps.
La habilitación de la autenticación básica de IIS invalida el uso de PAT para Azure DevOps Server
Obtenga más información sobre el uso de la autenticación básica de IIS Azure DevOps local.
Preguntas más frecuentes (P+F)
P: ¿Por qué una de mis cuentas de servicio no puede acceder a la AZURE DEVOPS REST?
A. Es posible que la cuenta de servicio no se haya "materializado". Puesto que el inicio de sesión no es posible con una cuenta de servicio que no tiene permisos de inicio de sesión interactivos, consulte esta solución.
P: Estoy haciendo una aplicación interactiva del lado cliente. ¿Debo usar Azure DevOps Services de cliente o Azure DevOps Services API REST?
A. Se recomienda usar las bibliotecas Azure DevOps Services cliente a través de las API REST al acceder a Azure DevOps Services recursos. Son más sencillas y fáciles de mantener cuando se producen cambios de versión en nuestros puntos de conexión REST. Si falta funcionalidad en las bibliotecas cliente, MSAL es el mejor mecanismo de autenticación para usar con nuestras API REST.
P: ¿Esta guía es solo para Azure DevOps Services o también es relevante para los usuarios Azure DevOps Server locales?
A. Esta guía es principalmente para Azure DevOps Services usuarios. Las bibliotecas de cliente son una serie de paquetes creados específicamente para ampliar Azure DevOps Server funcionalidad. Para los usuarios locales, se recomienda usar las bibliotecasde cliente , Windows autenticación o tokens de acceso personal (PAT) para autenticarse para un usuario.
P: ¿Qué ocurre si quiero que mi aplicación se autentique con Azure DevOps Server y Azure DevOps Services?
A. El procedimiento recomendado es tener rutas de autenticación diferentes para Azure DevOps Server y Azure DevOps Services. Puede usar requestContext para averiguar cuál está alcanzando y, a continuación, usar el mejor mecanismo para cada uno. En su lugar, si desea una solución unificada, las PAT funcionan para ambos.