Java服务器代码/ Web服务器中的基本/摘要认证实现

jak*_*aks 1 authentication java-ee jaspic

我们需要在Java Web项目中支持基本身份验证和后来的摘要身份验证.我怀疑是

  • 基本/摘要认证是否是Web服务器(tomcat,jboss等)中的配置.我们的用户/密码在SQL数据库中,我们通过dataservices获取这些.在这种情况下,我如何配置Web服务器以使用dataservices进行身份验证?
  • 我是否需要在代码中明确处理基本/摘要式身份验证?就像我将从Servlet接收身份验证请求并将连接到dataservices进行身份验证?

Arj*_*jms 5

在Java EE中,安全性默认是声明性的.这意味着您只需通过名为a的抽象概念指定您希望保护哪些资源Role.

除了JB Nizet的答案之外,JBoss AS特定的登录模块(大致相当于Tomcat的Realm实现)可以在这里找到:http://docs.jboss.org/jbosssecurity/docs/6.0/security_guide/html/Login_Modules.html

Java EE 6显然对许多人来说都是未知的(如图所示),也支持标准化的身份验证模块.这些是基于文件,基于JDBC的等,通常被认为是特定于Application Server/Container的.

这是通过所谓的做JASPIC API(又名JASPI,又名JSR 196),例如参见:

不幸的是,JASPIC/JASPI/JSR 196的采用似乎充其量只是黯淡无光.目前人们似乎相信AS特定领域,登录模块以及更好的东西,或者只是不了解其他选择.