小编mor*_*ron的帖子

Jetty - JAAS和Active Directory - 仅限身份验证?

我正在开发一个非常简单的Java应用程序,需要使用用户名和密码进行保护.我必须使用Active Directory进行身份验证.我只能允许经过身份验证的用户访问它.我不需要任何类型的组/角色检查来确定用户可能看到的内容.我正在使用JETTY来运行该应用程序.

我一直在尝试用Jetty实现LDAP登录模块已经有一段时间了.但每次我提交登录表单时,我都会收到403错误的"!role"消息.

HTTP ERROR 403

Problem accessing /JAAS/. Reason:

    !role
Run Code Online (Sandbox Code Playgroud)

提交登录表单时Jetty标准输出:

2013-07-18 19:28:47.035:INFO:oejpjs.LdapLoginModule:Searching for users with filter: '(&(objectClass={0})({1}={2}))' from base dn: DC=mydomain,DC=test,DC=local
2013-07-18 19:28:47.041:INFO:oejpjs.LdapLoginModule:Found user?: true
2013-07-18 19:28:47.042:INFO:oejpjs.LdapLoginModule:Attempting authentication: CN=User Name,OU=ADMIN_HOME,DC=mydomain,DC=test,DC=local
Run Code Online (Sandbox Code Playgroud)

我提交登录表单时的Jetty日志文件(我输入的用户名出现在日志中,因此部分验证似乎有效):

0:0:0:0:0:0:0:1 -  -  [18/Jul/2013:17:28:38 +0000] "GET /JAAS/ HTTP/1.1" 302 0 
0:0:0:0:0:0:0:1 -  -  [18/Jul/2013:17:28:38 +0000] "GET /JAAS/login.html HTTP/1.1" 304 0 
0:0:0:0:0:0:0:1 -  -  [18/Jul/2013:17:28:47 +0000] "POST /JAAS/j_security_check HTTP/1.1" 302 0 
0:0:0:0:0:0:0:1 - username [18/Jul/2013:17:28:47 +0000] "GET /JAAS/ HTTP/1.1" 403 1362 
Run Code Online (Sandbox Code Playgroud)

提取security-constraint和security-roke的web.xml的摘录:

<security-constraint>
    <web-resource-collection>
         <web-resource-name>Entire Application</web-resource-name>
         <url-pattern>/*</url-pattern>
    </web-resource-collection> …
Run Code Online (Sandbox Code Playgroud)

java active-directory jaas

5
推荐指数
1
解决办法
4303
查看次数

标签 统计

active-directory ×1

jaas ×1

java ×1