2012-09-05 56 views
0

對於新客戶端,我必須用LDAP替換應用程序的JAAS身份驗證。
流程進入javax.security.auth.login.LoginContext類的登錄()。這有兩個步驟來驗證在LoginContext類中提交身份驗證時LDAP身份驗證不起作用

// module invoked in doPrivileged 
     invokePriv(LOGIN_METHOD); 
     invokePriv(COMMIT_METHOD); 

invokePriv(LOGIN_METHOD);去JAAS登錄類或LDAP登錄類,然後回來爲loginSucceeded =真。
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. 

回答

1

配置的LoginModule從其commit()方法返回false。它應該返回true,如果它自己的登錄方法成功。