java - jetty LdapLoginModule : Login Failure: all modules ignored

标签 java security web-applications jetty openldap

我在尝试提交登录表单时收到以下信息。有谁知道是什么原因造成的?谢谢。

2012-10-13 13:11:46.300:INFO:oejpjs.LdapLoginModule:Searching for users with filter: '(&(objectClass={0})({1}={2}))' from base dn: ou=people,dc=my-domain,dc=com
2012-10-13 13:11:46.307:INFO:oejpjs.LdapLoginModule:Found user?: true
2012-10-13 13:11:46.311:WARN:oejpj.JAASLoginService:
javax.security.auth.login.LoginException: Login Failure: all modules ignored
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:921)
at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:683)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)
at javax.security.auth.login.LoginContext.login(LoginContext.java:579)
at org.eclipse.jetty.plus.jaas.JAASLoginService.login(JAASLoginService.java:238)
at org.eclipse.jetty.security.authentication.FormAuthenticator.validateRequest(FormAuthenticator.java:209)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:491)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
at org.eclipse.jetty.server.Server.handle(Server.java:365)
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:937)
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:998)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:856)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:627)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:51)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
at java.lang.Thread.run(Thread.java:680)

FWIW 这是一些外围配置:

jetty .xml:

<?xml version="1.0"?>
<Configure>
    <Call name="addBean">
        <Arg>
            <New class="org.eclipse.jetty.plus.jaas.JAASLoginService">
                <Set name="name">ldap</Set>
                <Set name="loginModuleName">ldaploginmodule</Set>
            </New>
        </Arg>
    </Call>
</Configure>

ldap.conf:

ldaploginmodule {
    org.eclipse.jetty.plus.jaas.spi.LdapLoginModule required
    debug="true"
    contextFactory="com.sun.jndi.ldap.LdapCtxFactory"
    hostname="localhost"
    port="389"
    bindDn="cn=Manager,dc=my-domain,dc=com"
    bindPassword="secret"
    authenticationMethod="simple"
    forceBindingLogin="false"
    userBaseDn="ou=people,dc=my-domain,dc=com"
    userRdnAttribute="uid"
    userIdAttribute="uid"
    userPasswordAttribute="userPassword"
    userObjectClass="inetOrgPerson"
    roleBaseDn="ou=groups,dc=my-domain,dc=com"
    roleNameAttribute="cn"
    roleMemberAttribute="uniqueMember"
    roleObjectClass="groupOfUniqueNames";
};

最佳答案

我遇到了完全相同的问题。我找到的修复 here ,就是将ldap.conf中的forceBindingLogin改为"true"

我希望对此有一个明确的解释:-(

关于java - jetty LdapLoginModule : Login Failure: all modules ignored,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12873237/

相关文章:

java - Maven : Including a META-INF folder in the classes folder

sharepoint - 为 SharePoint 高信任应用程序实现 SSL

java - 如何在 obj 上使用 set 方法。引用更改值

java - 我必须如何/在何处/何时关闭 MongoClient?

java - 从对话框中获取值(value)而不关闭它?

ASP.NET Web 应用程序分发

java - Scala 类实现两个 Java 接口(interface) - 如何实现?

c# - 访问消息队列系统被拒绝 Windows 7 读取 Windows 2003 - Windows 2008

security - AWS 限制从云端到负载均衡器的访问

ruby-on-rails - Ruby On Rails 中的安全文件上传