2013-06-25 78 views
1

我想在Windows 8計算機上使用Active Directory驗證測試一個Tomcat 6 Web應用程序。我試圖通過最少的Active Directory知識來解決問題。我無法訪問「真實」活動目錄,因此我一直試圖在Windows 8計算機上使用AD LDS(Adam)和ASDI Edit。我遵循了MSDN http://technet.microsoft.com/en-us/library/cc770639(v=ws.10).aspx的指示。我創建了一個組/角色並向該組添加了一個成員。我遵循指示使用JNDIRealm進行身份驗證。我在Netbeans(6.9)下運行。我無法讓tomcat選擇角色。我試着用commonRole來思考,如果「用戶」能夠進行身份驗證,這至少會匹配一些角色。在測試設置中使用Tomcat JNDIRealm/Active Directory的問題

<Realm className="org.apache.catalina.realm.JNDIRealm" debug="99" 
      connecti)onURL="ldap://localhost:389" 
      alternateURL="ldap://localhost:389" 
      userPattern="CN={0},OU=AD LDS Users,O=Microsoft,C=US" 
      roleBase="OU=groups,O=Microsoft,C=US" 
      roleName="CN" 
      roleSearch="member={0}" 
      commonRole="abcde"  
     /> 

我沒有得到太多有用的註銷系統。我遵循指示設置日誌記錄,但我沒有太多。如果我輸入錯誤的憑據,我會在日誌中看到異常。如果輸入正確的憑證,則不會記錄異常,並且日誌顯示: FINE:失敗的身份驗證()測試 而不是更多。沒有異常/堆棧跟蹤導致我相信用戶/密碼被接受。

不確定在哪裏轉。任何suggestiosn?有其他人有這個設置工作?我是否應該使用其他免費的LDAP解決方案,這些解決方案相對易於安裝。

回答

2

得到它的工作... AD LDS實例需要身份驗證來訪問組/角色。我添加了一個用戶到我可以用來訪問該目錄的輕量級活動目錄。我必須將該成員添加到目錄中的管理員角色。這個新用戶和密碼用於連接到AD。 connectionName必須是用戶的可分辨名稱。

<Realm className="org.apache.catalina.realm.JNDIRealm" debug="99" 
     connectionURL="ldap://localhost:389" 
     connectionName="CN=AdPerson,OU=AD LDS Users,O=Microsoft,C=US" 
     connectionPassword="adp" 
     userPattern="CN={0},OU=AD LDS Users,O=Microsoft,C=US" 
     roleBase="OU=Groups,O=Microsoft,C=US" 
     roleName="CN" 
     roleSearch="member={0}" 
    /> 

其不幸的是,有沒有更多的寫入有關失敗的我是戰鬥日誌文件。自從沉默失敗後,我被困了一段時間。最後,我確實使用JXplorer來測試我的連接,我發現我需要某種形式的身份驗證,並從那裏發現名稱需要是完整的DN。