Autorización basada en roles frente a Autorización basada en reclamaciones

31

¿Cuál es la diferencia entre "autorización basada en rol" y "autorización basada en reclamación"? ¿Bajo qué circunstancias sería apropiado implementar cada uno de estos modelos de autorización?

    
pregunta user960567 11.11.2013 - 14:34
fuente

2 respuestas

26

Las reclamaciones son un método para proporcionar información sobre un usuario, y los roles son una descripción de un usuario a través de qué roles pertenecen.

Las reclamaciones son generalmente más útiles porque pueden contener datos arbitrarios, incluida la información de membresía de rol. P.ej. lo que sea útil para la aplicación dada.

Las identidades basadas en reclamaciones son más útiles, pero tienden a ser más difíciles de usar porque hay una gran cantidad de configuraciones involucradas para adquirir las reclamaciones en primer lugar. Las identidades RBAC son menos útiles porque son solo una colección de roles, pero generalmente son más fáciles de configurar.

La pila de .NET, y Windows en su conjunto, van a las reclamaciones. Los tickets authn de Windows son notificaciones, y Active Directory ahora tiene la capacidad de usar notificaciones para ciertas funciones. La pila .NET usa una identidad de notificaciones como el objeto de identidad base ahora de forma predeterminada.

    
respondido por el Steve 11.11.2013 - 21:16
fuente
18

Como dijo @SteveS, RBAC es un modelo de autorización, mientras que las reclamaciones son una forma de proporcionar información sobre un usuario. Se generaliza la noción de un papel. En el pasado, los servidores de identidad simplemente proporcionaban a las aplicaciones el nombre de usuario y la lista de roles / grupos. Las reclamaciones generalizan esto de tal manera que cualquier atributo de usuario se puede pasar a la aplicación consumidora.

La autorización en sí misma todavía maneja la autorización usando las reclamaciones y su propia lógica. Microsot SharePoint y Windows Server 2012 son buenos ejemplos de aplicaciones que utilizan notificaciones para entregar una autorización más detallada. SharePoint asume que si un usuario tiene al menos una reclamación que también está asignada a un sitio / documento, entonces se permite el acceso. Windows Server 2012 tiene un lenguaje llamado SDDL que se puede usar para combinar reclamaciones de usuarios e información de clasificación de archivos.

En general, sin embargo, desea comparar RBAC (control de acceso basado en roles) con ABAC (control de acceso basado en atributos). Ambos son modelos de autorización definidos por el NIST. Ambos pueden usar reclamos pero no necesariamente. Además, las reclamaciones están muy centradas en el usuario, mientras que ABAC le permite definir la autorización en función de los atributos del usuario (reclamaciones), así como los atributos de los recursos (objeto) e incluso el contexto (hora del día ...).

ABAC se implementa en el estándar OASIS XACML (eXtensible Access Control Markup Language) que le proporciona control de acceso basado en atributos y políticas.

Aquí hay algunas buenas referencias que puedes consultar:

respondido por el David Brossard 12.11.2013 - 14:56
fuente

Lea otras preguntas en las etiquetas