Article
Control de acceso basado en roles (RBAC)
¿Qué es el RBAC?
El control de acceso basado en roles (RBAC) es un conjunto de métodos de seguridad que se basa en la gestión del acceso de los usuarios para proteger los recursos —incluidos datos, aplicaciones y sistemas— contra el acceso, la modificación, la incorporación o la eliminación inadecuados. El RBAC otorga el acceso según las necesidades de un usuario y su cargo. Además, se definen las funciones y los privilegios relacionados, y se conceden permisos para controlar el acceso (es decir, lo que puede ver un usuario), el alcance de las operaciones aprobadas (es decir, lo que puede hacer un usuario, como ver, crear o modificar) y el tiempo de la sesión (es decir, cuánto tiempo puede acceder un usuario).
Tres principios comunes del RBAC
Con el control de acceso basado en roles, los permisos se basan exclusivamente en las funciones, lo que simplifica su administración. Cuando cambia el cargo de un usuario, incluso si termina su relación con la organización, los administradores solo cambian su función y se actualizan los permisos de manera automática. Gracias al RBAC, se puede asignar diversas funciones a los usuarios.
- La asignación de la función del usuario define el permiso o los derechos de acceso de los usuarios según una función o tarea.
- La autorización de la función del usuario confirma que el usuario cuenta con aprobación para una función y para realizar las tareas relacionadas.
- Los derechos de acceso y el permiso de la función del usuario definen de manera específica lo que puede, o no puede, hacer un usuario.
Permisos del RBAC
Con el control de acceso basado en roles, es importante recordar que los permisos van después de las funciones y no al revés. Determine lo que cada función debe hacer y otorgue los permisos como corresponda. Estas son consideraciones adicionales que se deben tener en cuenta al configurar los permisos del RBAC para especificar a qué tienen acceso los usuarios y qué pueden hacer en el sistema:
Acceso
- ¿Qué usuarios pueden abrir un elemento específico, como un archivo, una aplicación o una base de datos?
- ¿Qué usuarios deben saber que existen ciertos activos?
- ¿Qué limitaciones se deben imponer a la visibilidad?
Modificación
- ¿Qué usuarios pueden realizar cambios en elementos específicos?
- ¿Qué aprobaciones se necesitan para realizar cambios?
Difusión
- ¿Qué usuarios pueden descargar un documento?
- ¿Qué usuarios pueden compartir un documento?
Mejores prácticas del RBAC
Las mejores prácticas que debe considerar una empresa al implementar el control de acceso basado en roles son:
- Analizar a los usuarios, incluidos sus flujos de trabajo y los recursos que necesitan.
- Realizar auditorías de las funciones con regularidad para mantenerlas actualizadas y ajustarlas a los requisitos actuales.
- Crear una función básica que incluya el acceso que necesita cada usuario.
- Determinar qué funciones tienen un conjunto común de requisitos de acceso.
- Garantizar que el RBAC se integre en todos los sistemas de la organización.
- Establecer un proceso para gestionar los cambios en las funciones, incluida la configuración y la desincorporación de usuarios.
- Identificar los recursos que requieren un control de accesos.
- Incluir los principios del RBAC y cómo funciona en los programas de formación de los empleados.
- No crear demasiadas funciones.
Tipos de control de acceso basado en roles
De acuerdo con el estándar del RBAC, el control de accesos se puede dividir en cuatro tipos: básico, jerárquico, simétrico y restringido.
RBAC básico
El RBAC básico detalla los componentes clave del sistema. Se puede utilizar de manera independiente o como base para el RBAC jerárquico y el restringido. El RBAC básico se compone de cinco elementos estáticos: usuarios, funciones, permisos, operaciones y objetos. Los permisos están compuestos por las operaciones, que se aplican a los objetos.
RBAC jerárquico
El RBAC jerárquico usa una jerarquía dentro de la estructura de funciones para establecer relaciones entre las funciones (p. ej., sénior, nivel intermedio o júnior). Con el RBAC jerárquico, los usuarios con funciones sénior reciben todos los permisos de sus subordinados y aquellos específicos para sus necesidades.
RBAC simétrico
El RBAC simétrico permite a los administradores revisar las funciones de los usuarios y los permisos de las funciones para evaluar los permisos otorgados a las funciones existentes.
RBAC restringido
El RBAC restringido mejora el RBAC básico gracias a la segregación de tareas (SoD), que puede ser estática o dinámica. Con la segregación de tareas estática (SSD), ningún usuario puede poseer funciones mutuamente excluyentes. Por ejemplo, un usuario no puede realizar y aprobar una propuesta. Por su parte, la segregación de tareas dinámica (DSD) permite a los usuarios tener funciones contradictorias, pero no pueden llevar a cabo ambas funciones durante la misma sesión.
Tipos de control de acceso adicionales
Control de acceso basado en atributos (ABAC)
El control de acceso basado en atributos es una solución de autorización de usuarios que evalúa los atributos o las características de los usuarios, en vez de sus funciones, para determinar privilegios de acceso basados en las políticas de seguridad de una organización. Con el ABAC, las normas de acceso pueden ser hipergranulares.
Lista de control de accesos (ACL)
Una lista de control de accesos es un cuadro que enumera los permisos asociados a un recurso. Para cada usuario, hay una entrada que especifica los atributos de seguridad de cada objeto.
Una ACL le indica al sistema operativo qué usuarios pueden acceder a un objeto y qué acciones tienen permitido ejecutar. Se otorga o se niega el acceso en dos categorías: redes y sistemas de archivos. En cuanto a las redes, se aplica una ACL a los routers y switches para evaluar el tráfico.
La ACL también evalúa las actividades y si están permitidas en la red. El sistema de archivos usa la ACL para filtrar y gestionar el acceso a los archivos y directorios a través del sistema operativo.
Control de acceso discrecional (DAC)
El control de acceso discrecional otorga o limita el acceso a un objeto según la política determinada por sujetos propietarios o un grupo de propietarios de un objeto. El DAC concede a los usuarios un control total de sus recursos, por lo que es una alternativa menos restrictiva que otras opciones de control de accesos.
Con el DAC, si un sujeto recibe permiso para acceder a un objeto, puede:
- Permitir a los usuarios compartir sus privilegios con otros sujetos.
- Cambiar atributos de seguridad.
- Seleccionar los atributos de seguridad que se asociarán a objetos nuevos o actualizados.
- Modificar las normas que regulan el control de accesos.
- Compartir la información de los atributos con otros sujetos y objetos.
Control de acceso obligatorio (MAC)
El control de acceso obligatorio limita el acceso a los recursos según la confidencialidad de la información y el nivel de los permisos de los usuarios. Los administradores definen los criterios del MAC y luego el sistema operativo o un kernel de seguridad lo implementan; de esta forma, los usuarios no lo pueden modificar.
RBAC vs. Lista de control de accesos (ACL)
El control de acceso basado en roles y la ACL cumplen propósitos diferentes. Por ejemplo, se considera que el RBAC es la mejor opción para gestionar las aplicaciones empresariales y el acceso a los datos. Por su parte, se cree que la ACL es mejor para administrar la seguridad a nivel de usuario individual y se usa en caso de datos de bajo nivel. Además, el RBAC es una buena opción para la seguridad de la organización en su totalidad y la ACL funciona bien para otorgar acceso a un archivo específico.
RBAC vs. control de acceso basado en atributos (ABAC)
La diferencia principal entre el control de acceso basado en roles y el ABAC es la manera como se otorga el acceso. El RBAC otorga el acceso según las funciones y responsabilidades de los usuarios. Con el ABAC, se otorga el acceso de acuerdo con atributos o características, como:
Tipos de usuario
- Autorizaciones de seguridad
- Nombre de usuario
- Edad
- Puesto de trabajo
- Departamento
Hora del día
- Bloqueo del acceso a los recursos durante la noche
- Limitación de ediciones cuando el usuario no está bajo supervisión
- Restricción del acceso a materiales durante los fines de semana
Ubicación
- Restricción del acceso a un área específica (p. ej., la oficina, el campus, el país, etc.)
- Negación del acceso desde dispositivos específicos (p. ej., teléfonos celulares, computadoras portátiles con Wi-Fi, etc.)
Por lo general, las organizaciones usan el RBAC para lograr un control de acceso de granularidad gruesa, mientras que el ABAC se emplea para alcanzar un control de acceso de granularidad fina.
Implementación del RBAC
Es necesario un enfoque metódico cuando se implementa un sistema de control de acceso basado en roles. Se debe tomar el tiempo para analizar la información con el fin de garantizar que el sistema cumpla los requisitos de seguridad. A continuación, se describen los pasos específicos para implementar el RBAC.
Pasos para la implementación del RBAC
- Realice un inventario exhaustivo de todos los recursos, incluidos aplicaciones (es decir, locales y en la nube), servidores, documentos, archivos, servidor de archivos, base de datos, así como otros recursos que requieran seguridad.
- Trabaje con los directores y el departamento de recursos humanos para identificar las funciones.
- Revise todas las funciones y determine cuántas se deben incluir y cuáles se pueden agrupar en conjuntos mixtos.
- Solicite comentarios sobre las funciones e información sobre los niveles de permiso a los directores y otros sectores clave.
- Asigne permisos de acceso para las funciones.
- Desarrolle un cronograma de integración que incluya: el desarrollo del sistema, las comunicaciones dirigidas a los usuarios y la capacitación.
- Implemente el plan, esté atento a cualquier error y haga las correcciones y ajustes según sea necesario.
Mejores prácticas para gestionar la implementación del RBAC
- Cuente con una política escrita sobre cómo se debe utilizar el sistema de control de acceso basado en roles, incluida la descripción detallada del proceso para realizar cambios.
- Sea receptivo a los comentarios de los directivos y usuarios sobre cómo puede optimizarse el sistema de RBAC y realice los cambios pertinentes según sea necesario.
- Evalúe continuamente las funciones y el estado de la seguridad.
- Considere el motivo y las consecuencias de cualquier solicitud de cambio en los permisos de los usuarios antes de llevar a cabo los cambios.
- Ejecute los protocolos de seguridad relacionados con los permisos.
Ejemplos de RBAC
Ejemplos de designaciones de RBAC
Las designaciones comunes de un sistema de RBAC incluyen:
- Asignación de funciones de gestión, que asocia una función con un grupo de funciones
- Grupo de funciones de gestión, donde se pueden añadir o eliminar miembros
- Alcance de las funciones de gestión, que establece qué objetos gestiona un grupo de funciones
Ejemplos de funciones de RBAC
Con el control de acceso basado en roles, se pueden asignar a los usuarios diversas funciones dentro de una aplicación. Estas funciones difieren según el tipo de aplicación. A continuación, se muestran algunos ejemplos de funciones de RBAC.
Elementos de asignación de funciones de RBAC de Kubernetes
- Función: especifica los permisos en el nivel del espacio de nombres
- ClusterRole: especifica los permisos en el nivel de clústeres o en el caso de espacio de nombres en todo el entorno
- Sujeto: describe a un usuario, grupo o cuenta de servicio
- RoleBinding: enumera los sujetos y sus funciones asignadas para vincular funciones con entidades en el nivel del espacio de nombres
- ClusterRoleBinding: enumera los sujetos y funciones asignadas en el nivel de clústeres para cada espacio de nombres del clúster
Elementos de asignación de funciones de RBAC de Microsoft Azure
- Entidad: una entidad de servicio, grupo o usuario, o identidad gestionada que solicita un recurso y se le otorga el acceso
- Definición de función: un conjunto de permisos que definen lo que una entidad con una cierta función puede hacer con un recurso
- Alcance: define los recursos a los que tienen acceso las funciones, así como los niveles de permisos
Ejemplos de permisos de RBAC
Los permisos de control de acceso basado en roles se otorgan según las funciones y los requisitos de acceso. Las funciones y los permisos se ajustan al cargo de un usuario dentro de una organización, como administrador, usuario especializado o usuario final. A continuación, se presentan algunos ejemplos de permisos de RBAC:
- Administrativo: para usuarios que realizan tareas administrativas
- Facturación: para que un usuario final acceda a la cuenta de facturación
- Principal: para el contacto principal de una función o cuenta específicas
- Técnico: para los usuarios que realizan tareas técnicas
Con el RBAC, los permisos de acceso de los usuarios están vinculados a las responsabilidades y necesidades de un grupo, como el departamento de Recursos Humanos, Ventas o Finanzas. A cada función se le otorga un conjunto de permisos, como se muestra a continuación:
Beneficios del RBAC
Permite la segregación de tareas
Dado que los roles están separados, en teoría ningún usuario puede causar una filtración significativa, ya que un hacker tendría acceso limitado a los recursos permitidos para esa cuenta.
Mejora la eficiencia operativa
El control de acceso basado en roles simplifica la administración y mejora la eficiencia operativa, ya que proporciona un enfoque optimizado para asignar y gestionar los permisos de acceso. El RBAC también permite a los administradores agregar y modificar rápidamente las funciones e implementarlas en todos los sistemas operativos, plataformas y aplicaciones de forma global. Esto puede realizarse en el caso de usuarios internos y externos, incluidos aquellos que solo necesitan un acceso temporal.
Mejora el cumplimiento normativo
El control de acceso basado en roles permite a las organizaciones cumplir con los requisitos de privacidad y protección de datos establecidos en una gran cantidad de normativas al restringir el acceso a los recursos.
La automatización del acceso basado en roles también permite el cumplimiento normativo, puesto que reduce los errores humanos que podrían exponer inadvertidamente datos confidenciales a usuarios no autorizados.
De igual manera, el RBAC respalda el proceso de auditoría, lo cual ayuda a abordar los requisitos de cumplimiento normativo.
Libera valioso tiempo administrativo
Al disminuir el tiempo que invierten los administradores en los permisos a los usuarios, el control de acceso basado en roles les permite trabajar en tareas de mayor valor. Asimismo, al limitar el acceso a ciertos procesos y aplicaciones, las organizaciones pueden optimizar el uso de recursos, como el ancho de banda de la red, la memoria y el almacenamiento.
Mejora la visibilidad
El control de acceso basado en roles ofrece a los administradores y gestores de red una mayor visibilidad y supervisión de las operaciones y actividades de los usuarios. Además, les permite ver a qué recursos pueden acceder los usuarios para garantizar el cumplimiento normativo y el respeto de los protocolos de seguridad.
Logra la seguridad de confianza cero
El control de acceso basado en roles facilita la implementación y la ejecución del principio de privilegios mínimos, piedra angular de la seguridad de confianza cero. Al limitar los permisos de acceso de un usuario según sus funciones y necesidades para realizar las tareas asociadas a su función, el RBAC reduce de manera significativa el riesgo de filtraciones y fugas de datos.
RBAC para la gestión de privilegios de usuarios avanzados
El control de acceso basado en roles, una solución de eficacia probada para la seguridad centrada en el usuario, es el método más utilizado por los administradores. Es confiable y fácil de usar. El RBAC protege los recursos y permite a las organizaciones cumplir los estándares de seguridad y privacidad incluidos en muchas normativas.
Asuma el control de su plataforma en la nube.
Obtenga más información sobre SailPoint: programe una demostración.