spring-projects / spring-projects/spring-security-samples
CAS Single Sign-Out Issue
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 1.8k
- Forks
- 797
- Avg merge
- 3m
- Merged PRs (30d)
- 5
Description
CAS Single Sign-Out Issue
When running the CAS login example, there is no issue with logout using the provided sample, but there are issues with custom logout functionality.
Service Information
- CAS Server: https://127.0.0.1:8443/cas
- Client: http://127.0.0.1:8080
- Single Sign-Out URL: https://127.0.0.1:8443/cas/logout
Problem Description
After logging in, when executinglocation.href='https://127.0.0.1:8443/cas/logout?service=http%3A%2F%2F127.0.0.1%3A8080'in the console using the developer tools to logout, it is occasionally observed that the user is not redirected to the CAS server's login page. Upon tracing the code, it is found that the logout operation executing/login/casand redirecting to the service address are handled by two different threads. This results in an inability to guarantee a fixed execution order between the two, and also ensures that the CAS server is fully logged out before redirecting to the service address. This leads to a scenario where, upon redirecting to the service, the user may not be able to be redirected to the CAS server's login page. Due to project requirements, logout may only be performed in this manner, and no better solution can currently be devised.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the CAS login example and trace the /login/cas flow alongside the custom logout URL, https://127.0.0.1:8443/cas/logout. Reproduce the intermittent redirect behavior and determine how to ensure CAS logout completes before redirecting to the service address; done means the user is consistently sent to the CAS login page.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring
- Domain
- authentication
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100