Microsoft identity platform

Implementar la seguridad de Azure para desarrolladores

Anushika Agarwal

Cloud Data Engineer

¿Qué es Microsoft identity platform?

  • Gestiona el inicio de sesión y el acceso de las apps
    • Basada en Microsoft Entra ID
      • Entra ID = Servicio de identidad central
      • Identity Platform = Capa de desarrollo para apps

Relación entre Entra ID y Microsoft Identity Platform

Implementar la seguridad de Azure para desarrolladores

¿Cómo funciona?

  • Autentica:
    • Estándares:
      1. OAuth 2.0: limita lo que pueden hacer las apps
      2. OpenID Connect: confirma quién eres
    • Tipos de cuenta
      • Cuentas de empresa/escuela
      • Cuentas personales de Microsoft
      • Cuentas sociales/locales

Microsoft Identity Platform

Implementar la seguridad de Azure para desarrolladores

Herramientas clave de Microsoft identity platform

  • MSAL:
    • solicita tokens para apps

MSAL

  • Registro de la app:
    • configura la identidad de la app en Azure

App registration

  • Microsoft Graph API:
    • accede a usuarios, grupos y recursos

Microsoft Graph API

Implementar la seguridad de Azure para desarrolladores

Registro de la app

  • Registrar apps las conecta con Entra ID

  • Elige:

    • Single-tenant: la app funciona solo en tu organización
    • Multi-tenant: la app funciona entre organizaciones
  • Crea automáticamente:

    • Application object
    • Service principal
  • Añade secretos, certificados, ámbitos y marca

Registro de la app

Implementar la seguridad de Azure para desarrolladores

Application object

  • Plano de la app
  • Reside en tu inquilino de origen
  • Define autenticación y reglas de acceso

Application Object

Implementar la seguridad de Azure para desarrolladores

Ejemplo: application object en PeopleSphere

  • PeopleSphere crea una app de RR. HH. en su propio inquilino

Ejemplo de Application Object de PeopleSphere

Implementar la seguridad de Azure para desarrolladores

Service principal

  • Instancia de la app en cada inquilino
  • Copia operativa de la clave original
  • Cada cliente obtiene su propio service principal en su inquilino

Service Principal

Implementar la seguridad de Azure para desarrolladores

Ejemplo: service principal en DataCamp

  • Service principal creado en el inquilino de DataCamp

Ejemplo de service principal en DataCamp

Implementar la seguridad de Azure para desarrolladores

Tipos de service principal

  • Application:
    • Instancia estándar de app

Application

  • Managed Identity:
    • Acceso sin secretos

Managed Identity

  • Legacy:
    • Apps antiguas

Legacy

Implementar la seguridad de Azure para desarrolladores

Permisos

  • Las apps solicitan acceso con OAuth 2.0 y ámbitos de permisos

  • graph.microsoft.com/Calendars.Read

Ejemplo de ámbito Calendars.Read.

Cómo las apps solicitan y obtienen acceso vía Microsoft Identity Platform

Implementar la seguridad de Azure para desarrolladores

Permisos delegados

  • La app actúa en nombre del usuario cuando hay usuario con sesión iniciada

  • Ejemplo: PeopleSphere programa reuniones para usuarios de DataCamp

Ejemplo de permiso delegado de PeopleSphere

Implementar la seguridad de Azure para desarrolladores

Permisos solo de aplicación

  • La app actúa por sí misma
  • Sin intervención de usuario
  • Ejemplo: PeopleSphere sincroniza datos de RR. HH. cada noche

Ejemplo de permiso solo de aplicación de PeopleSphere

Implementar la seguridad de Azure para desarrolladores

Consentimiento

  • Las apps necesitan consentimiento para activar ámbitos de permisos

  • Tipos de consentimiento:

    • Estático: permisos definidos en el registro
    • Incremental: se añaden según necesidad
    • De administrador: requerido para acceso de alto privilegio

Consentimiento

Implementar la seguridad de Azure para desarrolladores

¡Vamos a practicar!

Implementar la seguridad de Azure para desarrolladores

Preparing Video For Download...