Compartir a través de


Autorización del acceso a las API REST con OAuth 2.0

Azure DevOps Services

Obtenga información sobre cómo autenticar a los usuarios de la aplicación web para el acceso a la API REST, por lo que la aplicación no sigue pidiendo nombres de usuario y contraseñas.

Nota:

Las instrucciones siguientes están pensadas para los usuarios de Azure DevOps Services, ya que OAuth 2.0 no se admite en Azure DevOps Server. Las bibliotecas cliente son una serie de paquetes creados específicamente para ampliar Azure DevOps Server funcionalidad. Para los usuarios locales, recomendamos usar Bibliotecas Cliente, autenticación de Windows o tokens de acceso personal (PAT) para autenticar en nombre de un usuario.

Acerca de OAuth 2.0

Azure DevOps Services usa el protocolo OAuth 2.0 para autorizar la aplicación para un usuario y generar un token de acceso. Use este token cuando llame a las API de REST desde su aplicación. Cuando llame a las API de Azure DevOps Services para ese usuario, use el token de acceso de ese usuario. Los tokens de acceso expiran, por lo que debe actualizar el token de acceso si ha expirado.

Proceso para obtener la autorización.

Modelos de OAuth disponibles

Importante

Al crear una nueva aplicación de OAuth 2.0, use Microsoft Entra ID OAuth. Azure DevOps OAuth 2.0 está programado para desuso en 2026. A partir de abril de 2025, ya no aceptamos nuevas aplicaciones de OAuth de Azure DevOps. Obtenga más información en nuestra entrada de blog.

Microsoft Entra ID OAuth

La creación de una nueva plataforma puede ser abrumadora. En esta guía para crear una aplicación de Microsoft Entra para Azure DevOps, recopilamos vínculos útiles que podrían resultar útiles para iniciar el proceso de desarrollo de aplicaciones de OAuth en Microsoft Entra. Para los usuarios que migran desde Azure DevOps OAuth a Microsoft Entra OAuth, ofrecemos sugerencias para tener en cuenta durante el esfuerzo de migración.

Azure DevOps OAuth

Para las aplicaciones existentes, consulte la guía de aplicaciones de OAuth de Azure DevOps. También puede administrar qué aplicaciones de Azure DevOps están autorizadas para acceder a los recursos.

Ámbitos

Se espera que los desarrolladores especifiquen qué ámbitos requieren de sus usuarios. Los mismos ámbitos están disponibles en ambos modelos de OAuth. Los siguientes ámbitos solo están disponibles a través de flujos delegados (en nombre del usuario). Para averiguar qué ámbitos necesita para la aplicación, busque en el encabezado scopes de la página Referencia de API para cada API que use.

Algunos ámbitos pueden ser inclusivos de otros ámbitos, por ejemplo, vso.code_manage incluye vso.code_write. Por ejemplo, muchos ámbitos heredan de. vso.profile Tenga en cuenta cuál es el número mínimo de ámbitos que necesita al solicitar el consentimiento del ámbito de los usuarios.

Nota:

Los ámbitos solo habilitan el acceso a las API REST y seleccionan puntos de conexión de Git. No se admite el acceso a la API SOAP.

