В моем текущем проекте я должен реализовать аутентификацию LDAP. Я использую JSF 2.2, primefaces и Spring 4.0 и spring-ldap-core 1.3.2 и spring-security-ldap-3.2.0. Ниже приведены работы до сих пор я сделал для достижения:Как использовать Spring Ldap Authentication
весна-Ldap.xml
<bean id="contextSource" class="org.springframework.ldap.core.support.LdapContextSource">
<property name="url" value="ldap://mumcXXXXXXX" />
<property name="base" value="dc=ad,dc=XXX,dc=com"/>
<property name="userDn" value="[email protected]" />
<property name="password" value="XXXX" />
</bean>
<bean id="ldapTemplate" class="org.springframework.ldap.core.LdapTemplate">
<constructor-arg ref="contextSource" />
</bean>
<bean id="ldapContact"
class="com.csap.research.LDAPContactDAO">
<property name="ldapTemplate" ref="ldapTemplate" />
</bean>
Мой LdapContactDao
public boolean login(String username, String password) {
AndFilter filter = new AndFilter();
ldapTemplate.setIgnorePartialResultException(true);
filter.and(new EqualsFilter("userPrincipalName", username+"@ad.cXXX.com"));
return ldapTemplate.authenticate("", filter.toString(), password);
}
Здесь имя пользователя и пароль приходят из экране входа в систему в качестве входных данных. Моя проблема очень жесткая. Я не хочу, чтобы жёстко имени и пароля в Spring-Ldap.xml, поэтому было предложено использовать Spring-безопасность-Ldap здесь Spring LdapAuthentication and Load roles from local database, но я не мог понять.
Вопрос был в том, как я могу добиться динамической интеграции Ldap с пружиной и кордом JSF, который я использую в качестве внешнего контроллера. Любая помощь будет замечательной.
ВГА Вы имеете в виду динамическую интеграцию? вам нужны пользователи для входа в систему с помощью аутентификации LDAP или чего-то еще? –
@EmanueleRighetto динамический в том смысле, что я должен установить жесткие диски менеджера в файле Spring-Ldap.xml для подключения к ldap-серверу. Я хочу динамически подключаться, я не хочу использовать hardcoded credentials в spring-ldap.xml. –