Soffid XACML Conceptos
XACML Concepts
1. Policy set
Un PolicySet es un contenedor que puede contener otras Políticas o PolicySets, así como referencias a políticas que se encuentran en ubicaciones remotas.
Cada PolicySet contiene un objetivo y obligaciones, ambos pueden estar vacíos.
- Algoritmo de combinación
- Target
- Obligaciones
El objetivo contiene los sujetos, recursos, acciones y entornos en los que se aplicará el conjunto de políticas. Un target puede contener más de un sujeto, entorno, recurso o acción o ninguno de ellos.
El conjunto de políticas puede exportarse a un archivo XML pulsando el botón Exportar. El archivo contendrá el objetivo del conjunto de políticas y todos los elementos incluidos en él, como otros conjuntos de políticas, políticas o referencias.
Es posible crear una nueva versión de un PolicySet pulsando sobre 'Añadir nueva versión'. Esto copiará todos los elementos del PolicySet en el árbol con el siguiente número de versión.
Ejemplo:
- Un conjunto de políticas aplica sobre una determinada carpeta del Password Vault.
- Cuando se trata de acceder a esta carpeta del Password Vault, se ha configurado como obligación introducir un 2FA
2. Policy
Una Política representa una única política de control de acceso, expresada a través de un conjunto de Reglas.
Cada policy contiene:
- Algoritmo de combinación
- Target
- Variables
- Rules
- Obligations
Ejemplo:
- Se establecen unas reglas para
- Permitir conectar solamente en horario laboral
- Permitir conectar solamente en dias laborables
- Prohibir conectar desde una IP no registrada
- ..
3. Target
En XACML todos los atributos se clasifican en cuatro categorías principales:
- Subjects
- Resources
- Actions
- Environments
Un objetivo puede contener más de un sujeto, entorno, recurso o acción, o ninguno de ellos. El objetivo es la forma de definir el alcance de una política de autorización. El resultado será MATCHES si todos los elementos definidos coinciden.
- Attribute Designator: permite a la política especificar un atributo con un nombre y tipo determinados, y opcionalmente también un emisor.
- Valor del atributo: contiene un valor literal del atributo.
3.1. Subjects
Actor cuyos atributos pueden ser referenciados por un predicado.
Permite añadir uno o varios sujetos como objetivo donde se aplicará la política.
Para configurar un sujeto, en primer lugar debe seleccionar un atributo. Puede seleccionar un valor de una lista de designadores de atributos o escribir el valor del selector de atributos y seleccionar el tipo de datos.
A continuación, debe seleccionar el operador, que se utilizará para comparar o calcular atributos.
Por último, debe establecer un valor con el que se calculará o comparará el atributo. El tipo de datos del valor depende del tipo de datos del atributo.
3.2. Resources
Datos, servicio o componente del sistema.
Permite añadir uno o varios recursos como destino donde se aplicará la política.
Para configurar un recurso, en primer lugar debe seleccionar un atributo. Puede seleccionar un valor de una lista de designadores de atributos o escribir el valor del selector de atributos y seleccionar el tipo de datos.
A continuación, debe seleccionar el operador, que se utilizará para comparar o calcular atributos.
Por último, debe establecer un valor con el que se calculará o comparará el atributo. El tipo de datos del valor depende del tipo de datos del atributo.
3.3. Actions
Una operación sobre un recurso.
Permite añadir una o varias acciones como objetivo donde se aplicará la política.
Para configurar una acción, en primer lugar debe seleccionar un atributo. Puede seleccionar un valor de una lista de designadores de atributos o escribir el valor del selector de atributos y seleccionar el tipo de datos.
A continuación, debe seleccionar el operador, que se utilizará para comparar o calcular atributos.
Por último, debe establecer un valor con el que se calculará o comparará el atributo. El tipo de datos del valor depende del tipo de datos del atributo.
3.4. Environments
Conjunto de atributos que son relevantes para una decisión de autorización y son independientes de un sujeto, recurso o acción en particular.
Permite añadir uno o varios entornos como destino donde se aplicará la política.
Para configurar un entorno, en primer lugar debe seleccionar un atributo. Puede seleccionar un valor de una lista de designadores de atributos o escribir el valor del selector de atributos y seleccionar el tipo de datos. La dirección
A continuación, debe seleccionar el operador, que se utilizará para comparar o calcular atributos.
Por último, debe establecer un valor con el que se calculará o comparará el atributo. El tipo de datos del valor depende del tipo de datos del atributo.
Ejemplo:
- Target: solo aplica a usuairos con un determinado rol.
- Resources: solo aplica sobre una determinada carpeta
Rules
Una regla es la unidad más pequeña dentro de una política. Sólo puede existir de forma aislada dentro de uno de los actores principales del dominio XACML. Cada regla establece una condición específica para permitir o denegar el acceso a un recurso.
- Efecto
- Target
- Conditions