Elección del mecanismo de autenticación correcto
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
En el caso de las aplicaciones que interactúan con Azure DevOps Services, debe autenticarse para obtener acceso a recursos como las API REST. En este artículo se proporcionan instrucciones para ayudarle a elegir el mecanismo de autenticación adecuado para la aplicación.
En la tabla siguiente se describen los mecanismos de autenticación recomendados para distintos tipos de aplicación. Consulte las descripciones, ejemplos y ejemplos de código que lo acompañan para ayudarle a empezar.
Tipo de aplicación | Descripción | Ejemplo | Mecanismo de autenticación | Ejemplos de código |
---|---|---|---|---|
Aplicación interactiva del lado cliente (REST) | Aplicación cliente que permite la interacción del usuario que llama a las API REST de Azure DevOps Services | Aplicación de consola que enumera proyectos en una organización | Biblioteca de autenticación de Microsoft (MSAL) | sample |
Aplicación interactiva del lado cliente (bibliotecas cliente) | Aplicación cliente que permite la interacción del usuario que llama a bibliotecas cliente de Azure DevOps Services | Aplicación de consola que enumera los errores asignados al usuario actual | Bibliotecas de cliente | sample |
Aplicación interactiva de JavaScript | 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) | sample |
Aplicación web de OAuth interactiva | Aplicación web basada en GUI que requiere consentimiento del usuario | Panel web personalizado que muestra resúmenes de compilación | OAuth | sample |
Aplicación del lado cliente no interactiva | Aplicación del lado cliente solo de texto sin encabezado | Aplicación de consola que muestra todos los errores asignados a un usuario | Perfil de dispositivo | sample |
Un token de acceso personal (PAT) | Token de portador para acceder a sus propios recursos | Use el PAT en lugar de la contraseña para las solicitudes REST. No es ideal para compilar aplicaciones. | Palmaditas | Documentación |
Aplicación de servidor | Azure DevOps Server aplicación mediante la biblioteca OM de cliente | Azure DevOps Server extensión que muestra paneles de errores de equipo | Bibliotecas cliente | sample |
Aplicación de entidades de servicio | Aplicación con acceso a los recursos de Azure DevOps de la organización | Función de Azure para crear elementos de trabajo | Entidades de servicio e identidades administradas | sample |
Extensión web | extensión de Azure DevOps Services | Extensión agile Cards | SDK de extensión web de VSS | sample |
Vea los siguientes artículos para más información:
- Acerca de la seguridad y la identidad.
- Autenticación de OAuth
- Entidades de servicio e identidades administradas
- Bibliotecas cliente de Azure DevOps
- Extensiones de Azure DevOps
- Introducción a la protección de datos de Azure DevOps
Habilitar la autenticación básica de IIS invalida el uso de PAT para Azure DevOps Server
Para más información, consulte Uso de la autenticación básica de IIS con Azure DevOps local.
Preguntas más frecuentes (P+F)
P: ¿Por qué no puede mi cuenta de servicio acceder a la API rest de Azure DevOps?
R: Es posible que su cuenta de servicio no haya "materializado". Las cuentas de servicio sin permisos de inicio de sesión interactivo no pueden iniciar sesión. Para obtener más información, consulte esta solución alternativa.
P: ¿Debo usar las bibliotecas cliente de Azure DevOps Services o las API REST de Azure DevOps Services para mi aplicación interactiva del lado cliente?
R: Se recomienda usar bibliotecas cliente de Azure DevOps Services a través de las API REST para acceder a los recursos de Azure DevOps Services. Son más sencillos y fáciles de mantener cuando cambian las versiones del punto de conexión REST. Si las bibliotecas cliente carecen de cierta funcionalidad, use MSAL para la autenticación con nuestras API REST.
P: ¿Es esta guía solo para Azure DevOps Services o también es relevante para los usuarios locales Azure DevOps Server?
R: Esta guía es principalmente para los usuarios de Azure DevOps Services. Para los usuarios de Azure Devops Server, se recomienda usar las bibliotecas cliente, la autenticación de Windows o los tokens de acceso personal (PAT) para la autenticación.
P: ¿Qué ocurre si quiero que mi aplicación se autentique con Azure DevOps Server y Azure DevOps Services?
R: El procedimiento recomendado es tener rutas de autenticación independientes para Azure DevOps Server y Azure DevOps Services. Puede usar requestContext
para determinar a qué servicio accede y, a continuación, aplicar el mecanismo de autenticación adecuado. Si prefiere una solución unificada, los PAT funcionan para ambos.