У меня та же проблема, что и у нескольких других вопросов, ни на один из которых на самом деле не ответили; то есть с CAS 4.x (фактически 4.2.6) я не могу заставить атрибуты LDAP возвращаться в клиентское приложение.
Вопрос 1 Это кажется излишним; пользовательский код, чтобы обойти «простую» проблему.
Вопрос 2 Это уже было сделано, и это не сработало.
Итак, теперь моя очередь спросить... есть ли какое-то волшебство, чтобы заставить это работать? Мы использовали 3.5 в течение длительного времени без каких-либо проблем. Я пытаюсь преобразовать эти настройки в оверлейный слой Maven 4.x и новую конфигурацию контекста 4.x, но это не так.
Я вижу в журналах, что CAS запрашивает и получает свойства, которые я ищу, от LDAP. Но они не возвращаются в токен обратно в приложение.
Что еще нужно сделать помимо того, что изложено в документации Apereo? Я думаю, что это может быть репозиторий атрибутов??? Если что-то поможет вам помочь мне в этом, просто спросите: Config, Logs (конечно, отредактировано) ... что угодно.
Спасибо.
Обновление №1. Вот мой список решателей. ПРИМЕЧАНИЕ. Я сохраняю код/настройки закомментированными до тех пор, пока не заставлю их работать, а затем удалю все.
<util:map id="authenticationHandlersResolvers">
<!--
<entry key-ref="proxyAuthenticationHandler" value-ref="proxyPrincipalResolver" />
<entry key-ref="primaryAuthenticationHandler" value-ref="primaryPrincipalResolver" />
-->
<!--<entry key-ref="ldapAuthenticationHandler" value-ref="primaryPrincipalResolver" /> -->
<entry key-ref="ldapAuthenticationHandler" value="#{null}" />
</util:map>
Обновление №2
Я сделал больше тестов, и все еще безуспешно. Я думаю, это сводится к тому, что PrincipalAttributeMap LdapAuthenticationHandler не работает, ИЛИ attributeReleasePolicy serviceRegistryDao... кто-нибудь видит какие-либо проблемы в этой конфигурации?
<bean id="ldapAuthenticationHandler" class="org.jasig.cas.authentication.LdapAuthenticationHandler"
p:principalIdAttribute="sAMAccountName"
c:authenticator-ref="authenticator"
>
<property name="principalAttributeMap">
<map>
<entry key="cn" value="cn" />
<entry key="mail" value="Email" />
<entry key="memberOf" value="Groups" />
<entry key="displayName" value="displayName" />
</map>
</property>
</bean>
<bean id="serviceRegistryDao" class="org.jasig.cas.services.InMemoryServiceRegistryDaoImpl">
<property name="registeredServices">
<list>
<bean class="org.jasig.cas.services.RegexRegisteredService"
p:id="5"
p:name="All Servicesxxx"
p:description="Allow connections for all services and protocols"
p:serviceId="^(http|https|imaps)://.*"
p:evaluationOrder="5"
>
<property name="attributeReleasePolicy">
<bean class="org.jasig.cas.services.ReturnAllAttributeReleasePolicy" />
</property>
</bean>
</list>
</property>
</bean>