Подключение Ldap-сервера с Wildfly
Я новичок в Wildfly и LDAP. У меня есть сервер wildfly (версия 9.0.2), на котором запущено веб-приложение, и я хотел бы разрешить вход пользователя в это веб-приложение с использованием учетных данных из учетных записей ldap.
Я следовал другим основным учебным пособиям в Интернете и не могу отобразить окно входа в систему.
Пока что я сделал это:
Добавлен в файл standalone.xml
<security-realm name="ApplicationRealm">
<authentication>
<ldap connection="LocalLdap" base-dn="ou=cloudera,dc=hadoop,dc=com">
<username-filter attribute="uid"/>
</ldap>
</authentication>
</security-realm>
</security-realms>
<outbound-connections>
<ldap name="LocalLdap" url="ldap://ldap_server_url:389" search-dn="Manager,dc=hadoop,dc=com" search-credential="admin"/>
</outbound-connections>
А также:
<security-domain name="LDAPAuth">
<authentication>
<login-module code="LdapExtended" flag="required">
<module-option name="java.naming.factory.initial" value="com.sun.jndi.ldap.LdapCtxFactory"/>
<module-option name="java.naming.provider.url" value="ldap://ldap_server_url:389"/>
<module-option name="java.naming.security.authentication" value="simple"/>
<module-option name="bindDN" value="cn=Manager,dc=hadoop,dc=com"/>
<module-option name="bindCredential" value="admin"/>
<module-option name="baseCtxDN" value="ou=cloudera,dc=hadoop,dc=com"/>
<module-option name="baseFilter" value="(uid={0})"/>
<module-option name="rolesCtxDN" value="ou=cloudera,dc=hadoop,dc=com"/>
<module-option name="roleFilter" value="objectClass=posixGroup"/>
<module-option name="roleAttributeID" value="cn"/>
<module-option name="searchScope" value="SUBTREE_SCOPE"/>
<module-option name="allowEmptyPasswords" value="true"/>
</login-module>
</authentication>
</security-domain>
А также:
<default-security-domain value="LDAPAuth"/>
К файлу web.xml в веб-приложении:
<security-constraint>
<web-resource-collection>
<web-resource-name>HtmlAuth</web-resource-name>
<description>application security constraints</description>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>*</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>ApplicationRealm</realm-name>
</login-config>
<security-role>
<role-name>*</role-name>
</security-role>
Для jboss-web.xml
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
<security-domain>LDAPAuth</security-domain>
<use-jboss-authorization>true</use-jboss-authorization>
</jboss-web>
Должен ли я настроить клиент ldap, который указывает на сервер на сервере wildfly, а затем указывает его локально? Спасибо