0

我有一个问题,我正在尝试通过 LDAP 向 AD 进行身份验证,当我输入无效凭据时,我收到如下异常消息: LDAPException(resultCode=49 (invalid credentials), errorMessage='80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 52e, v1db0,这没关系,但更确切的此异常原因部分是“数据 52e” ,它告诉我“无效的凭据”。当凭据很好但例如异常消息中的“密码已过期”时,我将得到“数据 532”。这部分消息可以有不同的值,具体取决于异常原因(533 帐户已禁用、701 帐户已过期等)。我的问题是如何只捕获这部分异常消息。我想根据这个错误代码处理异常。例如:

switch(err_code){
case 52e:
System.out.println("invalid credentials");
break;
case "530,":
System.out.println("not permitted to logon at this time");
break;
}

但我不想使用正则表达式来匹配错误代码。有任何想法吗?

4

1 回答 1

0

这些代码可能特定于 Active Directory 实施。看看对类似问题的解释。

于 2013-09-10T10:28:47.953 回答