对于新客户端,我必须用 LDAP 替换应用程序的 JAAS 身份验证。
流程转到javax.security.auth.login.LoginContext
类的 login()。这里有两个步骤来验证
// module invoked in doPrivileged
invokePriv(LOGIN_METHOD);
invokePriv(COMMIT_METHOD);
invokePriv(LOGIN_METHOD);
转到 JAAS 登录类或 LDAP 登录类并以 loginSucceeded = true 的形式返回。
但invokePriv(COMMIT_METHOD);
LDAP 登录失败。在 API 中对其进行调试时,此行中的状态返回 false
boolean status = ((Boolean)methods[mIndex].invoke
(moduleStack[i].module, args)).booleanValue();
我对这个问题完全一无所知。因为它是 API 类,所以在调试时我无法看到变量值。
在 LDAP 身份验证期间创建 IntialContext 是否会与 JAAS API 的 LoginContext 混淆。
Note: I know there is a JAASLDAP module available. I will be implementing that in next iteration.