У меня есть две группы пользователей - сотрудники и члены, сотрудники находятся на сервере LDAP, а члены находятся в файле свойств. Мне нужно настроить оба из них в одном домене безопасности, а это значит, что мне нужно получить аутентификацию из разных модулей входа - сотрудников из LdapExtLoginModule и членов модуля входа в UserRoles. Что-то вроде этого:Как настроить несколько модулей входа в одном домене безопасности в JBOSS EAP 6.3?
<security-domain name="EmpMem" cache-type="default">
<authentication>
<login-module code="UsersRoles" flag="required">
<module-option name="password-stacking" value="useFirstPass"/>
<module-option name="usersProperties" value="app-users.properties"/>
<module-option name="rolesProperties" value="app-roles.properties"/>
</login-module>
<login-module code="org.jboss.security.auth.spi.LdapExtLoginModule" flag="required">
<module-option name="password-stacking" value="useFirstPass"/>
<module-option name="java.naming.provider.url" value="ldap://ha-adds-global.xxx.com:3268"/>
<module-option name="bindDN" value="CN=prodjbsvc,OU=ServiceAccounts,OU=NOPOL,dc=eagle,dc=xxx,dc=com"/>
<module-option name="bindCredential" value="[email protected]"/>
<module-option name="baseCtxDN" value="dc=eagle,dc=xxx,dc=com"/>
<module-option name="baseFilter" value="(sAMAccountName={0})"/>
<module-option name="rolesCtxDN" value="ou=COSAs,dc=eagle,dc=xxx,dc=com"/>
<module-option name="roleFilter" value="(sAMAccountName={0})"/>
<module-option name="roleAttributeID" value="memberOf"/>
<module-option name="roleAttributeIsDN" value="true"/>
<module-option name="roleNameAttributeID" value="cn"/>
<module-option name="roleRecursion" value="-1"/>
<module-option name="searchScope" value="SUBTREE_SCOPE"/>
<module-option name="allowEmptyPasswords" value="false"/>
<module-option name="java.naming.referral" value="follow"/>
</login-module>
</authentication>
</security-domain>
Я знаю, что есть модуль Логин Пароль называется Stacking, которые могут цепи несколько модулей входа в систему вместе, но выглядит как LdapExtLoginModule не поддерживает это? Пожалуйста, предложите способ сделать это.
Мои требования: Когда пользователь является сотрудником, он получает удостоверение подлинности с сервера LDAP и должен иметь возможность доступа к ресурсам сотрудников (только java-пакеты/классы), а когда пользователь является членом, он получает аутентификацию из файла свойств и должен иметь возможность доступа к ресурсам-членам (только java-пакеты/классы).
Мне нужно использовать LdapExtLoginModule согласно требованию. Пользователь может иногда быть сотрудником и членом (будущие требования). –
(Возможно тоже) простое решение для вашего будущего требования: если Employee является членом, он также сохраняет роль Member в LDAP с Employee ... поэтому файл свойства содержит только «чистые» члены ... если это не- go всегда есть возможность написать собственную реализацию LoginModule – tom
Я не думаю, что смогу это сделать. Но можете ли вы предложить идею о том, как мне создать пользовательский модуль входа для моего требования? –