我在的jboss-web.xml中定義的安全域,如下JBoss的Wildfly - Web應用程序的身份驗證對LDAP
<jboss-web>
<security-domain>java:/jaas/my_ldap_security_domain</security-domain>
<disable-audit>true</disable-audit>
</jboss-web>
我也有我的standalone.xml內部定義
<subsystem xmlns="urn:jboss:domain:security:1.2">
<security-domains>
<security-domain name="my_ldap_security_domain" cache-type="default">
<authentication>
<login-module code="LdapExtended" flag="sufficient">
<module-option name="java.naming.factory.initial" value="com.sun.jndi.ldap.LdapCtxFactory"/>
<module-option name="java.naming.provider.url" value="ldaps://xxx.xxx.xxx.xxx:yyyy"/>
<module-option name="java.naming.security.authentication" value="simple"/>
<module-option name="bindDN" value="[email protected]"/>
<module-option name="bindCredential" value="mypass"/>
<module-option name="baseCtxDN" value="DC=my,DC=domain"/>
<module-option name="baseFilter" value="(uid={0})"/>
<module-option name="rolesCtxDN" value="DC=my,DC=domain"/>
<module-option name="roleFilter" value="(uniquemember={1})"/>
<module-option name="roleAttributeID" value="cn"/>
<module-option name="searchScope" value="SUBTREE_SCOPE"/>
<module-option name="roleRecursion" value="0"/>
<module-option name="allowEmptyPasswords" value="true"/>
</login-module>
</authentication>
</security-domain>
</security-domains>
</subsystem>
我只有領域出現在我的standalone.xml
<security-realms>
<security-realm name="ManagementRealm">
<authentication>
<local default-user="$local" skip-group-loading="true"/>
<properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/>
</authentication>
<authorization map-groups-to-roles="false">
<properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/>
</authorization>
</security-realm>
<security-realm name="ApplicationRealm">
<authentication>
<local default-user="$local" allowed-users="*" skip-group-loading="true"/>
<properties path="application-users.properties" relative-to="jboss.server.config.dir"/>
</authentication>
<authorization>
<properties path="application-roles.properties" relative-to="jboss.server.config.dir"/>
</authorization>
</security-realm>
</security-realms>
我之前沒有提到它,因爲我推測這個securit y領域旨在驗證應用程序服務器控制檯訪問權限。對不起。
我的疑問是如何創建一個jsf2登錄頁面來驗證上面定義的內容。我閱讀了大量的文章,但仍然在同一地方,因爲大多數文章使用虛擬身份驗證作爲示例(與靜態字符串比較,而不是顯示如何諮詢LDAP服務器)。
任何人都可以幫助我嗎?
對不起,我只能夠創建信息後回答差不多一個月。我真的很喜歡你所說的話,但我仍然對你之前提到的3步驟方法感到不安。 我認爲這很好,儘管我對你的答案中沒有提到的ApplicationRealm,認證,授權和出站連接仍有很多疑問。我不知道以我的場景作爲例子會是什麼。 我在這裏閱讀的安全約束 - 關於基於表單的http://docs.oracle.com/javaee/6/tutorial/doc/gkbaa.html。 但配置的登錄方法呢? – 2015-03-25 21:23:08
我沒有在我的回答中談論過這些,因爲你的問題不是關於任何那個。即使是現在,你實際上還沒有問過任何一個問題。 「懷疑」是什麼意思?如果你問一個具體的問題,我將能夠給出具體的答案。我的回答發佈時假定您對javaee webapp中的身份驗證和授權有基本的瞭解。你應該首先得到那個排序@DanielFerreiraCastro – kolossus 2015-03-27 18:05:46
看,我沒有抱怨。你剛寫的東西幫了我很多。但是,關於我之前寫過的懷疑,你認爲最好的辦法是什麼?你認爲另一篇文章能讓我的觀點更清晰嗎?你能回答嗎? – 2015-03-31 11:48:21