HI ..
 i am trying to spring boot service for centralize authentication for any
login service can authenticate in as a server level and provide token for
login serves.
how to create server service and client service for login page .
help for that.

On Thu, Jun 9, 2016 at 9:20 PM, Jonathan Labin <[email protected]>
wrote:

> My web.xml:
>
>
>     <filter>
> <filter-name>CAS Single Sign Out Filter</filter-name>
>
> <filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class>
> <init-param>
> <param-name>casServerUrlPrefix</param-name>
> <param-value>http://mycasserver</param-value>
> </init-param>
> </filter>
> <filter-mapping>
>    <filter-name>CAS Single Sign Out Filter</filter-name>
>    <url-pattern>/*</url-pattern>
> </filter-mapping>
> <listener>
>
>  
> <listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class>
>     </listener>
>     <listener>
>
> <listener-class>org.apache.shiro.web.env.EnvironmentLoaderListener</listener-class>
>     </listener>
>
>     <context-param>
>     <param-name>shiroConfigLocations</param-name>
>     <param-value>/WEB-INF/shiro/shiro.ini</param-value>
> </context-param>
>
>     <filter>
>         <filter-name>ShiroFilter</filter-name>
>
> <filter-class>org.apache.shiro.web.servlet.ShiroFilter</filter-class>
>     </filter>
>
>     <filter-mapping>
>         <filter-name>ShiroFilter</filter-name>
>         <url-pattern>/*</url-pattern>
>         <dispatcher>REQUEST</dispatcher>
>         <dispatcher>FORWARD</dispatcher>
>         <dispatcher>INCLUDE</dispatcher>
>         <dispatcher>ERROR</dispatcher>
>     </filter-mapping>
>
>     <welcome-file-list>
>         <welcome-file>index.jsp</welcome-file>
>     </welcome-file-list>
>
>
> I hope that helps
>
> On Monday, May 30, 2016 at 3:24:02 AM UTC-4, Sankalp Sharma wrote:
>>
>> Hi Jonathan,
>>
>> I am having the same problem as you had but even after ordering the
>> web.xml as you described, I am still stuck with the error.
>>
>> I have debugged the cas java client code to find why Single Logout not
>> working and found out that cas-server is sending the Logout
>> request(BACK_CHANNEL) to each application but some java clients are unable
>> to handle and there is no error in the logs.
>>
>> Please provide a solution and Can you please post your applications
>> web.xml for better understanding and it will be very helpful if you can
>> have a look at this page
>>
>>
>> https://groups.google.com/a/apereo.org/forum/#!searchin/cas-user/single$20logout/cas-user/Tn1kPEOFvAY/sESb-nI3BAAJ
>>
>> Regards,
>> Sankalp
>>
>>
>> On Wednesday, January 13, 2016 at 6:51:25 PM UTC+5:30, Jonathan Labin
>> wrote:
>>>
>>> It looks like my web.xml was out of order.  I collected all of the SLO
>>> elements first (filter, filter-mapping, and listener), all of the
>>> authentication elements next, and finally all of the validation elements at
>>> the end.  After doing that SLO seems to work as one might hope.
>>>
>>> So is the statement from the Jasig/java-cas-client Recommended Logout
>>> Procedure
>>> <https://github.com/Jasig/java-cas-client#recommend-logout-procedure>
>>> untrue?
>>>
>>>> The client has no code to help you handle log out. The client merely
>>>> places objects in session. Therefore, we recommend you do a
>>>> session.invalidate() call when you log a user out. However, that's
>>>> entirely your application's responsibility.
>>>
>>>
>>> It seems that it does end the session on receipt of a SLO message from
>>> the CAS server.  Or am I still confused about what is happening?
>>>
>>> On Monday, January 11, 2016 at 1:36:34 PM UTC-5, Misagh Moayyed wrote:
>>>>
>>>> No there is. That is the configuration you have. Cookies are not
>>>> deleted, yes, but your session is gone which is mostly what you care about.
>>>>
>>>> If you are not seeing SLO, look into your logs and see what is
>>>> happening.
>>>>
>>>>
>>>>
>>>> *From:* Jonathan Labin [mailto:[email protected]]
>>>> *Sent:* Monday, January 11, 2016 11:29 AM
>>>> *To:* CAS Community <[email protected]>
>>>> *Cc:* [email protected]
>>>> *Subject:* Re: [cas-user] Re: Help with SLO and Java Web Client
>>>>
>>>>
>>>>
>>>> Thanks for the advice.
>>>>
>>>>
>>>>
>>>> I'm not trying to bypass the nuances of SLO.  I'm trying to find out if
>>>> there is any way to enable SLO in a simple cookies-based webapp (like the 
>>>> sample
>>>> provided by UniconLabs
>>>> <https://github.com/UniconLabs/cas-sample-java-webapp>).
>>>>
>>>>
>>>>
>>>> It sounds like there is not and I'll have to use one of the compatible
>>>> security frameworks like Shiro or Spring Security.
>>>>
>>>> On Monday, January 11, 2016 at 11:13:19 AM UTC-5, Misagh Moayyed wrote:
>>>>
>>>> Your SLO filter is designed to do just that. It grabs onto the request,
>>>> examines it and if it considers it an SLO request it will attempt to
>>>> terminate the session. It also does nothing with cookies, if I recall.
>>>> There are no other flags. I guess what you are trying to do is advise the
>>>> webapp to log itself out on the next try, so as to preserve the current
>>>> user session so as to lose any work? In that case, why don’t you just turn
>>>> SLO off? What does SLO mean at that point?
>>>>
>>>>
>>>>
>>>> At any rate, I don’t know of a sane way you could manage/implement what
>>>> you propose, unless you wrote your filter that set that flag and did its
>>>> own thing with the session, and even then, I am not sure you can fully get
>>>> there. Way too many variables can go wrong.
>>>>
>>>>
>>>>
>>>> If you are trying to bypass the nuances of SLO, you won’t be able to.
>>>> You either accept SLO as is, or you turn it off and let the app do its own
>>>> thing separate from the CAS SSO session. I dare say the latter is more
>>>> common.
>>>>
>>>>
>>>>
>>>> *From:* [email protected] [mailto:[email protected]] *On Behalf Of 
>>>> *Jonathan
>>>> Labin
>>>> *Sent:* Monday, January 11, 2016 8:11 AM
>>>> *To:* CAS Community <[email protected]>
>>>> *Subject:* [cas-user] Re: Help with SLO and Java Web Client
>>>>
>>>>
>>>>
>>>> To simplify the question:
>>>>
>>>> Is there no way to write a webapp to respond to the logout callback by
>>>> setting some flag.  Then on the next access by the client browser this flag
>>>> could be noticed and the session terminated (along with cookies)?
>>>>
>>>>
>>>>
>>>> Is this approach inadvisable or not possible for some reason?
>>>>
>>>>
>>>>
>>>> Thanks
>>>>
>>>>
>>>>
>>>> On Tuesday, January 5, 2016 at 11:33:54 AM UTC-5, Jonathan Labin wrote:
>>>>
>>>> I am having trouble with the the single log out feature.  I am using
>>>> CAS server 4.1.3 and client web apps based on the sample provided by
>>>> UniconLabs <https://github.com/UniconLabs/cas-sample-java-webapp>.
>>>> After modification according to the java client readme
>>>> <https://github.com/Jasig/java-cas-client#configuring-single-sign-out>:
>>>>
>>>>
>>>>
>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>
>>>> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee";
>>>>
>>>>    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>>>>
>>>>    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
>>>> http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd";>
>>>>
>>>>    <filter>
>>>>
>>>>         <filter-name>CAS Single Sign Out Filter</filter-name>
>>>>
>>>>
>>>> <filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class>
>>>>
>>>>         <!--  <init-param>
>>>>
>>>>              <param-name>casServerUrlPrefix</param-name>
>>>>
>>>>              <param-value>https://localhost:8181/cas</param-value>
>>>>
>>>>         </init-param>  -->
>>>>
>>>>    </filter>
>>>>
>>>>    <filter>
>>>>
>>>>         <filter-name>CAS Authentication Filter</filter-name>
>>>>
>>>>
>>>> <filter-class>org.jasig.cas.client.authentication.AuthenticationFilter</filter-class>
>>>>
>>>>         <init-param>
>>>>
>>>>              <param-name>casServerLoginUrl</param-name>
>>>>
>>>>              <param-value>https://localhost:8181/cas/login
>>>> </param-value>
>>>>
>>>>         </init-param>
>>>>
>>>>         <init-param>
>>>>
>>>>              <param-name>serverName</param-name>
>>>>
>>>>              <param-value>https://localhost:8181</param-value>
>>>>
>>>>         </init-param>
>>>>
>>>>    </filter>
>>>>
>>>>
>>>>
>>>>    <filter>
>>>>
>>>>         <filter-name>CAS Validation Filter</filter-name>
>>>>
>>>>
>>>> <filter-class>org.jasig.cas.client.validation.Cas30ProxyReceivingTicketValidationFilter</filter-class>
>>>>
>>>>         <init-param>
>>>>
>>>>              <param-name>casServerUrlPrefix</param-name>
>>>>
>>>>              <param-value>https://localhost:8181/cas</param-value>
>>>>
>>>>         </init-param>
>>>>
>>>>         <init-param>
>>>>
>>>>              <param-name>serverName</param-name>
>>>>
>>>>              <param-value>https://localhost:8181</param-value>
>>>>
>>>>         </init-param>
>>>>
>>>>         <init-param>
>>>>
>>>>              <param-name>redirectAfterValidation</param-name>
>>>>
>>>>              <param-value>true</param-value>
>>>>
>>>>         </init-param>
>>>>
>>>>         <init-param>
>>>>
>>>>              <param-name>useSession</param-name>
>>>>
>>>>              <param-value>true</param-value>
>>>>
>>>>         </init-param>
>>>>
>>>>         <!-- <init-param> <param-name>acceptAnyProxy</param-name>
>>>> <param-value>true</param-value>
>>>>
>>>>         </init-param> <init-param>
>>>> <param-name>proxyReceptorUrl</param-name>
>>>> <param-value>/cas-sample-java-webapp/proxyUrl</param-value>
>>>>
>>>>         </init-param> <init-param>
>>>> <param-name>proxyCallbackUrl</param-name> <param-value>
>>>> https://localhost:8181/cas-sample-java-webapp/proxyUrl</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>/*</url-pattern>
>>>>
>>>>    </filter-mapping>
>>>>
>>>>
>>>>
>>>>    <filter-mapping>
>>>>
>>>>         <filter-name>CAS Authentication Filter</filter-name>
>>>>
>>>>         <url-pattern>/*</url-pattern>
>>>>
>>>>    </filter-mapping>
>>>>
>>>>
>>>>
>>>>    <filter-mapping>
>>>>
>>>>         <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
>>>>
>>>>         <url-pattern>/*</url-pattern>
>>>>
>>>>    </filter-mapping>
>>>>
>>>>
>>>>
>>>>    <filter-mapping>
>>>>
>>>>       <filter-name>CAS Single Sign Out Filter</filter-name>
>>>>
>>>>       <url-pattern>/*</url-pattern>
>>>>
>>>>    </filter-mapping>
>>>>
>>>>
>>>>
>>>>    <listener>
>>>>
>>>>
>>>>  
>>>> <listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class>
>>>>
>>>>     </listener>
>>>>
>>>>
>>>>
>>>>    <welcome-file-list>
>>>>
>>>>         <welcome-file>
>>>>
>>>>             index.jsp
>>>>
>>>>         </welcome-file>
>>>>
>>>>    </welcome-file-list>
>>>>
>>>> </web-app>
>>>>
>>>>
>>>>
>>>> I can successfully log in to the web application through CAS
>>>> authentication.
>>>>
>>>> When I log out at CAS server in another tab using:
>>>> https://localhost:8181/cas/logout I receive confirmation that logout
>>>> was successful.
>>>>
>>>>
>>>>
>>>> The server log shows:
>>>>
>>>> 2016-01-05T11:18:41.635-0500|Info: 2016-01-05 11:18:41,635 DEBUG
>>>> [org.jasig.cas.CentralAuthenticationServiceImpl] - <Ticket found.
>>>> Processing logout requests and then deleting the ticket...>
>>>>
>>>> 2016-01-05T11:18:41.636-0500|Info: 2016-01-05 11:18:41,636 DEBUG
>>>> [org.jasig.cas.logout.SamlCompliantLogoutMessageCreator] - <Generated
>>>> logout message: [<samlp:LogoutRequest
>>>> xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
>>>> ID="LR-4-0sROBuPSyWPSs5z6tVOVXxCFjnejqH9jrbs" Version="2.0"
>>>> IssueInstant="2016-01-05T11:18:41Z"><saml:NameID
>>>> xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">@NOT_USED@
>>>> </saml:NameID><samlp:SessionIndex>
>>>> ST-5-7pGNgBnwf4JGqmJY7era-mycastest.myorg.org
>>>> </samlp:SessionIndex></samlp:LogoutRequest>]>
>>>>
>>>> 2016-01-05T11:18:41.636-0500|Info: 2016-01-05 11:18:41,636 DEBUG
>>>> [org.jasig.cas.logout.LogoutManagerImpl] - <Sending logout request for: [
>>>> https://localhost:8181/cas-sample-java-webapp-2/]>
>>>>
>>>> 2016-01-05T11:18:41.636-0500|Info: 2016-01-05 11:18:41,636 DEBUG
>>>> [org.jasig.cas.logout.LogoutManagerImpl] - <Prepared logout message to send
>>>> is [org.jasig.cas.logout.LogoutManagerImpl$LogoutHttpMessage@46569bda
>>>> [url=https://localhost:8181/cas-sample-java-webapp-2/,message=<samlp:LogoutRequest
>>>> xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
>>>> ID="LR-4-0sROBuPSyWPSs5z6tVOVXxCFjnejqH9jrbs" Version="2.0"
>>>> IssueInstant="2016-01-05T11:18:41Z"><saml:NameID
>>>> xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">@NOT_USED@
>>>> </saml:NameID><samlp:SessionIndex>
>>>> ST-5-7pGNgBnwf4JGqmJY7era-mycastest.myorg.org
>>>> </samlp:SessionIndex></samlp:LogoutRequest>,asynchronous=true,contentType=application/x-www-form-urlencoded]]>
>>>>
>>>> 2016-01-05T11:18:41.638-0500|Info: 2016-01-05 11:18:41,638 DEBUG
>>>> [org.jasig.cas.logout.LogoutManagerImpl] - <Captured logout request
>>>> [org.jasig.cas.logout.DefaultLogoutRequest@479d1dbc[ticketId=
>>>> ST-5-7pGNgBnwf4JGqmJY7era-mycastest.myorg.org,service=
>>>> https://localhost:8181/cas-sample-java-webapp-2/,status=SUCCESS]]>
>>>>
>>>> 2016-01-05T11:18:41.638-0500|Info: 2016-01-05 11:18:41,638 DEBUG
>>>> [org.jasig.cas.logout.SamlCompliantLogoutMessageCreator] - <Generated
>>>> logout message: [<samlp:LogoutRequest
>>>> xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
>>>> ID="LR-5-uiOMuNVN2F9ENMiORMqhGn02bWrL6u5NKZf" Version="2.0"
>>>> IssueInstant="2016-01-05T11:18:41Z"><saml:NameID
>>>> xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">@NOT_USED@
>>>> </saml:NameID><samlp:SessionIndex>
>>>> ST-4-1m5RMx43NhaU2wreOvbp-mycastest.myorg.org
>>>> </samlp:SessionIndex></samlp:LogoutRequest>]>
>>>>
>>>> 2016-01-05T11:18:41.639-0500|Info: 2016-01-05 11:18:41,638 DEBUG
>>>> [org.jasig.cas.logout.LogoutManagerImpl] - <Sending logout request for: [
>>>> https://localhost:8181/cas-sample-java-webapp-1/]>
>>>>
>>>> 2016-01-05T11:18:41.639-0500|Info: 2016-01-05 11:18:41,639 DEBUG
>>>> [org.jasig.cas.logout.LogoutManagerImpl] - <Prepared logout message to send
>>>> is [org.jasig.cas.logout.LogoutManagerImpl$LogoutHttpMessage@5601d15a
>>>> [url=https://localhost:8181/cas-sample-java-webapp-1/,message=<samlp:LogoutRequest
>>>> xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
>>>> ID="LR-5-uiOMuNVN2F9ENMiORMqhGn02bWrL6u5NKZf" Version="2.0"
>>>> IssueInstant="2016-01-05T11:18:41Z"><saml:NameID
>>>> xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">@NOT_USED@
>>>> </saml:NameID><samlp:SessionIndex>
>>>> ST-4-1m5RMx43NhaU2wreOvbp-mycastest.myorg.org
>>>> </samlp:SessionIndex></samlp:LogoutRequest>,asynchronous=true,contentType=application/x-www-form-urlencoded]]>
>>>>
>>>> 2016-01-05T11:18:41.641-0500|Info: 2016-01-05 11:18:41,641 DEBUG
>>>> [org.jasig.cas.logout.LogoutManagerImpl] - <Captured logout request
>>>> [org.jasig.cas.logout.DefaultLogoutRequest@2b711a3c[ticketId=
>>>> ST-4-1m5RMx43NhaU2wreOvbp-mycastest.myorg.org,service=
>>>> https://localhost:8181/cas-sample-java-webapp-1/,status=SUCCESS]]>
>>>>
>>>>
>>>>
>>>> and then to complete the TICKET_GRANTING_TICKET_DESTROYED action.
>>>>
>>>>
>>>>
>>>> I'm not exactly sure what i'm looking for but a few things stand out.
>>>>
>>>> 1) I see that the chain for logout of each client webapp ends with the
>>>> term status=SUCCESS.  Is that indicative of a successful logout or simply
>>>> that the POST was made.
>>>>
>>>> 2) There are a number of places where SAML shows up in that log
>>>> segment.  Does that mean I need to run the SAML protocol on my client?  If
>>>> so, is that in addition to or in replacement of the CAS ticket validation
>>>> filter or are those unrelated?
>>>>
>>>>
>>>>
>>>> After the logout I am still able to navigate the test client
>>>> application(s) so the session has not been ended.
>>>>
>>>> Assuming that my configuration of server and client are correct (may
>>>> not be true), What should my application do to correctly respond to the SLO
>>>> protocol?
>>>>
>>>> I see the line in the client documentation stating:
>>>>
>>>> The client has no code to help you handle log out. The client merely
>>>> places objects in session.
>>>>
>>>> but what objects are placed into the session and how should the client
>>>> be written to recognize these objects and perform a session invalidation on
>>>> the next access attempt?
>>>>
>>>>
>>>>
>>>> Are there any simple examples of a web client that appropriately
>>>> responds to the SLO protocol?
>>>>
>>>> ...
>>>
>>> --
> You received this message because you are subscribed to the Google Groups
> "CAS Community" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/a/apereo.org/group/cas-user/
> .
> To view this discussion on the web visit
> https://groups.google.com/a/apereo.org/d/msgid/cas-user/66713d94-d1a6-4fc4-aef5-482df50978d2%40apereo.org
> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/66713d94-d1a6-4fc4-aef5-482df50978d2%40apereo.org?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/a/apereo.org/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups "CAS 
Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/a/apereo.org/group/cas-user/.
To view this discussion on the web visit 
https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAE7%2Ber8vF%2BFPRYrWpSOs%2BcX65eXNf3bFLHdoMkHv54L6f-LY6A%40mail.gmail.com.
For more options, visit https://groups.google.com/a/apereo.org/d/optout.

Reply via email to