Skip to main content

Introducción a XAML

¿Qué es XACML?

XACML «eXtensible Access Control Markup Language» es un lenguaje estándar abierto basado en XML. El estándar define un lenguaje declarativo de políticas de control de acceso de grano fino basado en atributos, una arquitectura y un modelo de procesamiento que describe cómo evaluar las solicitudes de acceso de acuerdo con las reglas definidas en las políticas. (*Wikipedia definition)

Lenguaje de políticas XACML: se utiliza para describir requisitos generales de control de acceso.

Protocolo de solicitud/respuesta XACML: se utiliza para consultar un motor de toma de decisiones que evalúa las solicitudes de acceso del mundo real en función de las políticas XACML existentes.

Arquitectura de referencia XACML: proporciona un estándar para el despliegue de los módulos de software necesarios para lograr una aplicación eficaz de las políticas XACML.

Terminología

  • PAP - Administración de políticas: Punto que gestiona las políticas de autorización de acceso.
  • PDP - Punto de decisión de políticas: Punto que evalúa las solicitudes de acceso con respecto a las políticas de autorización antes de emitir decisiones de acceso.
  • PEP - Policy Enforcement Point (punto de aplicación de políticas): Punto que intercepta la solicitud de acceso del u PRP - Punto de recuperación de la política suario a un recurso, realiza una solicitud de decisión al PDP para obtener la decisión de acceso.
  • PRP - Punto de recuperación de la política:  Punto donde se almacenan las políticas de autorización de acceso XACML, normalmente una base de datos o el sistema de ficheros.
  • PIP - Punto de información de políticas

Flujo

 

image.png

 

  1. Un usuario envía una solicitud de peticion de acceso a un recurso que es interceptada por el PEP (Punto de Aplicación de Políticas (PEP)ticas).
  2. El PEP convierte la solicitud en una solicitud de autorización XACML.
  3. El PEP reenvía la solicitud de autorización al Punto de Decisión de Políticas (PDP).
  4. El PDP evalúa la solicitud de autorización en función de las políticas configuradas. Las políticas se obtienen a través del punto de recuperación de políticas (PRP) y las gestiona el punto de administración de políticas (PAP). Si es necesario, también recupera valores de atributos de los puntos de información de políticas (PIP) subyacentes.
  5. El PDP toma una decisión (Permitir / Denegar / NoAplicable / Indeterminada) y la devuelve al PEP.

En Soffid, PAP y PIP se implementan en la Consola.

Soffid XACML

Usando el addon XACML es posible añadir controles de acceso estándar XACML a la consola Soffid. En este caso, Soffid puede ser capaz de añadir reglas más complejas y restringidas a las autorizaciones.


(*) https://en.wikipedia.org/wiki/XACML

(**) https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=xacml#XACML20