Categoría Ámbito Nombre Privilegios elevados Descripción Se hereda de
Seguridad avanzada vso.advsec Seguridad avanzada (leer) Otorga la capacidad de leer alertas, instancias de resultados e instancias de resultados de análisis.
vso.advsec_write Seguridad avanzada (lectura y escritura) Otorga la capacidad de subir análisis en SARIF vso.advsec
vso.advsec_manage SeguridadAvanzada (lectura, escritura y administración) Otorga la capacidad de subir análisis en SARIF vso.advsec_write
Grupos de agentes vso.agentpools Grupos de agentes (lectura) Otorga la capacidad de ver tareas, grupos, colas, agentes y los trabajos actualmente en ejecución o recientemente completados por los agentes.
vso.agentpools_manage Grupos de agentes (lectura y administración) Concede la capacidad de administrar grupos, colas y agentes. vso.agentpools
vso.environment_manage Entorno (lectura, administración) Concede la capacidad de administrar grupos, colas, agentes y entornos. vso.agentpools_manage
Análisis vso.analytics Análisis (leer) Concede la capacidad de consultar datos de análisis.
Auditoría vso.auditlog Registro de auditoría (leer) Concede la capacidad de leer el registro de auditoría a los usuarios.
vso.auditstreams_manage Flujos de auditoría (leer) Concede la capacidad de administrar flujos de auditoría a los usuarios. vso.auditlog
Compilación vso.build Compilar (leer) Concede la capacidad de acceder a los artefactos de compilación, incluidos los resultados de compilación, las definiciones y las solicitudes, y la capacidad de recibir notificaciones sobre eventos de compilación a través de enlaces de servicio. vso.hooks_write
vso.build_execute Compilar (lectura y ejecución) Concede la capacidad de acceder a los artefactos de compilación, incluidos los resultados de compilación, las definiciones y las solicitudes, y la capacidad de poner en cola una compilación, actualizar las propiedades de compilación y la capacidad de recibir notificaciones sobre eventos de compilación a través de enlaces de servicio. vso.build
Código vso.code Código (leer) Concede la capacidad de leer código fuente y metadatos sobre confirmaciones, conjuntos de cambios, ramas y otros artefactos de control de versiones. También concede la capacidad de buscar código y recibir notificaciones sobre eventos de control de versiones a través de enlaces de servicio. vso.hooks_write
vso.code_write Código (lectura y escritura) Concede la capacidad de leer, actualizar y eliminar código fuente, acceder a metadatos sobre confirmaciones, conjuntos de cambios, ramas y otros artefactos de control de versiones. También concede la capacidad de crear y administrar solicitudes de incorporación de cambios y revisiones de código y recibir notificaciones sobre eventos de control de versiones a través de enlaces de servicio. vso.code
vso.code_manage Código (leer, escribir y administrar) Concede la capacidad de leer, actualizar y eliminar código fuente, acceder a metadatos sobre confirmaciones, conjuntos de cambios, ramas y otros artefactos de control de versiones. También concede la capacidad de crear y administrar repositorios de código, crear y administrar solicitudes de incorporación de cambios y revisiones de código, y recibir notificaciones sobre eventos de control de versiones a través de enlaces de servicio. vso.code_write
vso.code_full Código (completo) Concede acceso completo al código fuente, los metadatos sobre confirmaciones, conjuntos de cambios, ramas y otros artefactos de control de versiones. También concede la capacidad de crear y administrar repositorios de código, crear y administrar solicitudes de incorporación de cambios y revisiones de código, y recibir notificaciones sobre eventos de control de versiones a través de enlaces de servicio. También incluye compatibilidad limitada con las API de OM de cliente. vso.code_manage
vso.code_status Código (estado) Otorga la capacidad de leer y escribir el estado de las solicitudes de confirmación y extracción.
Servidor conectado vso.connected_server Servidor conectado Concede la capacidad de acceder a los puntos de conexión necesarios desde un servidor conectado local.
Derechos vso.entitlements Derechos (leer) Proporciona acceso de solo lectura al punto final de los derechos de licencia para obtener los derechos de las cuentas.
vso.memberentitlementmanagement Gestión de los derechos de los miembros (leer) Otorga la capacidad de leer a los usuarios, sus licencias y los proyectos y extensiones a los que pueden acceder.
vso.memberentitlementmanagement_write Gestión de derechos de los miembros (escritura) Concede la capacidad de administrar usuarios, sus licencias, así como proyectos y extensiones a los que pueden acceder. vso.memberentitlementmanagement
Extensiones vso.extension Extensiones (leer) Concede la capacidad de leer extensiones instaladas. vso.profile
vso.extension_manage Extensiones (leer y administrar) Concede la capacidad de instalar, desinstalar y realizar otras acciones administrativas en las extensiones instaladas. vso.extension
vso.extension.data Datos de extensión (leídos) Concede la capacidad de leer datos (configuración y documentos) almacenados por extensiones instaladas. vso.profile
vso.extension.data_write Datos de extensión (lectura y escritura) Concede la capacidad de leer y escribir datos (configuración y documentos) almacenados por extensiones instaladas. vso.extension.data
Conexiones de GitHub vso.githubconnections GitHub Connections (leer) Concede la capacidad de leer las conexiones de GitHub y los datos de repositorios de GitHub.
vso.githubconnections_manage Conexiones de GitHub (leer y administrar) Concede la capacidad de leer y administrar conexiones de GitHub y los datos de repositorios de GitHub. vso.githubconnections
Graph & identity vso.graph Gráfico (leído) Concede la capacidad de leer información de usuario, grupo, ámbito y pertenencia a grupos.
vso.graph_manage Gráfico (administrar) Concede la capacidad de leer información de usuarios, grupos, ámbito y pertenencia a grupos, y para agregar usuarios, grupos y administrar pertenencias a grupos. vso.graph
vso.identity Identidad (leer) Concede la capacidad de leer identidades y grupos.
vso.identity_manage Identidad (administrar) Concede la capacidad de leer, escribir y administrar identidades y grupos. vso.identity
Grupo de máquinas vso.machinegroup_manage Grupo de implementación (lectura, administración) Proporciona capacidad para administrar grupos de agentes y grupos de implementación. vso.agentpools_manage
Plataforma de Mercado vso.gallery Mercado Otorga el acceso de lectura a publicaciones y editoriales públicas y privadas. vso.profile
vso.gallery_acquire Marketplace (adquirir) Otorga acceso de lectura y la posibilidad de adquirir objetos. vso.gallery
vso.gallery_publish Marketplace (publicar) Concede acceso de lectura y la capacidad de cargar, actualizar y compartir elementos. vso.gallery
vso.gallery_manage Marketplace (administrar) Otorga acceso de lectura y la capacidad de publicar y administrar artículos y editores. vso.gallery_publish
Notificaciones vso.notification Notificaciones (leídas) Proporciona acceso de lectura a suscripciones y metadatos de eventos, incluidos los valores de campo filtrables. vso.profile
vso.notification_write Notificaciones (escribir) Proporciona acceso de lectura y escritura a las suscripciones y acceso de lectura a los metadatos de los eventos, incluidos los valores de campo filtrables. vso.notification
vso.notification_manage Notificaciones (administrar) Proporciona acceso de lectura, escritura y administración de las suscripciones, y acceso de solo lectura a los metadatos de los eventos, incluidos los valores de campo que se pueden filtrar. vso.notification_write
vso.notification_diagnostics Notificaciones (diagnósticos) Proporciona acceso a los registros de diagnóstico relacionados con la notificación y proporciona la capacidad de habilitar diagnósticos para suscripciones individuales. vso.notification
Empaquetado vso.packaging Embalaje (leer) Otorga la capacidad de leer fuentes y paquetes. vso.profile
vso.packaging_write Embalaje (lectura y escritura) Otorga la capacidad de crear y leer fuentes de datos y paquetes. vso.packaging
vso.packaging_manage Empaquetado (lectura, escritura y administración) Otorga la capacidad de crear, leer, actualizar y eliminar ficheros y paquetes. vso.packaging_write
Recursos de canalización vso.pipelineresources_use Recursos de canalización (uso) Concede la capacidad de aprobar la solicitud de una canalización para usar un recurso protegido: grupo de agentes, entorno, cola, repositorio, archivos seguros, conexión de servicio y grupo de variables.
vso.pipelineresources_manage Recursos de canalización (uso y administración) Concede la capacidad de administrar un recurso protegido o la solicitud de una canalización para usar un recurso protegido: grupo de agentes, entorno, cola, repositorio, archivos seguros, conexión de servicio y grupo de variables. vso.pipelineresources_manage
Proyecto y equipo vso.project Proyecto y equipo (leer) Otorga la capacidad de leer proyectos y equipos.
vso.project_write Proyecto y equipo (lectura y escritura) Otorga la capacidad de leer y actualizar proyectos y equipos. vso.project
vso.project_manage Proyecto y equipo (lectura, escritura y administración) Concede la capacidad de crear, leer, actualizar y eliminar proyectos y equipos. vso.project_write
Lanzamiento vso.release Lanzamiento (leer) Otorga la capacidad de leer los artefactos de la versión, incluidas las versiones, las definiciones de las versiones y el entorno de publicación. vso.profile
vso.release_execute Liberar (leer, escribir y ejecutar) Otorga la capacidad de leer y actualizar los artefactos de la versión, incluidas las versiones, las definiciones de las versiones y el entorno de publicación, y la capacidad de poner en cola una nueva versión. vso.release
vso.release_manage Versión (lectura, escritura, ejecución y administración) Concede la capacidad de leer, actualizar y eliminar artefactos de versión, incluidas las versiones, las definiciones de versión y el entorno de versión, y la capacidad de poner en cola y aprobar una nueva versión. vso.release_manage
Archivos seguros vso.securefiles_read Archivos seguros (lectura) Concede la capacidad de leer archivos seguros.
vso.securefiles_write Archivos seguros (leer, crear) Concede la capacidad de leer y crear archivos seguros. vso.securefiles_read
vso.securefiles_manage Archivos seguros (leer, crear y administrar) Concede la capacidad de leer, crear y administrar archivos seguros. vso.securefiles_write
Seguridad vso.security_manage Seguridad (administrar) Concede la capacidad de leer, escribir y administrar permisos de seguridad.
Conexiones de servicio vso.serviceendpoint Terminales de servicio (leer) Otorga la capacidad de leer los puntos finales del servicio. vso.profile
vso.serviceendpoint_query Terminales de servicio (lectura y consulta) Concede la capacidad de leer y consultar puntos de conexión de servicio. vso.serviceendpoint
vso.serviceendpoint_manage Puntos de conexión de servicio (lectura, consulta y administración) Otorga la capacidad de leer, consultar y administrar los puntos finales de servicio. vso.serviceendpoint_query
Ganchos de servicio vso.hooks Ganchos de servicio (leer) Otorga la capacidad de leer las suscripciones y los metadatos de Service Hook, incluidos los eventos, los consumidores y las acciones compatibles. (Ya no es público). vso.profile
vso.hooks_write Ganchos de servicio (lectura y escritura) Otorga la capacidad de crear y actualizar suscripciones a Service Hook y leer metadatos, incluidos los eventos, los consumidores y las acciones compatibles. (Ya no es público). vso.hooks
vso.hooks_interact Ganchos de servicio (interactuar) Otorga la capacidad de interactuar y realizar acciones en los eventos recibidos mediante enlaces de servicio. (Ya no es público). vso.profile
Configuración vso.settings Ajustes (leer) Concede la capacidad de leer la configuración.
vso.settings_write Ajustes (lectura y escritura) Otorga la capacidad de crear y leer ajustes.
Símbolos vso.symbols Símbolos (leer) Concede la capacidad de leer símbolos. vso.profile
vso.symbols_write Símbolos (lectura y escritura) Concede la capacidad de leer y escribir símbolos. vso.symbols
vso.symbols_manage Símbolos (lectura, escritura y administración) Concede la capacidad de leer, escribir y administrar símbolos. vso.symbols_write
Grupos de tareas vso.taskgroups_read Grupos de tareas (leer) Otorga la capacidad de leer grupos de tareas.
vso.taskgroups_write Grupos de tareas (leer, crear) Concede la capacidad de leer y crear grupos de tareas. vso.taskgroups_read
vso.taskgroups_manage Grupos de tareas (leer, crear y administrar) Concede la capacidad de leer, crear y administrar grupos de tareas. vso.taskgroups_write
Panel de equipo vso.dashboards Paneles de equipo (leer) Otorga la capacidad de leer la información del panel de control del equipo.
vso.dashboards_manage Paneles de equipo (gestión) Otorga la capacidad de administrar la información del cuadro de mando del equipo. vso.dashboards
Administración de pruebas vso.test Gestión de pruebas (leer) Concede la capacidad de leer planes de prueba, casos, resultados y otros artefactos relacionados con la administración de pruebas. vso.profile
vso.test_write Administración de pruebas (lectura y escritura) Concede la capacidad de leer, crear y actualizar planes de prueba, casos, resultados y otros artefactos relacionados con la administración de pruebas. vso.test
Hilos vso.threads_full Hilos de relaciones públicas Otorga la capacidad de leer y escribir en los hilos de comentarios de las solicitudes de extracción.
Fichas vso.tokens Tokens de autorización delegada Concede a los usuarios la capacidad de administrar tokens de autorización delegados.
vso.tokenadministration Administración de tokens Concede la capacidad de administrar (ver y revocar) tokens existentes a los administradores de la organización.
Perfil de usuario vso.profile Perfil de usuario (leer) Otorga la capacidad de leer tu perfil, cuentas, colecciones, proyectos, equipos y otros artefactos organizativos de nivel superior.
vso.profile_write Perfil de usuario (escritura) Otorga la posibilidad de escribir en tu perfil. vso.profile
Grupos de variables vso.variablegroups_read Grupos de variables (leer) Concede la capacidad de leer grupos de variables.
vso.variablegroups_write Grupos de variables (leer, crear) Concede la capacidad de leer y crear grupos de variables. vso.variablegroups_read
vso.variablegroups_manage Grupos de variables (leer, crear y administrar) Concede la capacidad de leer, crear y administrar grupos de variables. vso.variablegroups_write
Wiki vso.wiki Wiki (leer) Concede la capacidad de leer wikis, páginas wiki y datos adjuntos wiki. También concede la capacidad de buscar páginas wiki.
vso.wiki_write Wiki (lectura y escritura) Concede la capacidad de leer, crear y actualizar wikis, páginas wiki y datos adjuntos wiki. vso.wiki
Elementos de trabajo vso.work Elementos de trabajo (leer) Concede la capacidad de leer elementos de trabajo, consultas, paneles, rutas de acceso de área y de iteraciones, así como otros metadatos relacionados con el seguimiento de elementos de trabajo. También concede la capacidad de ejecutar consultas, buscar elementos de trabajo y recibir notificaciones sobre eventos de elementos de trabajo a través de enlaces de servicio. vso.hooks_write
vso.work_write Elementos de trabajo (leer y escribir) Concede la capacidad de leer, crear y actualizar elementos de trabajo y consultas, actualizar metadatos del tablero, leer rutas de área e iteraciones de otros metadatos relacionados con el seguimiento de elementos de trabajo, ejecutar consultas y recibir notificaciones sobre eventos de elementos de trabajo mediante hooks de servicio. vso.work
vso.work_full Elementos de trabajo (completos) Concede acceso total a elementos de trabajo, consultas, trabajos pendientes, planes y metadatos de seguimiento de elementos de trabajo. También ofrece la posibilidad de recibir notificaciones sobre eventos de elementos de trabajo a través de enlaces de servicio. vso.work_write
Suplantación de usuario user_impersonation Suplantación de usuario Tener acceso completo a las API REST de Visual Studio Team Services. Solicitar o dar su consentimiento a este ámbito con precaución, ya que es muy eficaz!

Preguntas más frecuentes (FAQ)

P: ¿Puedo usar OAuth con mi aplicación de teléfono móvil?

R: No. Azure DevOps Services solo admite el flujo de servidor web, por lo que no hay ninguna manera de implementar OAuth, ya que no se puede almacenar de forma segura el secreto de la aplicación.

P: ¿Puedo usar OAuth con los puntos de conexión SOAP y las API REST?

R: No. OAuth solo se admite en las API REST.