【问题标题】:Fetching additional response codes in LDAP (OpenDS) from Java从 Java 获取 LDAP (OpenDS) 中的其他响应代码
【发布时间】:2009-10-17 16:10:24
【问题描述】:

OpenDS 上有一个密码策略,可以防止多次登录失败。如果用户设法通过限制,LDAP 服务器的日志将显示,即:

[17/Oct/2009:17:51:11 +0200] BIND RES conn=91 op=0 msgID=1 result=49 authFailureID=197126 authFailureReason="拒绝用户 uid=XXXXXXXX,ou= 的绑定请求users,dc=XXXXXXX,dc=hr,因为帐户因身份验证失败次数过多而被锁定” etime=1

如何在除“49”之外的任何 Java 客户端 API(在 bind() 上)中接收 LDAP 响应代码,这是针对可能发生的各种错误的通用“无效凭据”响应。 JLDAP 中的 LDAPException 和 JNDI 中的 Exception 除了“49”和前面提到的“Invalid Credentials”消息之外,似乎不包含任何有用的信息(在表示层上显示给用户)。查看日志完全违背了密码策略的目的。

有什么想法吗?

最好的问候, 博佐

【问题讨论】:

    标签: java ldap


    【解决方案1】:

    解决了。似乎您无法收到数字响应,但您可以在绑定时打开(在 OpenDS 配置中)错误消息,然后您必须将响应解析为您的应用程序代码以了解登录失败。荒谬的。

    【讨论】:

    • BindResult 对象中的方法getDiagnosticMessage() 返回诊断字符串。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-02-09
    • 2012-07-01
    • 2020-09-12
    • 1970-01-01
    • 2020-04-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多