配置Tomcat 5.5或更高版本以從Windows Active Directory驗證用戶的最佳方式是什麼?配置Tomcat以使用Windows Active Directory進行身份驗證
29
A
回答
22
從www.jspwiki.org
與LDAP的設置試試這個在server.xml:
<Realm className="org.apache.catalina.realm.JNDIRealm" debug="99"
connectionURL="ldap://youradsserver:389"
alternateURL="ldap://youradsserver:389"
userRoleName="member"
userBase="cn=Users,dc=yourdomain"
userPattern="cn={0},cn=Users,dc=yourdomain"
roleBase="cn=Users,dc=yourdomain"
roleName="cn"
roleSearch="(member={0})"
roleSubtree="false"
userSubtree="true"
/>
,並確定在Tomcat中的作用-users.xml和您的應用程序的web.xml
編輯webapp_root/WEB_INF/Web.xml文件如下:
<security-constraint>
<display-name>your web app display name</display-name>
<web-resource-collection>
<web-resource-name>Protected Area</web-resource-name>
<url-pattern>*.jsp</url-pattern>
<url-pattern>*.html</url-pattern>
<url-pattern>*.xml</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>yourrolname(ADS Group)</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/error.jsp</form-error-page>
</form-login-config>
</login-config>
<security-role>
<description>your role description</description>
<role-name>yourrolename(i.e ADS group)</role-name>
</security-role>
2
基於LDAP的身份驗證在任何操作系統上都不需要任何附加步驟。
http://spnego.sf.net可用於對登錄到Windows域的用戶進行無提示驗證。這需要在域中註冊的域帳戶對提供的服務具有權威性。它適用於Windows和Linux。
0
「歡迎SPNEGO SourceForge項目 集成Windows身份驗證在Java中
這個項目的目的是提供一種替代庫(.jar文件),該應用程序服務器(如Tomcat),可以作爲工具使用(如Web瀏覽器)
如果您的組織正在運行Active Directory(AD),並且所有Web應用程序都通過Microsoft的Internet信息服務(IIS),並且IIS已啓用集成Windows身份驗證,並且您的每個人組織正在使用Internet Explorer(IE),那麼此項目可能不是對你有任何興趣。「
13
Blauhr的答案很好,但AD中用戶的CN基於他們的「顯示名稱」,而不是他們的saMAccountName(用戶用來登錄)。基於他的解決方案,它看起來像某人將不得不使用他們的顯示名稱,基於userPattern登錄。
我親自使用下列內容:
<Realm className="org.apache.catalina.realm.JNDIRealm" debug="99"
connectionURL="ldap://DOMAIN_CONTROLLER:389"
connectionName="[email protected]"
connectionPassword="USER_PASSWORD"
referrals="follow"
userBase="OU=USER_GROUP,DC=DOMAIN,DC=com"
userSearch="(sAMAccountName={0})"
userSubtree="true"
roleBase="OU=GROUPS_GROUP,DC=DOMAIN,DC=com"
roleName="name"
roleSubtree="true"
roleSearch="(member={0})"
/>
其他一切會非常的工作是相同的。
相關問題
- 1. 使用Active Directory進行身份驗證
- 2. Tomcat,HTTP身份驗證和Active Directory
- 3. 配置雲服務以使用Azure Active Directory進行身份驗證
- 4. 使用Tomcat進行Windows身份驗證
- 5. 使用Active Directory進行身份驗證和ASP.NET身份驗證角色
- 6. IIS 5.1,Windows身份驗證,Active Directory的
- 7. JSF Active Directory身份驗證
- 8. Tomcat:使用Windows用戶進行身份驗證的設置
- 9. 通過Active Directory進行Windows身份驗證
- 10. 是否使用Active Directory身份驗證?
- 11. 使用Active Directory的Silverlight身份驗證
- 12. 用戶在CMS中使用Active Directory進行身份驗證
- 13. 如何通過Active Directory/Windows身份驗證使用Servicestack身份驗證?
- 14. 使用窗體身份驗證和Windows身份驗證的Active Directory
- 15. Active Directory身份驗證失敗asp.net
- 16. 如何使用php和CodeIgniter對Active Directory進行身份驗證?
- 17. 使用Azure Active Directory進行netcore2身份驗證:「簽名無效」
- 18. 使用Azure Active Directory進行身份驗證:WIF10201錯誤
- 19. 使用Kerberos進行PHP Active Directory身份驗證
- 20. 使用Active Directory在C#中進行身份驗證
- 21. 使用Active Directory/LDAP進行表單身份驗證
- 22. 在Linux上使用Java對Active Directory進行身份驗證
- 23. 使用ldap.js進行Active Directory身份驗證
- 24. 如何在asp.net中使用Active Directory組進行身份驗證?
- 25. 使用c#進行Active Directory身份驗證(編碼問題)
- 26. 使用Active Directory和SunOne進行LDAP身份驗證
- 27. 使用Active Directory進行Rails身份驗證
- 28. 在PHP中使用LDAP進行身份驗證通過Active Directory
- 29. 使用Active Directory和域策略進行表單身份驗證
- 30. 使用Azure Active Directory進行離線身份驗證
鏈接被破壞 – Antonio 2010-10-05 14:18:46
新的鏈接到www.jspwiki.org(謝謝安東尼奧) – Blauohr 2010-10-08 08:23:02
由於在context.xml中沒有指定連接用戶名或密碼,所以這似乎只有在匿名查找被允許獲取列表時纔有效角色。 – 2014-09-30 02:05:36