子错误代码568对于Active Directory的Ldap错误49意味着什么

时间:2010-04-20 02:12:27

标签: java active-directory ldap jndi gssapi

我正在编写一些使用SASL GSSAPI对Active Directory进行身份验证的Java代码。大多数情况下,此代码工作正常,但对于一个用户,我得到了响应:

javax.naming.AuthenticationException: [LDAP: error code 49 - 8
0090304: LdapErr: DSID-0C0904D1, comment: AcceptSecurityContext error, data 568,
v1772 ]

我知道49表示这是一次身份验证失败,相关的子代码是568,但我只知道该数据的以下含义:

  • 525 - 未找到用户
  • 52e - 凭据无效
  • 530 - 此时不允许登录
  • 532 - 密码已过期
  • 533 - 帐户已停用
  • 701 - 帐号已过期
  • 773 - 用户必须重置密码

到目前为止,我无法从Microsoft找到这些错误代码的授权来源(此列表是从论坛帖子拼凑而成),我找不到任何针对该568错误的内容。

有谁知道这意味着什么?

编辑:此列表的来源似乎来自this documentation from IBM

1 个答案:

答案 0 :(得分:4)

Thisthis列表包含的错误代码似乎与上述数字相对应,即

  • ERROR_NO_SUCH_USER 1317(0x525)指定的帐户不存在。
  • ERROR_LOGON_FAILURE 1326(0x52E)登录失败:未知用户名或密码错误。
  • ERROR_INVALID_LOGON_HOURS 1328(0x530)登录失败:帐户登录时间限制违规。
  • ERROR_PASSWORD_EXPIRED 1330(0x532)登录失败:指定的帐户密码已过期。
  • ERROR_ACCOUNT_DISABLED 1331(0x533)登录失败:帐户目前已停用。
  • ERROR_ACCOUNT_EXPIRED 1793(0x701)用户的帐户已过期。
  • ERROR_PASSWORD_MUST_CHANGE 1907(0x773)首次登录前必须更改用户密码。

从此列表中可以看出此错误代码表示:

ERROR_TOO_MANY_CONTEXT_IDS 1384(0x568)在登录尝试期间,用户的安全上下文累积了太多安全ID。

事实证明,此帐户拥有2000个组成员资格,这些成员资格超出了内部Active Directory限制。您可能只有1015个组成员资格otherwise login will fail

有关此错误的更多信息,请访问:http://go.microsoft.com/fwlink/?LinkId=146571