【问题标题】:Is it possible to supply custom authentication mechanism to javaee security from within the webapp?是否可以从 webapp 中为 javaee 安全提供自定义身份验证机制?
【发布时间】:2016-01-24 22:00:01
【问题描述】:

我想使用 javaee 安全性,但我需要针对外部专有身份验证机制对用户进行身份验证,该机制不同于 LDAP 和 Wildfly 附带的任何其他标准机制。特别是,如果身份验证由应用程序处理,而不是由容器处理,我更愿意。我只遇到过PolicyConfiguration。但我认为这意味着构建一个扩展以插入到底层应用程序服务器中。

我想让应用服务器以标准的javaee方式获取凭据,然后在应用程序中执行回调以授权它们,然后建立当前用户及其角色,这样我就可以使用声明式安全使用注释。

这可能以标准方式吗?或者唯一的解决方案是为应用服务器构建一个扩展模块?

【问题讨论】:

标签: security authentication jakarta-ee wildfly-8 application-server


【解决方案1】:

一个不太优雅的解决方案是使用HttpServlet.login 执行登录。您仍然需要配置一个领域,以确认您在方法调用中提供的用户名和密码。

另一个更复杂的解决方案是创建一个JASPIC 身份验证提供程序。简而言之,您负责整个身份验证过程。以下是帮助您入门的资源集合:Zeef

【讨论】:

  • Jaspic 与我正在寻找的内容很接近。但是,似乎需要进行一些配置才能将我的 SAM 安装到应用程序服务器中。有没有办法在我的 WAR 中将 SAM 声明为一个类并从 Web 应用程序中注册它,例如在 web.xml 中?我不喜欢修改 AS 配置的想法。我只想部署应用程序并让一切正常运行。
  • 好吧有道理。在这种情况下,Wildfly 似乎很特别。我发现了这个程序化的解决方法,但它并不漂亮:arjan-tijms.omnifaces.org/2015/08/…
  • 感谢您的澄清。遗憾的是,这不是标准化的,因为 Glassfish 似乎会自动启用 JASPIC,但 Wildfly 需要一些调整。
  • “但是 Wildfly 需要一些调整”——这很不幸,否则 WildFly 工作得非常好。有人应该为此创建一个问题或询问他们。
猜你喜欢
  • 1970-01-01
  • 2011-02-19
  • 1970-01-01
  • 2011-02-03
  • 1970-01-01
  • 1970-01-01
  • 2012-04-05
  • 1970-01-01
  • 2012-11-09
相关资源
最近更新 更多