Sistema de control de acceso distribuido


El sistema de control de acceso distribuido (DACS) [1] es un sistema de control de acceso basado en atributos y de inicio de sesión único ligero para servidores web y software basado en servidor . DACS se utiliza principalmente con servidores web Apache para proporcionar un control de acceso mejorado para páginas web, programas y servlets CGI y otros activos basados ​​en web, y para federar servidores Apache.

Lanzado bajo una licencia de código abierto , DACS proporciona un marco de autenticación modular que admite una variedad de métodos de autenticación comunes y un motor de autorización basado en reglas que puede otorgar o denegar el acceso a los recursos, nombrados por URL , según la identidad del solicitante y otra información contextual. Los administradores pueden configurar DACS para identificar a los usuarios empleando métodos de autenticación y cuentas de usuario ya disponibles dentro de su organización. Las identidades DACS resultantes se reconocen en todas las jurisdicciones DACS que se han federado.

Además de las API simples basadas en la web , también se proporcionan interfaces de línea de comandos para gran parte de la funcionalidad. La mayoría de las API basadas en web pueden devolver documentos XML o JSON .

La distribución de DACS incluye varias funciones criptográficas, como resúmenes de mensajes , HMAC , cifrado de clave simétrica y pública , cifrados ( ChaCha20 , OpenSSL ), firmas digitales , funciones de derivación de clave basadas en contraseña ( HKDF , PBKDF2 ) y funciones de derivación de clave de memoria. ( scrypt , Argon2 ), gran parte del cual está disponible desde un lenguaje de programación simple.

DACS también puede actuar como un proveedor de identidad para InfoCards y funcionar como una parte de confianza, aunque esta funcionalidad está obsoleta.

DACS realiza el control de acceso mediante la evaluación de las reglas de control de acceso especificadas por un administrador. Expresadas como un conjunto de documentos XML , las reglas se consultan en tiempo de ejecución para determinar si se debe otorgar o denegar el acceso a un recurso determinado. Como las reglas de control de acceso pueden ser cálculos arbitrarios, combina control de acceso basado en atributos, control de acceso basado en roles, control de acceso basado en políticas, control de acceso delegado y otros enfoques. La arquitectura ofrece muchas posibilidades a los administradores.