我可以在Java webapp中一起使用FORM和BASIC身份验证吗?

时间:2012-09-17 12:00:39

标签: java authentication

有没有办法在我的webapplication中一起使用FORM和BASIC身份验证?我有一个RESTful接口,我想允许脚本使用简单的BASIC auth方法,但我也希望为Web客户端提供基于FORM的auth。我希望webapp响应302 Moved Temporarily重定向到登录页面以获取未经授权的请求,但是如果它发现客户端正在使用用户名和密码发送BASIC身份验证的HTTP头,那么就像在BASIC身份验证中一样接受它们。

我发现使用单个web.xml配置是不可能的,但是想知道是否有其他人有这方面的解决方案。

2 个答案:

答案 0 :(得分:1)

你能使用过滤器吗?

检查标题请求。如果存在,则执行登录过程并将会话数据等添加到请求中。如果失败则忽略它或重定向。

答案 1 :(得分:0)

如果我配置了容器身份验证,那么我的代码从未在没有身份验证的情况下调用。所以答案是否定的。 Jenkinks CI和类似软件对一组有限的Web资源使用基于FORM的身份验证,并在事情更灵活的情况下使用Spring Security。