El control de acceso basado en roles (RBAC) y el control de acceso basado en atributos (ABAC) son las dos formas más populares de implementar el control de acceso. Saber qué separa a los dos métodos puede ayudarlo a elegir lo que es adecuado para su organización.
RBAC otorga o rechaza el acceso según el rol del usuario solicitante dentro de una empresa. ABAC tiene en cuenta varios atributos o características preconfigurados que pueden estar relacionados con el usuario y/o el entorno y/o el recurso al que se accede
La duración del acceso también puede ser diferente para diferentes roles. Por ejemplo a un contratista externo se le asigna el rol de externo lo que le otorga acceso a un servidor durante x horas. Por otro lado un desarrollador de software interno puede tener acceso indefinido al mismo servidor.
También es posible que a un usuario se le asignen múltiples funciones. Por ejemplo, un arquitecto de software supervisa diferentes equipos que están construyendo diferentes proyectos. Necesitan acceso a todos los archivos relacionados con todos estos proyectos. Con este fin el administrador les asigna múltiples roles cada uno de los cuales les da acceso a los archivos de un proyecto en particular.
Tipos de RBAC
El modelo NIST para el control de acceso basado en roles define las siguientes categorías de RBAC:
- Flat RBAC: a cada empleado se le asigna al menos un rol pero algunos pueden tener más de uno. Si alguien quiere acceder a un nuevo archivo/recurso/servidor, primero debe obtener un nuevo rol.
- RBAC jerárquico: los roles se definen en función de los niveles de antigüedad. Además de sus propios privilegios, los empleados superiores también poseen los de sus subordinados.
- RBAC restringido: este modelo introduce la separación de tareas (SOD). SOD distribuye la autoridad de realizar una tarea entre múltiples usuarios, lo que reduce el riesgo de actividades fraudulentas y/o riesgosas. Por ejemplo, si un desarrollador quiere desmantelar un servidor, necesita la aprobación no solo de su gerente directo, sino también del jefe de infraestructura. Esto le da al jefe de infraestructura un cambio para rechazar solicitudes arriesgadas y/o innecesarias.
- RBAC simétrico: todos los roles de la organización se revisan con regularidad. Como resultado de estas revisiones, se pueden asignar o revocar privilegios y se pueden agregar o eliminar funciones.
¿Qué es el control de acceso basado en atributos (ABAC)?
En un entorno ABAC cuando un usuario inicia sesión el sistema otorga o rechaza el acceso en función de diferentes atributos. Estos atributos pueden estar relacionados con:
- Usuario. En términos ABAC, el usuario solicitante también se conoce como sujeto. Los atributos de usuario pueden incluir designación, responsabilidades habituales, autorización de seguridad, departamento y/o niveles de antigüedad.
Por ejemplo supongamos que Bob un analista de nóminas intenta acceder al portal de recursos humanos. El sistema verifica sus atributos de “departamento”, “designación” y “responsabilidades” para determinar que se les debe permitir el acceso. Sin embargo si Alice del equipo de TI intenta acceder al mismo portal no se le permitirá porque no tiene los atributos requeridos.
- recurso accedido. Esto puede incluir el nombre y el tipo del recurso (que puede ser un archivo, un servidor o una aplicación), su creador y propietario, y el nivel de confidencialidad.Por ejemplo, Alice intenta acceder a un archivo compartido que contiene las mejores prácticas para el desarrollo de software. Dado que el atributo de “nivel de sensibilidad” del archivo es bajo, Alice puede acceder a él, aunque no sea de su propiedad. Sin embargo, si intenta acceder a un archivo de un proyecto en el que no trabaja, los atributos “propietario del archivo” y “nivel de confidencialidad” le impedirán hacerlo.
- Acción. ¿Qué intenta hacer el usuario con el recurso? Los atributos relevantes pueden incluir “escribir”, “leer”, “copiar”, “eliminar”, “actualizar” o “todo”. Por ejemplo, si Alice solo tiene el atributo “leer” establecido en su perfil, para un archivo en particular, no podrá actualizar el código fuente escrito en ese archivo. Sin embargo, alguien con el conjunto de atributos “todos” puede hacer lo que quiera.
- Ambiente. Algunos de los atributos considerados son la hora del día, la ubicación del usuario y el recurso el dispositivo del usuario y el dispositivo que aloja el archivo.
Por ejemplo Alice puede tener acceso a un archivo en un entorno “local” pero no cuando está alojado en un entorno de “cliente”.
RBAC frente a ABAC: pros y contras
¿Cuándo usar RBAC o ABAC?
Aunque ABAC se considera ampliamente como una forma evolucionada de RBAC no siempre es la opción correcta. Según el tamaño el presupuesto y las necesidades de seguridad de su empresa puede elegir uno u otro.
Elija ABAC si usted:
- Tener el tiempo, los recursos y el presupuesto para una implementación adecuada de ABAC.
- Están en una organización grande, que está en constante crecimiento. ABAC permite la escalabilidad.
- Contar con una fuerza de trabajo distribuida geográficamente. ABAC puede ayudarlo a agregar atributos según la ubicación y la zona horaria.
- Quiere una política de control de acceso lo más granular y flexible posible.
- Quiere preparar su política de control de acceso para el futuro. El mundo está evolucionando y RBAC se está convirtiendo lentamente en un enfoque obsoleto. ABAC le brinda más control y flexibilidad sobre sus controles de seguridad.
Elija RBAC si usted:
- Están en una organización de tamaño pequeño a mediano.
- Tenga grupos bien definidos dentro de su organización y tiene sentido aplicar políticas amplias basadas en funciones.
- Tener tiempo, recursos y/o presupuesto limitados para implementar una política de control de acceso.
- No tenga demasiados colaboradores externos y no espere incorporar a mucha gente nueva.
Es un conocido experto en seguridad móvil y análisis de malware. Estudió Ciencias de la Computación en la NYU y comenzó a trabajar como analista de seguridad cibernética en 2003. Trabaja activamente como experto en antimalware. También trabajó para empresas de seguridad como Kaspersky Lab. Su trabajo diario incluye investigar sobre nuevos incidentes de malware y ciberseguridad. También tiene un profundo nivel de conocimiento en seguridad móvil y vulnerabilidades móviles.