Integraciones
Breadcrumbs

SSO Azure

Modelo de integración

Autenticación (Oauth2)

Anjana Data se integra mediante circuito estándar para “Web apps”, descrito por el fabricante en la siguiente documentación:

https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow

https://docs.microsoft.com/en-us/azure/active-directory/develop/app-sign-in-flow

https://docs.microsoft.com/en-us/azure/active-directory/develop/authentication-flows-app-scenarios


Para la recuperación de información relativa a perfil de usuario y grupos se explota la API Microsoft Graph:

https://docs.microsoft.com/en-us/graph/overview


Es importante considerar que la capacidad de uso de esta API corresponde directamente con la cuota que Microsoft le tiene asignada a la cuenta del cliente con su licencia. De forma general Microsoft limita las peticiones a:



La funcionalidad está directamente embebida en el microservicio de gestión de autenticación Zeus, se habilita y configura mediante el fichero de configuración de dicho microservicio.


Configuración de autenticación

En la propiedad security.authentication se configuran los distintos proveedores de autenticación que se utilizan.

En el caso de Azure es necesario configurar las siguientes propiedades:

security: 
 authentication:
    oidc:
      providers:  
        azure:
          name: Anjana Azure
          authorize-url: https://login.microsoftonline.com/aef41d72-8720-418a-bb06-9fb98ef04ded/oauth2/v2.0/authorize?client_id=${security.authentication.oidc.providers.azure.client-id}&response_type=code&response_mode=query&scope=${security.authentication.oidc.providers.azure.scopes}&redirect_uri=${security.authentication.oidc.providers.azure.redirect-uri}
          authorize-url-portuno: https://login.microsoftonline.com/aef41d72-8720-418a-bb06-9fb98ef04ded/oauth2/v2.0/authorize?client_id=${security.authentication.oidc.providers.azure.client-id}&response_type=code&response_mode=query&scope=${security.authentication.oidc.providers.azure.scopes}&redirect_uri=${security.authentication.oidc.providers.azure.redirect-uri-portuno}
          token-url: https://login.microsoftonline.com/<tenant>/oauth2/v2.0/token
          scopes: openid profile email user.read
          client-id: <client-id>
          client-secret: <client-secret>
          client-authentication-method: POST
          redirect-uri: https://anjana.client.com:8443/anjana/authorized
          redirect-uri-portuno: https://anjana.client.com:8443/admin/authorized
          username-claim: preferred_username
          workflowType: IMPLICIT
          type: AZURE
          default-scopes: https://graph.microsoft.com/.default
          tenant-id: <tenantId> 


name: el nombre que se mostrará en la pantalla de login

client-id se encuentra en la pantalla Overview bajo la propiedad “Application (client) id” y client-secret en Manage > Clients & Secrets > Client secrets y al crear uno será el “value”


Gobierno activo

El plugin a desplegar el cual realizará la parte de las tareas de gobierno activo que tengan que provisionar elementos sobre Azure AD es “Tot plugin Azure AD”.

Para la provisión de grupos de usuarios a los que posteriormente se asignan permisos de acceso a recursos de datos gobernados por el producto se explota la API Microsoft Graph:

https://docs.microsoft.com/en-us/graph/overview

Credenciales requeridas

La credencial puede ser única aglutinando los permisos de ambas, pero se recomienda mantenerlas por separado de cara a facilitar la monitorización y auditoría de la actividad ejercida por las mismas.

Autenticación (Oauth2)

La funcionalidad está directamente embebida en el microservicio de gestión de autenticación Zeus, se habilita y configura mediante el fichero de configuración de dicho microservicio.


  • Para la autenticación web se deben configurar las url acorde al nombre de dominio que enrute hasta el frontal de Anjana Data, es necesario dar de alta dos URL, más la de log out:

    • https://<host>:<port>/anjana/authorized

    • https://<host>:<port>/anjana/login

    • https://<host>:<port>/anjana/logout


att_2_for_171868229.png
att_4_for_171868229.png


En base a necesidad ajustar las opciones, generalmente son las siguientes:

att_6_for_171868229.png


Tras ello es necesario crear cliente y secreto que posteriormente será configurado en producto:

att_5_for_171868229.png


Asignar permisos de lectura necesarios para recopilar la información del usuario y sus membresías que serán mapeadas de forma automática a roles y unidades organizativas en el producto:

image-20250808-092352.png

Asignar usuarios a los grupos de Azure AD.

Gobierno activo

El plugin a desplegar el cual realizará la parte de las tareas de gobierno activo que tengan que provisionar elementos sobre Azure AD es “Tot plugin Azure AD”, en su documentación queda descrita la credencial requerida.

Emulación SSO vía Oauth2

El protocolo Oauth2 observa la autenticación transparente en caso de que sea posible, para lo cual solo es necesario redirigir al usuario a https://<host>/provider=<identificador de provider en zeus>, si el usuario ya está logado en dicho provider y las políticas configuradas en dicho provider hacen que no se requiera validar nuevamente la credencial, el usuario será autenticado en Anjana Data de forma totalmente transparente.