Skip to content

Remember users are already logged in on non-origin requests, without giving them authorization. #157

Description

@rien

In PR #155 we've added a page where users always have to confirm they want to start the authorization flow for a client. This is needed because our session cookie is SameSite=Strict so this cookie won't be sent when a user is redirected to zauth, unless the user does an interaction like clicking the "yes" button (issue #146).

I think a solution here would be to add a SameSite=Lax cookie with information about who is logged in, but which does not give authorization rights. When the authorization flow is started, the absence of this cookie would send the user directly to the login page. If such a cookie is present, we can present the new authorization page where the user has to confirm they want to login to the client with their user (similar as to how the Microsoft login works):

image

Special care should be taken to not give the Lax cookie rights to other authorizations, it should be purely to detect who could be logged in. One way to do this would be to not store the session id, but only the user's id or even the user's name.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions