2012-07-30 21 views
7

He configurado satisfactoriamente la autenticación FORM en web.xml (java-webcontainer).web.xml, utilizando la autenticación básica y la forma simultánea

No encontré la forma de enviar el nombre de usuario/contraseña dentro de la solicitud de obtención de restful-uri de mi cliente al usar FORM-Autenticación. Así que tengo que usar BASIC-Authentication solo para restful-uri.

así que tengo esta pregunta:

¿Cómo puedo configurar la autenticación basada en formularios y la autenticación básica? La autenticación básica solo debe habilitarse para restful-uri.

+0

¿Todavía está interesado en la respuesta a esta pregunta? – Olaf

+0

¡sí! He estado de vacaciones :) – nimo23

Respuesta

6

No hubo respuestas aquí por un tiempo, así que hice un refresco de servlets rápido yo mismo. Las especificaciones de servlets permiten solo un elemento <login-config> por aplicación web, por lo que no hay forma de tener un punto de entrada con autenticación de BASIC para la API REST y otra con autenticación basada en FORMATO para la interfaz de usuario. La única opción es compilarlos como dos aplicaciones de implementación independiente. Para evitar la duplicación de código, puede ser una buena idea simplemente dejar que la aplicación de interfaz de usuario hable con la API REST de la misma manera que se supone que deben hacerlo los terceros.

+0

Espero que sea posible en futuras especificaciones de servlet. Tal vez deberíamos hacer una solicitud de función? – nimo23

7

también se enfrenta a un problema similar y me di cuenta que si está utilizando JBoss entonces su posible configurar mecanismo múltiple utilizando web.xml: -

<auth-method>BASIC?silent=true,FORM</auth-method> 

El uso de este autenticación básica silencio será tratado en primer lugar, que es una autenticación básica que solo tiene efecto si hay un encabezado de Autorización presente. Si no existe dicho encabezado, entonces se usará la autenticación de formulario en su lugar.

Tal vez sea demasiado tarde para una respuesta, pero me acaba de actualizar esto en caso de que alguien encuentre esto útil: P

+1

Muchas gracias. Esto ayuda mucho Ahorre mucho tiempo –

Cuestiones relacionadas