Have you modified *casServiceValidationSuccess.jsp* to get the user
attributes back to PHP-CAS

Find code snippet below


<cas:authenticationSuccess>

<cas:user>${fn:escapeXml(assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].
principal.id)}</cas:user>
        <cas:attributes>
        <c:forEach var="attr"
items="${assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.attributes}"
varStatus="loopStatus" begin="0"
end="${fn:length(assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.attributes)-1}"
step="1">
                <cas:attribute>
                    <cas:name>${fn:escapeXml(attr.key)}</cas:name>
                    <cas:value>${fn:escapeXml(attr.value)}</cas:value>
                </cas:attribute>
            </c:forEach>
        </cas:attributes>
<c:if test="${not empty pgtIou}">
        <cas:proxyGrantingTicket>${pgtIou}</cas:proxyGrantingTicket>
</c:if>
<c:if test="${fn:length(assertion.chainedAuthentications) > 1}">
        <cas:proxies>
<c:forEach var="proxy" items="${assertion.chainedAuthentications}"
varStatus="loopStatus" begin="0"
end="${fn:length(assertion.chainedAuthentications)-2}" step="1">
            <cas:proxy>${fn:escapeXml(proxy.principal.id)}</cas:proxy>
</c:forEach>
        </cas:proxies>
</c:if>
    </cas:authenticationSuccess>


Regards,
Gopi

On Wed, Mar 17, 2010 at 8:14 PM, Marc Delerue <[email protected]> wrote:

> Hello,
>
> I (finaly) managed to make the authentication work using openLdap. I
> know can access my application but I have another problem :
> I try to get some information about the users that are stored in the
> LDAP, so I configured the attributeRepository to get these
> informations and test with 2 applications (a script using phpCAS and
> this demo
> http://www.ja-sig.org/wiki/display/CASC/JA-SIG+Java+Client+Simple+WebApp+Sample
> ).
>
> One more time, the authentication is ok but it seems that attributes
> aren't sent by CAS.
>
> My tomcat/cas logs don't say anything bad (for the moment.)
>
> I put the content of my deployerConfigContext.xml file in the case
> somebody would have an idea.
>
>
> <!--
> ########################################################################################################################################
> -->
> <?xml version="1.0" encoding="UTF-8"?>
>
> <beans xmlns="http://www.springframework.org/schema/beans";
>       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>       xmlns:p="http://www.springframework.org/schema/p";
>       xsi:schemaLocation="http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans-2.5.xsd";>
>
>        <bean id="authenticationManager"
>
>  class="org.jasig.cas.authentication.AuthenticationManagerImpl">
>
>                <property name="credentialsToPrincipalResolvers">
>                        <list>
>
>                                <bean
>
>  
> class="org.jasig.cas.authentication.principal.CredentialsToLDAPAttributePrincipalResolver">
>                                        <!-- The Principal resolver form the
> credentials -->
>                                        <property
> name="credentialsToPrincipalResolver">
>                                              <bean
>
>  
> class="org.jasig.cas.authentication.principal.UsernamePasswordCredentialsToPrincipalResolver"
> />
>                                        </property>
>                                        <!--
>                                              The query made to find the
> Principal ID.
>                                              "%u" will be replaced by the
> resolved Principal
>                                        -->
>                                        <property name="filter"
> value="(ENTPersonLogin=%u)" />
>
>                                        <!-- The attribute used to define
> the new Principal ID -->
>
>                                      <property
> name="principalAttributeName" value="ENTPersonLogin" />
>
>                                      <property name="searchBase"
> value="ou=people,dc=ent,dc=fr" />
>                                        <property name="contextSource"
> ref="contextSource" />
>
>                                      <property name="attributeRepository"
> ref="attributeRepository" />
>
>
>                                </bean>
>
>
>                                <bean
>
>  
> class="org.jasig.cas.authentication.principal.HttpBasedServiceCredentialsToPrincipalResolver"
> />
>                        </list>
>                </property>
>
>                <property name="authenticationHandlers">
>                        <list>
>                                <bean
> class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler"
>                                        p:httpClient-ref="httpClient" />
>
>                                <bean
> class="org.jasig.cas.adaptors.ldap.BindLdapAuthenticationHandler" >
>                                        <property name="filter"
> value="ENTPersonLogin=%u" />
>                                        <property name="searchBase"
> value="ou=people,dc=ent,dc=fr" />
>                                        <property name="contextSource"
> ref="contextSource" />
>                                </bean>
>                        </list>
>                </property>
>        </bean>
>
>
> <bean id="contextSource"
> class="org.springframework.ldap.core.support.LdapContextSource">
>        <property name="anonymousReadOnly" value="false"/>
>        <property name="pooled" value="true"/>
>        <property name="urls">
>                <list>
>                        <!--value>ldaps://localhost/</value-->
>                        <value>ldap://localhost/</value>
>                </list>
>        </property>
>        <property name="userDn" value="cn=admin,dc=ent,dc=fr"/> <!-- eg
> uid=LdapUser,dc=yourdomain,dc=edu -->
>        <property name="password" value="xxxxxx"/>
>        <property name="baseEnvironmentProperties">
>                <map>
>                        <entry key="java.naming.security.authentication"
> value="simple" />
>                </map>
>        </property>
> </bean>
>
>
>        <bean id="userDetailsService"
> class="org.springframework.security.userdetails.memory.InMemoryDaoImpl">
>                <property name="userMap">
>                        <value>
>                        admin=notused,ROLE_ADMIN
>                    </value>
>                </property>
>        </bean>
>
>
>
> <bean id="attributeRepository"
> class="org.jasig.services.persondir.support.ldap.LdapPersonAttributeDao">
>        <property name="baseDN" value="ou=people,dc=ent,dc=fr" />
>        <property name="contextSource" ref="contextSource" />
>        <property name="requireAllQueryAttributes" value="true" />
>
>        <property name="queryAttributeMapping">
>                <map>
>                        <entry key="username" value="ENTPersonLogin" />
>                        <entry key="uid" value="uid" />
>                        <entry key="displayName" value="displayName" />
>                        <entry key="sn" value="sn" />
>                </map>
>        </property>
>
>        <property name="resultAttributeMapping">
>                <map>
>                        <entry key="givenName" value="givenName"/>
>                        <entry key="distinguishedName"
> value="distinguishedName" />
>                        <entry key="sn" value="sn" />
>                        <entry key="uid" value="uid" />
>                        <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.RegisteredServiceImpl"
>                                p:id="5"
>                                p:description="App1"
>                                p:serviceId="*://*.domain.int:*/**"
>                                p:name="App1"
>                                p:theme="default"
>                                p:allowedToProxy="true"
>                                p:enabled="true"
>                                p:ssoEnabled="true"
>                                p:anonymousAccess="false">
>                                <property name="allowedAttributes"
> value="sn,uid,displayName"/>
>            </bean>
>
>                </list>
>        </property>
> </bean>
>
> </beans>
> <!--
> ########################################################################################################################################
> -->
>
>
> Thank you very much in advance.
>
> Regards
>
> Marc
>
> --
> You are currently subscribed to [email protected] as:
> [email protected]
> To unsubscribe, change settings or access archives, see
> http://www.ja-sig.org/wiki/display/JSG/cas-dev
>

-- 
You are currently subscribed to [email protected] as: 
[email protected]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-dev

Reply via email to