>>>> <Granted service ticket [ST-37-BfvqAaPj6N5tLZ5FeWfv- myserver for service [https://myserver/cas/clearPass] for user [ https://myserver/uPortal/CasProxyServlet]>
You requested a proxy ticket for ClearPass. Newer versions of CAS will make that message a little bit clearer (i.e. by including the root user name). Are you still not being able to access the password? On Fri, Nov 19, 2010 at 10:28 AM, Laura McCord <[email protected]>wrote: > Well and that's the thing, I didn't see a PT anywhere. In my logs I > see.... > > <Granted service ticket [ST-37-BfvqAaPj6N5tLZ5FeWfv-myserver for service [ > https://myserver/cas/clearPass] for user [ > https://myserver/uPortal/CasProxyServlet]> > 2010-11-19 08:31:07,643 INFO > [org.jasig.cas.client.proxy.ProxyGrantingTicketStorageImpl] - <No Proxy > Ticket found for > > > I can get the proxy ticket by using the PGT in the url to receive this: > > <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'> > <cas:proxySuccess> > > <cas:proxyTicket>ST-38-B7qFP21xPted2t9VruUb-myserver</cas:proxyTicket> > </cas:proxySuccess> > </cas:serviceResponse> > > > Then, I used the ticket above and ran it against the clearPass url and IT > WORKED! > > So, I guess I have it working now unless I'm doing something clumsy. > > > Thanks for your help, > Laura > > > On 11/18/10 6:16 PM, Scott Battaglia wrote: > > You supply ClearPass with a PT not a PGT. PGT is only used to get a proxy > ticket. ClearPass is protected by the Java CAS Client and acts accordingly. > > > Cheers, > Scott > > > On Thu, Nov 18, 2010 at 4:10 PM, Laura McCord <[email protected]>wrote: > >> One more question about the response >> >> So, I performed all of the steps described in the documentation: >> https://wiki.jasig.org/display/CASUM/ClearPass >> >> I tested the proxy ticket against the clearPass url but I'm still >> receiving the following response: >> >> <cas:clearPassResponse xmlns:cas='http://www.yale.edu/tp/cas'> >> <cas:clearPassFailure>No authentication information >> provided.</cas:clearPassFailure> >> </cas:clearPassResponse> >> >> >> Below is what I used in the url after I logged into my uPortal instance, is >> this the correct? >> https://servername/cas/clearPass?pgt=TGT-2-ablahblah-servername&service=https%3A%2F%2Fservernane%2Fcas%2FclearPass >> >> Here's a sample of my access log: >> >> "POST /cas/login?service=https://servername/uPortal/Login HTTP/1.1" 302 - >> "GET /uPortal/CasProxyServlet HTTP/1.1" 200 - >> "GET >> /uPortal/CasProxyServlet?pgtIou=PGTIOU-1-yaddayadda-servername&pgtId=TGT-2-ablahblah-servername >> HTTP/1.1" 200 98 >> "GET >> /cas/proxyValidate?pgtUrl=https%3A%2F%2Fservername%2FuPortal%2FCasProxyServlet&ticket=ST-1-COLAgdfgdggdgdg-servername&service=https%3A%2F%2Fservername%2FuPortal%2FLogin >> HTTP/1.1" 200 287 >> "GET /uPortal/Login?ticket=ST-1-COLAgdfgdggdgdg-servernameHTTP/1.1" 302 - >> "GET >> /cas/proxy?pgt=TGT-2-ablahblah-servername&targetService=https%3A%2F%2Fservername%2Fcas%2FclearPass >> HTTP/1.1" 200 215 >> "GET >> /cas/proxyValidate?ticket=ST-2-sdadadad-servername&service=https%3A%2F%2Fservername%2Fcas%2FclearPass >> HTTP/1.1" 200 297 >> "GET /cas/clearPass?ticket=ST-2-sdadadad-servername HTTP/1.1" 200 182 >> >> >> I'm not sure what else I should be looking at for troubleshooting purposes. >> >> Thanks Again, >> Laura >> >> >> >> >> >> On 11/18/10 11:06 AM, Laura McCord wrote: >> >> UGH!!! I could just kick myself. I found this in my localhost logs.... >> Apparently, my service that I entered in cas/services for uPortal wasn't >> right because once I just let everything have access, it worked. So, I guess >> I just need to fix the service url string for uPortal and it should work. >> Thanks. >> >> Nov 18, 2010 10:56:19 AM org.apache.catalina.core.StandardWrapperValve >> invoke >> SEVERE: Servlet.service() for servlet cas threw exception >> org.jasig.cas.services.UnauthorizedServiceException: >> service.not.authorized >> at >> org.jasig.cas.CentralAuthenticationServiceImpl.grantServiceTicket_aroundBody2(CentralAuthenticationServiceImpl.java:190) >> at >> org.jasig.cas.CentralAuthenticationServiceImpl.grantServiceTicket_aroundBody3$advice(CentralAuthenticationServiceImpl.java:44) >> at >> org.jasig.cas.CentralAuthenticationServiceImpl.grantServiceTicket(CentralAuthenticationServiceImpl.java:1) >> at >> org.jasig.cas.CentralAuthenticationServiceImpl.grantServiceTicket_aroundBody4(CentralAuthenticationServiceImpl.java:244) >> at >> org.jasig.cas.CentralAuthenticationServiceImpl.grantServiceTicket_aroundBody5$advice(CentralAuthenticationServiceImpl.java:44) >> at >> org.jasig.cas.CentralAuthenticationServiceImpl.grantServiceTicket(CentralAuthenticationServiceImpl.java:1) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:597) >> at >> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) >> at >> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) >> at >> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) >> at >> org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80) >> at >> org.perf4j.aop.AbstractTimingAspect.doPerfLogging(AbstractTimingAspect.java:71) >> at sun.reflect.GeneratedMethodAccessor178.invoke(Unknown Source) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:597) >> at >> org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:622) >> at >> org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:611) >> at >> org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:65) >> at >> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:161) >> at >> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:108) >> at >> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) >> at >> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) >> at >> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) >> at >> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) >> at $Proxy128.grantServiceTicket(Unknown Source) >> at >> org.jasig.cas.web.ProxyController.handleRequestInternal(ProxyController.java:72) >> at >> org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153) >> at >> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48) >> >> >> >> On 11/18/10 10:43 AM, Scott Battaglia wrote: >> >> If you're getting a response code of 500 for /proxy then there should be a >> corresponding error on the server side. >> >> >> >> On Thu, Nov 18, 2010 at 11:40 AM, Laura McCord >> <[email protected]>wrote: >> >>> Nevermind... I'm STILL having a problem with getting the clearPass >>> intergrated with uPortal 3.2.2. The specs are listed in my original email. >>> NO accounts can get past the guest layout of my uportal instance. The >>> problem seems to be stemming from the >>> PasswordCachingCasAssertionSecurityContext because if I replace it back with >>> the original cas context in my security.properties file it works fine. >>> >>> I'm receiving the following errors: >>> >>> ERROR [TP-Processor13] Nov/18 10:23:58,641 >>> provider.UnionSecurityContext.[] - Exception authenticating subcontext >>> org.jasig.cas3.extensions.clearpass.integration.uportal.PasswordCachingCasAssertionSecurityContext >>> assertion:org.jasig.cas.client.validation.assertioni...@427a9f36 >>> java.lang.RuntimeException: java.io.IOException: Server returned HTTP >>> response code: 500 for URL: >>> https://my-server/cas/proxy?pgt=TGT-2-gdHkBVgLhvri9QTzucfTAfKURJtcp3HK5geQE31TwizFqcGkOt-my-server&targetService=https%3A%2F%2Fmy-server%2Fcas%2FclearPass >>> at >>> org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:322) >>> at >>> org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:285) >>> at >>> org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:338) >>> at >>> org.jasig.cas.client.proxy.Cas20ProxyRetriever.getProxyTicketIdFor(Cas20ProxyRetriever.java:65) >>> at >>> org.jasig.cas.client.authentication.AttributePrincipalImpl.getProxyTicketFor(AttributePrincipalImpl.java:87) >>> at >>> org.jasig.cas3.extensions.clearpass.integration.uportal.PasswordCachingCasAssertionSecurityContext.postAuthenticate(PasswordCachingCasAssertionSecurityContext.java:49) >>> at >>> org.jasig.portal.security.provider.cas.CasAssertionSecurityContext.authenticate(CasAssertionSecurityContext.java:68) >>> at >>> org.jasig.portal.security.provider.ChainingSecurityContext.authenticate(ChainingSecurityContext.java:105) >>> at >>> org.jasig.portal.security.provider.UnionSecurityContext.authenticate(UnionSecurityContext.java:47) >>> at >>> org.jasig.portal.services.Authentication.authenticate(Authentication.java:98) >>> at org.jasig.portal.LoginServlet.service(LoginServlet.java:210) >>> .... >>> Caused by: java.io.IOException: Server returned HTTP response code: 500 >>> for URL: >>> https://my-server/cas/proxy?pgt=TGT-4-KsBFUIPXEfcktwcZbyr6JNQljfRIXyYqyVUkcrsb3itrIUuPGn-my-server&targetService=https%3A%2F%2Fmy-server%2Fcas%2FclearPass >>> at >>> sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1313) >>> at >>> com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnectionOldImpl.getInputStream(HttpsURLConnectionOldImpl.java:204) >>> at >>> org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:305) >>> ... 46 more >>> ERROR [TP-Processor18] Nov/18 10:33:57,641 portal.LoginServlet.[] - >>> Exception authenticating the request >>> org.jasig.portal.security.PortalSecurityException: One of the security >>> subcontexts threw an exception >>> at >>> org.jasig.portal.security.provider.ChainingSecurityContext.authenticate(ChainingSecurityContext.java:123) >>> at >>> org.jasig.portal.security.provider.UnionSecurityContext.authenticate(UnionSecurityContext.java:47) >>> at >>> org.jasig.portal.services.Authentication.authenticate(Authentication.java:98) >>> at org.jasig.portal.LoginServlet.service(LoginServlet.java:210) >>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> at >>> org.jasig.services.persondir.support.web.RequestAttributeSourceFilter.doFilter(RequestAttributeSourceFilter.java:316) >>> at >>> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236) >>> at >>> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> at >>> org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:112) >>> at >>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> at >>> org.jasig.portal.security.MaxInactiveFilter.doFilter(MaxInactiveFilter.java:77) >>> at >>> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236) >>> at >>> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> at >>> org.jasig.cas.client.util.AssertionThreadLocalFilter.doFilter(AssertionThreadLocalFilter.java:40) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> at >>> org.jasig.cas.client.validation.AbstractTicketValidationFilter.doFilter(AbstractTicketValidationFilter.java:196) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>> at >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> at >>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >>> at >>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) >>> at >>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) >>> at >>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >>> at >>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >>> at >>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) >>> at >>> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) >>> at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) >>> at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:774) >>> at >>> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703) >>> at >>> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:896) >>> at >>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) >>> at java.lang.Thread.run(Thread.java:619) >>> WARN [TP-Processor18] Nov/18 10:33:57,642 >>> web.RequestAttributeSourceFilter.[] - No username found for attribute 'null' >>> among {serverName=[my-server]} >>> >>> Please help. >>> >>> Thanks, >>> Laura >>> >>> >>> >>> >>> On 11/12/10 4:00 PM, Laura McCord wrote: >>> >>>> Okay I think I solved my problem. I discovered that there was more than >>>> one cas-client-core jar file in my cas lib directory. Once I removed it I >>>> was able to authenticate successfully. >>>> >>>> Now, I have one more question. How to test for clearPass correctly. >>>> After I authenticate through cas I go to this url : >>>> http://mycasserver/cas/clearPass but I get an error "No authentication >>>> information provided". Am I testing this incorrectly? I think it's working >>>> because the portlets that need the clearPass are working now but just for >>>> peace of mind I wanted to test it through the clearPass url. >>>> >>>> Thanks, >>>> Laura >>>> >>>> >>>> On 11/12/10 1:42 PM, Laura McCord wrote: >>>> >>>>> I have a uPortal 3.2.2 install and I removed the bundled cas server and >>>>> I am using an external 3.4.2 cas server now. >>>>> >>>>> The problem that I am seeing is that when I click on the "Sign In with >>>>> CAS" button from uPortal I enter my username/password in cas and then I'm >>>>> redirected to uPortal's GUEST unauthenticated layout. I was able to >>>>> authenticate through cas before I made any changes so I can confirm that >>>>> it >>>>> did work prior to any clearPass adjustments. >>>>> >>>>> I can tell that when I change the >>>>> root.cas=org.jasig.cas3.extensions.clearpass.integration.uportal.PasswordCachingCasAssertionSecurityContextFactory >>>>> back to the original state I'm at least able to authenticate and I'm given >>>>> my authenticated uPortal layout, if that helps. >>>>> >>>>> I'm not sure if I'm having a versioning issue. The modifications that I >>>>> have made are below. >>>>> >>>>> Thank You, >>>>> Laura McCord >>>>> >>>>> >>>>> - In the uportal-source-directory/pom.xml I added the following >>>>> dependencies: >>>>> <casclient.version>3.1.11</casclient.version> >>>>> >>>>> <cas-clearpass.version>1.0.5.GA</cas-clearpass.version> >>>>> <dependency> >>>>> <groupId>org.jasig.cas.client</groupId> >>>>> <artifactId>cas-client-core</artifactId> >>>>> <version>${casclient.version}</version> >>>>> </dependency> >>>>> <dependency> >>>>> <groupId>org.jasig.cas3.extensions</groupId> >>>>> <artifactId>clearpass-integration-uportal</artifactId> >>>>> <version>${cas-clearpass.version}</version> >>>>> </dependency> >>>>> >>>>> -In uportal-impl/pom.xml >>>>> <!-- ===== Runtime Dependencies ======================================= >>>>> --> >>>>> <dependency> >>>>> <groupId>org.jasig.cas3.extensions</groupId> >>>>> <artifactId>clearpass-integration-uportal</artifactId> >>>>> <scope>runtime</scope> >>>>> </dependency> >>>>> <dependency> >>>>> <groupId>org.jasig.cas.client</groupId> >>>>> <artifactId>cas-client-core</artifactId> >>>>> </dependency> >>>>> >>>>> -In uportal-impl/src/main/resources/properties/security.properties >>>>> ## This is the factory that supplies the concrete authentication >>>>> class >>>>> root=org.jasig.portal.security.provider.UnionSecurityContextFactory >>>>> >>>>> >>>>> root.cas=org.jasig.cas3.extensions.clearpass.integration.uportal.PasswordCachingCasAssertionSecurityContextFactory >>>>> >>>>> >>>>> >>>>> #root.cas=org.jasig.portal.security.provider.cas.CasAssertionSecurityContextFactory >>>>> >>>>> >>>>> >>>>> root.simple=org.jasig.portal.security.provider.SimpleSecurityContextFactory >>>>> >>>>> >>>>> ## URL of the CAS cleartext password service >>>>> >>>>> >>>>> org.jasig.cas3.extensions.clearpass.integration.uportal.PasswordCachingCasAssertionSecurityContextFactory.clearPassCasUrl= >>>>> https://myServer/cas/clearPass >>>>> >>>>> -In >>>>> uportal-impl/src/main/resources/properties/context/portletContainerContext.xml >>>>> >>>>> <bean id="cachedPasswordUserInfoService" >>>>> class="org.jasig.portal.portlet.container.services.CachedPasswordUserInfoService"> >>>>> >>>>> <property name="userInstanceManager" ref="userInstanceManager" /> >>>>> <property name="portletWindowRegistry" ref="portletWindowRegistry" /> >>>>> <property name="portletEntityRegistry" ref="portletEntityRegistry" /> >>>>> <property name="portletDefinitionRegistry" >>>>> ref="portletDefinitionRegistry" /> >>>>> <property name="portalRequestUtils" ref="portalRequestUtils" /> >>>>> <property name="decryptPassword" value="false" /> >>>>> </bean> >>>>> >>>>> - In cas/pom.xml >>>>> <dependency> >>>>> <groupId>org.jasig.cas3.extensions</groupId> >>>>> <artifactId>clearpass-webapp</artifactId> >>>>> <version>1.0.5.GA</version> >>>>> <scope>runtime</scope> >>>>> <type>war</type> >>>>> </dependency> >>>>> >>>>> -In cas/src/main/webapp/WEB-INF/deployerConfigContext.xml >>>>> <property name="authenticationMetaDataPopulators"> >>>>> <list> >>>>> <bean >>>>> class="org.jasig.cas3.extensions.clearpass.CacheCredentialsMetaDataPopulator"> >>>>> >>>>> <constructor-arg index="0" ref="credentialsCache" /> >>>>> </bean> >>>>> </list> >>>>> </property> >>>>> >>>>> -In cas/src/main/webapp/WEB-INF/web.xml >>>>> <filter> >>>>> <filter-name>CAS Validation Filter</filter-name> >>>>> <filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class> >>>>> >>>>> <init-param> >>>>> <param-name>casServerUrlPrefix</param-name> >>>>> <param-value>https:/mycas-server/cas</param-value> >>>>> </init-param> >>>>> <init-param> >>>>> <param-name>serverName</param-name> >>>>> <param-value>https://mycas-server</param-value> >>>>> </init-param> >>>>> <init-param> >>>>> <param-name>exceptionOnValidationFailure</param-name> >>>>> <param-value>true</param-value> >>>>> </init-param> >>>>> <init-param> >>>>> <param-name>allowedProxyChains</param-name> >>>>> <param-value> >>>>> >>>>> https://my-portal-server/uPortal/CasProxyServlet >>>>> </param-value> >>>>> </init-param> >>>>> <init-param> >>>>> <param-name>useSession</param-name> >>>>> <param-value>false</param-value> >>>>> </init-param> >>>>> <init-param> >>>>> <param-name>redirectAfterValidation</param-name> >>>>> <param-value>false</param-value> >>>>> </init-param> >>>>> </filter> >>>>> >>>>> <filter> >>>>> <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name> >>>>> <filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class> >>>>> >>>>> </filter> >>>>> >>>>> <filter-mapping> >>>>> <filter-name>CAS Validation Filter</filter-name> >>>>> <url-pattern>/clearPass</url-pattern> >>>>> </filter-mapping> >>>>> >>>>> <filter-mapping> >>>>> <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name> >>>>> <url-pattern>/clearPass</url-pattern> >>>>> </filter-mapping> >>>>> >>>>> <servlet-mapping> >>>>> <servlet-name>cas</servlet-name> >>>>> <url-pattern>/clearPass</url-pattern> >>>>> </servlet-mapping> >>>>> >>>>> >>>>> >>>>> >>>> >>> >>> -- >>> 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-user >>> >> >> -- >> 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-user >> >> >> >> -- >> 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-user >> >> > -- > 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-user > > > -- > 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-user > > -- 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-user
