我实现LoginModule中执行一些自定义身份验证,以及使用所述登录(LoginContext类的)方法调用验证。登录模块的login()和commit()方法调用成功,但不是能够使用Web应用程序,我被送回登录页面立即。 request.getUserPrincipal()为空,以及request.getRemoteUser()。

任何想法将不胜感激。谢谢!

其他INFO

此外,之后我打电话loginContext.login()在前端,呼吁loginContext.getSubject().getPrincipals()给我的校长和角色,只是登录的用户的正确列表。

我使用Tomcat 6.0.29作为我的服务器。

有帮助吗?

解决方案 2

我试图做编程登录Tomcat中,即使登录模块被运行时,容器没有被接收到认证。我的解决办法是使用带有“j_security_check”,因为它的动作HTML表单做认证。

其他提示

UMM在黑暗中拍摄

您是否尝试过给权限的政策文件,像这样

grant codeBase "file:/myCustomModule.jar" {
  permission javax.security.auth.AuthPermission "modifyPrincipals";
  permission javax.security.auth.AuthPermission "modifyPublicCredentials";
  permission javax.security.auth.AuthPermission "modifyPrivateCredentials";
};
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top