Improve UX: Forbidden requests should not redirect to login page
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 431
- Forks
- 179
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 71
Description
Describe the bug
When the user opens a page they don't have access to, the app will redirect them to the login page. This is not optimal since the user does NOT need to re-auth. They don't have the required permission, and signing in again will only result in facing the same login page. Hence a broken loop.
As a side note, it's a bit disruptive too, since the sidebar does not exist on the login page, making it non-trivial to go back to the page they were before.
To Reproduce
Steps to reproduce the behavior:
- Sign in as a user that doesn't have the required permission to open e.g. a specific namespace
- Switch to that specific namespace
- You will get redirected to the login page
Expected behavior
The user should be made aware that they do not have the required permission, and they should probably ask their administrator to grant them the required permissions if they need to access this page.
Desktop (please complete the following information):
- OS: Any
- Browser: Any
- Version: 2.28.11
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 by tracing how forbidden namespace requests are handled and where they are redirected to the login page. Reproduce the scenario with a signed-in user lacking permission, then verify that the app shows a clear permission message and keeps the user out of the login redirect loop.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- authorization, frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100