PERMIS (PrivilEge and Role Management Infrastructure Standards) es un sistema de autorización sofisticado basado en políticas que implementa una versión mejorada del modelo de Control de Acceso Basado en Roles ( RBAC ) del Instituto Nacional de Estándares y Tecnología ( NIST ) de EE. UU . PERMIS admite la asignación distribuida de roles y atributos a los usuarios por parte de múltiples autoridades de atributos distribuidas, a diferencia del modelo NIST, que asume la asignación centralizada de roles a los usuarios. PERMIS proporciona una infraestructura de gestión de privilegios ( PMI ) criptográficamente segura que utiliza tecnologías de cifrado de clave pública y certificados de atributos X.509 para mantener los atributos de los usuarios. PERMIS no proporciona ningún mecanismo de autenticación, sino que deja que la aplicación determine cuál utilizar. La fortaleza de PERMIS reside en su capacidad de integrarse en prácticamente cualquier aplicación y cualquier esquema de autenticación, como Shibboleth (Internet2) , Kerberos , nombres de usuario/contraseñas, certificados proxy Grid e infraestructura de clave pública ( PKI ).
Como sistema RBAC estándar, las entidades principales de PERMIS son:
- una política de autorización,
- un conjunto de usuarios,
- un conjunto de administradores (autoridades de atributos) que asignan roles/atributos a los usuarios,
- un conjunto de recursos que deben ser protegidos,
- un conjunto de acciones sobre los recursos,
- un conjunto de reglas de control de acceso,
- y obligaciones y restricciones opcionales.
La política PERMIS se basa en el lenguaje de marcado extensible ( XML ) y contiene reglas para la asignación de roles de usuario y privilegios. Esta última incluye obligaciones opcionales que se devuelven a la aplicación cuando se concede acceso a un recurso. Una política PERMIS puede almacenarse como un archivo XML de texto simple o como un atributo dentro de un certificado de atributo X.509 firmado para proporcionar protección de integridad y detección de manipulaciones. Los roles y atributos de usuario pueden almacenarse en certificados de atributos X.509 seguros y firmados, en directorios LDAP o en repositorios WebDAV (Web-based Distributed Authoring and Versioning ), o bien crearse bajo demanda como aserciones de atributo SAML (Security Assertion Markup Language ).
El motor de autorización PERMIS consta de dos componentes: un Servicio de Validación de Credenciales que valida los roles de los usuarios según las reglas de asignación de roles, y el Punto de Decisión de Políticas (PDP) que evalúa las solicitudes de acceso de los usuarios según las reglas de asignación de permisos de rol (o reglas de control de acceso). El acceso a un recurso depende de los roles/atributos asignados al usuario y de las asignaciones de permisos de rol, que pueden contener restricciones basadas en la solicitud de acceso del usuario (por ejemplo, "imprimir menos de 10 páginas") y el entorno (por ejemplo, la hora del día). PERMIS puede funcionar en modo push (la aplicación envía las asignaciones de atributos de usuario a PERMIS) o en modo pull (PERMIS obtiene las asignaciones de atributos directamente de los repositorios LDAP/WebDAV o de las autoridades de atributos SAML).
PERMIS es único por su soporte para la protección criptográfica de los atributos/roles de usuario y la política, lo que garantiza su integridad y los protege de manipulaciones. Constantemente se le añaden nuevas funciones, como una interfaz estándar de lenguaje de marcado de control de acceso extensible ( XACML ) que permite intercambiar sin problemas PERMIS y las políticas de datos de usuario (PDP) de XACML, la capacidad de aceptar aserciones de atributos SAML , soporte para políticas dinámicas de delegación de autoridad y separación de funciones, y la reciente incorporación de una interfaz de lenguaje natural controlado (en inglés) para escribir políticas PERMIS sencillas. [ 1 ]
Véase también
- Autorización
- Gestión de identidades
- Servicio de autenticación y autorización de Java (JAAS)
- Protocolo ligero de acceso a directorios (LDAP)
- RBAC (Control de acceso basado en roles)
- X.509
- Santo y seña
- SAML (Lenguaje de marcado de aserciones de seguridad)
- Kerberos
- XACML (Lenguaje de marcado de control de acceso extensible)
- PKI (Infraestructura de Clave Pública)
Referencias
- ↑ "Proyecto PERMIS Modular" .
Enlaces externos
- Página principal de PERMIS
- Proyecto Shibboleth
- Proyecto PERMIS modular
- NIST RBAC
- PERMIS planes de desarrollo futuros
- PERMIS reforzado
- Software de seguridad informática