> ## Documentation Index
> Fetch the complete documentation index at: https://docs.iru.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Microsoft Azure DevOps

> Conecta Microsoft Azure DevOps a Iru Compliance con OAuth de Microsoft Entra ID para recopilar la configuración de proyectos, repositorios, directivas de rama, pull requests, pipelines, permisos y la actividad de auditoría de la organización.

### Acerca de Microsoft Azure DevOps

Iru lee **proyectos**, **repositorios**, **directivas de rama**, **pull requests**, **pipelines de compilación y versión**, **usuarios y grupos**, **conexiones de servicio** y **eventos del registro de auditoría** desde la API REST de Azure DevOps. La autenticación es **OAuth 2.0** delegada a través de **Microsoft Entra ID**, con el mismo asistente **Launch OAuth Authentication** que las demás fuentes de Microsoft Azure. Inicias sesión con una cuenta de trabajo. Iru no solicita un token de acceso personal. La recopilación se limita a las organizaciones y los proyectos que esa cuenta ya puede ver. Se recopilan los **nombres de las variables** de los pipelines; **los valores secretos no**.

### Cómo funciona

```http theme={null}
OAuth 2.0 authorization code flow (Microsoft Entra ID)
```

Iru usa el flujo de código de autorización de OAuth 2.0 de Microsoft contra Azure DevOps. Después de iniciar sesión y dar tu consentimiento en la ventana emergente, Iru recibe un token de acceso de corta duración y lo renueva automáticamente. Los ámbitos solicitados siguen el modelo de permisos de Azure DevOps (acceso de lectura como `vso.code`, `vso.build`, `vso.release`, `vso.graph` y `vso.audit_log`). No crees ni pegues un token de acceso personal. El asistente no lo aceptará.

| Detalle | Valor |
| - | - |
| **Categoría** | Herramientas para desarrolladores |
| **Autenticación** | OAuth 2.0 (Microsoft Entra ID) |

