Autenticación y autorización con Entra ID

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Conceptos básicos de OAuth

Integración de Entra ID y APIM

Azure API Management

Por qué usar un proveedor de identidad

Analogía del aparcacoches

  • Piensa en un IdP como en un aparcacoches
  • Tu coche tiene objetos valiosos en la guantera (datos seguros)
  • Le das al aparcacoches una llave de valet especial
    • solo le permite aparcar, no acceder a los objetos
  • Igual que el IdP: gestiona la seguridad de la app pero no accede a los datos internos
  • Ejemplo: Entra ID actúa como IdP y API Manager como cliente
Azure API Management

Registrar la app en Entra ID

  • Entra ID está en el Azure Portal
  • Se necesita acceso de colaborador con privilegios altos para gestionarlo
  • Para aplicar OAuth, añade una entidad en App Registration
  • Cada registro requiere un nombre personalizado y una URL de redirección válida
  • En APIM, la URL de redirección es la dirección de la instancia de APIM
  • Así, Entra ID redirige las solicitudes a APIM tras el inicio de sesión

Registro de app en Entra ID

Azure API Management

Capturar la información del cliente

Información del cliente en Entra ID

  • Client ID y Tenant ID

    • Forman la dirección pública de la aplicación
    • El código los usa para decir a Entra ID «quién» es la app
  • Client Secret

    • Actúa como la contraseña de la aplicación
    • El código lo presenta para probar su identidad
    • Debe guardarse de forma segura y nunca exponerse en código del lado cliente
Azure API Management

Obtener las URL de endpoints

  • Obtén las URL de los endpoints del IdP antes de conectar el cliente

    • En Entra ID, haz clic en Endpoints en la página Overview del registro
    • Captura los endpoints de OAuth 2.0: authorization y token
  • Authorization Endpoint

    • Donde el código redirige a las personas usuarias para iniciar sesión
  • Token Endpoint

    • El backend intercambia el código de autorización por un token de acceso

Flujo de autenticación de Entra ID

Azure API Management

Conectar APIM con Entra ID

Conexión OAuth y OIDC en APIM

  • En APIM, abre OAuth 2.0 + OpenID Connect en APIs

    • Define un nuevo servidor de autorización
  • Configúralo con:

    • Endpoints de autorización y token
    • Client ID y Client Secret
    • Ámbitos expuestos por tu API
Azure API Management

¡Vamos a practicar!

Azure API Management

Preparing Video For Download...