UNIFACE LDAP用户身份验证

时间:2016-02-29 10:25:38

标签: ldap using

早上好,

我们在uniface中使用LDAP来允许用户登录我们的系统。当用户名/密码正确时,一切都很好。但是当使用无效密码时,我们得到的只是错误代码49。 是否有可能获得更有意义的错误消息。类似的东西:用户名/密码不正确 密码已过期 要么 用户名已被停用。

我的代码是:

;-----------------------------------------------------------------------
; Initialise an ldap session (using PRIMARY DOMAIN CONTROLLER details)
; Get handle back to the session for use by subsequent calls
;-----------------------------------------------------------------------
activate "LDAP".LDAP_SSLINIT(v_handle,v_p_svr,v_p_port,v_ssl)
if($status != 0)        ;Failed 
    return(0)
endif

then

;---------------------------------------------------------
; Perform a BIND to the LDAP (thereby authenticating user)
;---------------------------------------------------------
activate "LDAP".LDAP_BIND_S(v_handle,v_dn,v_cred,v_method)
Uniface有点奇怪,但我认为对ldap的调用应该和Java说的一样。

1 个答案:

答案 0 :(得分:0)

从RFC4511,附录A.2(https://tools.ietf.org/html/rfc4511#appendix-A.2)这意味着

invalidCredentials (49)
Indicates that the provided credentials (e.g., the user's name and password) are invalid.

RFC4511定义了这些标准错误代码。

根据您的特定LDAP服务器,它可能会返回其他(非标准)错误代码(例如Oracle OID:http://docs.oracle.com/cd/B28196_01/idmanage.1014/b15991/trblsht.htm#CHDFJBIG