作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我扩展了 JAAS javax.security.auth.spi.LoginModule,并将其安装到 WAS 服务器中。有用;所有登录都通过这个新类中的代码,如果它说不让他们登录,他们将被阻止登录。
根本问题:我不希望它过滤管理控制台 (/ibm/console) 的登录,但我确实希望它过滤服务器上其他内容的登录。我认为通过可用的设置,登录模块适用于服务器上安装的所有内容,包括管理屏幕。
我想通过获取触发调用 LoginModule 的页面的 URL 来解决这个问题。如果我使用 WebLogic,我会使用 URLCallback 来获取 URL。有谁知道 Websphere Application Server 是否具有与之并行的功能,或者是否有其他解决方法?
作为可能有用的附加信息,我无法将 JAAS 应用于服务器上的单个应用程序;部署描述符在管理控制台中显示为灰色。我只能将新的 JAAS JAR 模块应用到整个服务器,这对我来说是个问题。
最佳答案
Weblogic 通过 weblogic.security.auth.callback.URLCallback 实现,WAS 通过 WSServletRequestCallback 实现。
callbacks[0] = new com.ibm.wsspi.security.auth.callback.WSServletRequestCallback(
"HttpServletRequest: ");
(加载回调)
HttpServletRequest request = ((WSServletRequestCallback)callbacks[3]).getHttpServletRequest();
String contextPath = request.getContextPath();
从那里开始。
关于java - 在 WAS 上使用 JAAS 的 URLCallback?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2622320/
我是一名优秀的程序员,十分优秀!