Pregunta

Distribuimos nuestra aplicación web a nuestros clientes como un archivo .war. De esta manera, el usuario puede simplemente desplegar la guerra a su contenedor y son buenos para ir. El problema es que algunos de nuestros clientes les gustaría autenticación, y utilizar el nombre de usuario como un parámetro para ciertas operaciones dentro de la aplicación.

saber cómo configurar esto usando web.xml, pero eso significa que o bien tienen que decir a nuestros clientes que rompiera en el archivo de la guerra, o distribuir 2 guerras separadas; uno con autenticación (y funciones predefinidas), uno sin.

Asimismo, no quiero forzar la autenticación en nuestros clientes, porque eso requeriría un mayor conocimiento acerca de los contenedores de Java y los servidores web en general, y hacer más difícil que sólo en nuestra solicitud de una unidad de prueba.

¿Hay una manera de hacer la configuración de autenticación en el contenedor, en lugar de en la propia aplicación web?

¿Fue útil?

Solución

En web.xml, definen las restricciones de seguridad que se unen colecciones de recursos web para roles de J2EE y una configuración de inicio de sesión (tanto para los clientes que desean un control de acceso a algunos de los recursos de su aplicación).

A continuación, dejar que los clientes se unen roles de J2EE definidos en su aplicación web para grupos de usuarios específicos usuarios ans grupos definidos en sus servidores de aplicaciones. Los clientes que no quieren ningún control de acceso se puede unir todos los roles a los usuarios no autorizados (nombre de ese grupo de usuarios es específico de servidor de aplicaciones, por ejemplo Websphere pide que 'cada uno'). Los clientes que desean restringir el acceso a un recurso (s) en su aplicación web a un conjunto limitado de usuarios o grupo de usuarios puede hacerlo uniéndose los roles a los usuarios / grupos por su de necesidades.

Si se requiere una autenticación para verificar la pertenencia del usuario en un papel, entonces se usará el método de autenticación especificado en la configuración de inicio de sesión en su web.xml.

Otros consejos

Es una práctica común tener información de usuario almacenada en, por ejemplo un origen de datos (base de datos). Haga que su aplicación utilice la misma fuente de datos para la autenticación. Las bases de datos son relativamente fáciles de mantener. Incluso se puede poner en práctica algunas páginas de administración para mantener la información de los usuarios desde la aplicación.

Muchos recipientes, tales como Glassfish, proporcionan soporte para reinos JDBC. En este caso, se puede configurar el acceso (por ejemplo, en web.xml) para grupos, y dejar que el cliente configurar los nombres de usuario, contraseñas y pertenencias a grupos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top