Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use proper logout/login routines, generated token #84

Open
PVince81 opened this issue Nov 29, 2017 · 3 comments
Open

Use proper logout/login routines, generated token #84

PVince81 opened this issue Nov 29, 2017 · 3 comments

Comments

@PVince81
Copy link
Contributor

We could improve the current impersonating mechanism to be less hacky.

One idea would be to provide temporary tokens. These could even be using the app passwords facility to provide time limited tokens for an admin.

For a better UX, the admin would not even see the token and just receive a link per notification which would automatically log in said admin as that user.

Technically, the current impersonate link in the users page would generate a token on the backend, then redirect to the logout link, then impersonate link.

Having this kind of link would also make it possible to implement impersonation request workflow: #83

@sharidas @butonic

@PVince81 PVince81 added this to the backlog milestone Nov 29, 2017
@PVince81
Copy link
Contributor Author

Above I thought of the token of being a password.

Maybe it doesn't need to be. It could just be the impersonate request id. So ownCloud would only check whether the given admin who opens the link is logged in and is allowed to impersonate said user.

Also: have the tokens expire.

@sharidas
Copy link
Contributor

sharidas commented Nov 30, 2017

So basically the admin who wants to impersonate any user when clicked on impersonate icon would get a link as notification from the user. Which an admin when clicks would be impersonated. And the impersonation time would be temporary ( time limit ), after which the user would be switched back to admin user. This is what my understanding is from #84 (comment). The idea looks nice to me.

@PVince81
Copy link
Contributor Author

Interesting comment about the time limit.

I actually meant that the time window in which the link itself is valid is limited. The link expires.
But once the admin started impersonate, as long as the session is open, it can stay open forever.

We could talk about adding a time limit to the session as well as an extension to this.

Now also to consider: once impersonation has started, the link itself should expire directly, or within the next hour. So clicking the link again in another browser would not start impersonation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants