Estoy escribiendo un JACC
proveedor.
En el camino, esto significa implementar a PolicyConfiguration
.
El PolicyConfiguration
es responsable de aceptar la información de configuración del servidor de aplicaciones, como qué permisos se acumulan para qué roles. Esto es para que Policy
más adelante pueda tomar decisiones de autorización cuando le entregue información sobre el usuario actual y lo que está tratando de hacer.
Sin embargo, no es parte del PolicyConfiguration
contrato (atroz) del 's mantener un mapeo entre roles y sus permisos, y Principals
que están asignados a esos roles.
Por lo general, siempre, realmente, un servidor de aplicaciones aloja esta asignación. Por ejemplo, en GlassFish, que afectan a este mapeo mediante el suministro de cosas como sun-web.xml
y sun-ejb-jar.xml
y así sucesivamente con los módulos Java EE. (Estos archivos específicos del proveedor son responsables de decir, por ejemplo, si superusers
es un grupo al que se le asignará el rol de aplicación admins
).
Me gustaría reutilizar la funcionalidad que proporcionan estos archivos, y me gustaría hacerlo para la mayor variedad posible de servidores de aplicaciones.
Aquí está, totalmente arbitrariamente, la opinión de IBM sobre el asunto, lo que parece confirmar mi sospecha de que lo que quiero hacer es esencialmente imposible . (Más municiones para mi caso de que este contrato particular de Java EE no vale el papel en el que está impreso).
Mi pregunta: ¿cómo puedo obtener esta información de mapeo de director a rol en, para empezar, Glassfish y JBoss desde dentro de a PolicyConfiguration
? Si hay una forma estándar de hacerlo que desconozco, soy todo oídos.
Because JSR-115 does not define how to address role mapping, WebLogic JACC classes are used for role-to-principal mapping.
ver docs.oracle.com/cd/E24329_01/web.1211/e24485/…