Referencias oficiales: [Descripción general de la API REST](https://learn.microsoft.com/en-us/rest/api/azure/devops/), [Autorizar el acceso a las API REST con OAuth 2.0](https://learn.microsoft.com/en-us/azure/devops/integrate/get-started/authentication/oauth).

### Requisitos previos

* Una cuenta de **Microsoft Entra ID** que pueda iniciar sesión en la organización de Azure DevOps que quieres que Iru lea (`contoso` de `https://dev.azure.com/contoso`).
* Visibilidad de todos los proyectos que quieres que Iru lea. OAuth es delegado, por lo que Iru hereda el acceso a proyectos de esa cuenta. Una cuenta que no puede ver un proyecto no devuelve nada de él.
* **Ventanas emergentes** del navegador permitidas para el sitio de Iru, para que se pueda abrir la pantalla de consentimiento de Microsoft. Decide el alcance de los proyectos: si las directivas de rama quedan fuera del alcance, Iru no puede verificar los controles de revisión de código o de aprobación.

### Conectar Microsoft Azure DevOps a Iru

<Tabs>
  <Tab title="Azure DevOps">
    <Note>
      Completa esta pestaña antes de conectar la fuente en Compliance.
    </Note>

    <Steps>
      <Step title="Inicia sesión en Azure DevOps">
        Inicia sesión en `https://dev.azure.com/{your-organization}` con la cuenta de **Microsoft Entra ID** que usarás en el asistente de Iru (el mismo tenant y la misma organización que quieres que Iru lea).
      </Step>

      <Step title="Confirma el acceso a los proyectos">
        Confirma que puedes abrir todos los proyectos del alcance. Iru solo puede recopilar lo que esta cuenta ya puede ver.
      </Step>

      <Step title="Permite ventanas emergentes en el navegador">
        Permite las **ventanas emergentes** para el nombre de host de Iru para que la pantalla de consentimiento de Microsoft pueda abrirse desde el asistente del conector.
      </Step>

      <Step title="Ten en cuenta los problemas con varios tenants">
        Si tu empresa usa varios tenants de Microsoft Entra ID, cierra la sesión de las cuentas personales de Microsoft en el mismo perfil del navegador, o usa una ventana privada, para que la ventana emergente de OAuth elija la cuenta de trabajo correcta.
      </Step>

      <Step title="No crees un token de acceso personal">
        Iru se autentica con OAuth 2.0. No pegues un PAT en el asistente.
      </Step>
    </Steps>

    <Note>
      Continúa en la pestaña [**Iru Compliance**](#iru-compliance).
    </Note>
  </Tab>

  <Tab title="Iru Compliance">
    <Note>
      Primero completa la pestaña [**Azure DevOps**](#azure-devops).
    </Note>

    <Steps>
      <Step title="Abre Sources">
        En Iru Compliance, en la barra de navegación izquierda, expande **Cumplimiento** y selecciona **Fuentes**.

        <Frame>
          <img src="https://mintcdn.com/iru/tI0HDLDwHj8r9Ile/assets/media/images/iru-navigation-compliance-sources.png?fit=max&auto=format&n=tI0HDLDwHj8r9Ile&q=85&s=87dcef15fc17d2fb9a6e53f454e41710" alt="Navegación izquierda: Compliance expandido, Sources seleccionado" width="410" height="1024" data-path="assets/media/images/iru-navigation-compliance-sources.png" />
        </Frame>
      </Step>

      <Step title="Activa Microsoft Azure DevOps">
        Busca **Microsoft Azure DevOps** (usa **Categoría** o **Buscar por nombre o descripción**). En esa tarjeta, activa el **interruptor**. Es posible que se abra una pestaña o ventana del navegador para el asistente del conector.
      </Step>

      <Step title="Inicia la autenticación OAuth">
        Selecciona **Launch OAuth Authentication**. El asistente muestra **Perform OAuth Authentication**.
      </Step>

      <Step title="Inicia sesión y da tu consentimiento">
        Cuando se abra la ventana de Microsoft, inicia sesión con la misma cuenta de trabajo que verificaste en Azure DevOps y selecciona **Accept** en la pantalla de consentimiento.
      </Step>

      <Step title="Finaliza la conexión">
        Cuando la ventana de OAuth se cierra e Iru completa el intercambio, el asistente muestra **Conexión configurada**. Si el asistente también solicita el nombre de una **organización**, introduce solo el nombre (por ejemplo, `contoso`, no la URL completa).
      </Step>

      <Step title="Confirma que la fuente está activa">
        Cierra la pestaña del navegador **Iru está solicitando acceso a servicios externos**, luego vuelve a **Cumplimiento** → **Fuentes** y confirma que la tarjeta de **Microsoft Azure DevOps** está **Activo**.
      </Step>
    </Steps>
  </Tab>
</Tabs>

### Solución de problemas

<AccordionGroup>
  <Accordion title="No se abre nada al activar la fuente">
    Revisa la configuración del **bloqueador de ventanas emergentes** para el sitio de Iru e inténtalo de nuevo.
  </Accordion>

  <Accordion title="La autenticación falla o la ventana de Microsoft nunca aparece">
    Revisa la configuración del **bloqueador de ventanas emergentes** y, a continuación, inicia sesión con la cuenta de trabajo del tenant correcto de Microsoft Entra ID.
  </Accordion>

  <Accordion title="Aparecen los repositorios, pero no las directivas de rama, las pull requests ni los pipelines">
    La cuenta que inicia sesión no tiene acceso de lectura a esos objetos. Inicia sesión con una cuenta que pueda ver todos los proyectos del alcance, o pide a un administrador que conceda ese acceso y vuelve a conectar.
  </Accordion>

  <Accordion title="Falta un proyecto por completo">
    La cuenta que completó OAuth no puede ver ese proyecto. Vuelve a conectar con una cuenta que tenga acceso a todos los proyectos del alcance.
  </Accordion>

  <Accordion title="La tarjeta muestra Broken después de un período de inactividad">
    Los tokens de acceso se renuevan mientras la conexión está activa. Si la actualización se interrumpe, desactiva y activa la fuente y, a continuación, vuelve a completar OAuth. No se trata de la caducidad de un PAT. Iru no usa un token de acceso personal para esta fuente.
  </Accordion>
</AccordionGroup>

### Artículos relacionados

<CardGroup cols={2}>
  <Card title="Gestión de fuentes" icon="plug" href="/es/compliance/sources-management">
    Explora y gestiona todas las fuentes de Compliance.
  </Card>

  <Card title="Introducción a Compliance" icon="rocket" href="/es/compliance/getting-started-with-compliance">
    Marcos, acciones y **Artefactos**.
  </Card>

  <Card title="Descripción general de Iru" icon="layer-group" href="/es/iru/platform-overview/iru-overview">
    Cómo encajan Endpoint, Compliance e Identity.
  </Card>

  <Card title="Gestión de artefactos" icon="folder-open" href="/es/compliance/artifacts-management">
    Sube, revisa y organiza la evidencia de fuentes y acciones.
  </Card>
</CardGroup>
