Formulación de políticas ABAC y pregunta RBAC

1

Se me pide que responda una pregunta que diga:

  

Una librería en línea desea tener un gran acceso a los clientes con respecto a su suscripción. Hay 3 tipos de suscripciones A, B y C. Los clientes obtienen acceso en el tipo de suscripción que eligieron. Además, si un libro no figura en la lista de suscripción, es gratuito para todos y, cada 15 de cada mes, todos los libros son gratuitos.
  1) Describa con representación formal la política anterior sobre ABAC.
  2) ¿Cuántos roles necesita el modelo RBAC y cuáles?

He estudiado Al-Kahtani & Papel Sandhu, que solo cubre el RBAC, pero no ABAC.
En mi entendimiento, tengo que establecer 2 reglas para ABAC.
La primera regla permitirá que los 3 tipos de suscriptores tengan gratis todos los libros no listados. La segunda regla contendrá una (e) fecha 15 que todos los libros serán gratis. ¿O es algo completamente diferente?

En lo que respecta a RBAC, necesito 3 roles con respecto a los nombres de suscripción.

Cualquier ayuda que se aprecie, ya que me parece que hay literatura que tiene un ejemplo de formulación de políticas ABAC.

    
pregunta Jamesgr 21.01.2016 - 15:57
fuente

1 respuesta

0

Axiomatics proporciona un ciclo de vida de la política de autorización que le ayudará a formular su política ABAC.

  1. Defina el caso de uso
  2. Defina los requisitos de autorización del caso de uso en declaraciones en lenguaje natural
  3. Identifique los atributos que se utilizan en las declaraciones en lenguaje natural
  4. Identifique de dónde provienen los atributos
  5. Reproduzca las declaraciones en lenguaje natural como reglas basadas en atributos
  6. Definir los casos de prueba
  7. Conecte los puntos: dibuje un diagrama de arquitectura del sistema en general

Veamos tu ejemplo.

Caso de uso

Una librería en línea desea tener un gran acceso a los clientes con respecto a su suscripción. Hay 3 tipos de suscripciones A, B y C.

Requisitos de autorización

  1. Los clientes obtienen acceso en el tipo de suscripción que elijan.
  2. Si un libro no aparece en la lista de suscripción, es gratis para todos.
  3. Cada 15 de cada mes, todos los libros son gratuitos.

Identificar atributos

Atributos de usuario

  1. rol de usuario, por ejemplo cliente
  2. plan de suscripción del usuario, por ejemplo, A, B, C
  3. Opcionalmente estado del cliente (activo, inactivo)

Atributos de recursos

  1. Plan de suscripción de libros

Atributos de acción

  1. ID de acción, por ejemplo, ver, eliminar, aprobar ...

Atributos contextuales

  1. Fecha / Día del mes

Identifique la fuente de los atributos

En esta etapa, usted define si los atributos provienen de una base de datos, un LDAP, un servicio web ... Esto es más un problema de implementación / implementación. En este ejercicio teórico, puedes omitir este paso.

Vuelva a trabajar las declaraciones en lenguaje natural como basadas en atributos

  1. Un usuario con el rol == cliente puede realizar la acción == descargar en un objeto de tipo == libro si customer.subscription == book.subscription
  2. Un usuario con el rol == cliente puede realizar la acción == descargar en un objeto de tipo == libro si book.subscription == ''
  3. Un usuario con el rol == cliente puede realizar la acción == descargar en un objeto de tipo == reservar si date.day == '15'

En conclusión, significa que su modelo RBAC necesita un solo rol, cliente.

Puede usar el lenguaje ALFA para modelar sus políticas y convertirlas en XACML, el control de acceso extensible Lenguaje de marcado.

    
respondido por el David Brossard 22.01.2016 - 10:34
fuente

Lea otras preguntas en las etiquetas