-
Notifications
You must be signed in to change notification settings - Fork 12
Support authorization for Connectors through OAuth2 #168
Comments
I would appreciate that, but never really used oauth myself 😅 |
Yes that's absolutely possible, but it completely removes the security introduced by it. Any application would be able to authenticate itself as
I think you answered that question on your own. The only way around that, that I know of, is a user defined
Yes, absolutely. As far as I know, the only way around that, would be to use A possible solution to have the One downside of that is, that all re-authentication also needs to be done from the The advantage of this solution over directly publishing the This solution needs to be discussed, especially as it introduces a dependency to Personal opinion: I would like to see an option where it's possible to use the provided |
I kinda like that idea. This way we can also solve the problem that the gui doesn’t necessarily is hosted at Security wise this solution also has the advantage that we can limit the oauth scopes in the proxy so an attacker can’t request any additional scopes. Still an attackers could do enough damage if they wanted to. Supplying a custom client_secret (and therefore also a custom client_id) should definitely be an option for independence in case this proxy fails. This proxy also needs to be hosted somewhere, so that also needs being solved. |
Spotify just added a new authorization flow. This flow would mostly fix these issues:
No need for the
At least partially this issue still exists. There is always the possibility of implementing the authorization flow manually. There is no way of prohibiting this in an open source client. But this authorization flow wouldn't be as vulnerable as the other authorization code flow anymore, since the callback doesn't contain the access token.
This issue is fixed, since the callback is just used to return whether or not the request was allowed. If so, the application already has a key to request via https POST the token. That way the actual key will be transmitted encrypted. |
Thanks for the follow up @molikuner! Created a issue about this at nodecg-io at codeoverflow-org/nodecg-io#38 as ChatOverflow is dead and nodecg-io is the replacement for it. |
Description
Currently each user has to manually create tokens in some cases also applications at each service they want to use which isn't that user friendly and in my opinion in long-term we need a easier way..
I've thinking about using OAuth2 in the gui to make the connecting to other services easier, but I never actually really used OAuth myself so I have some questions which could also be just me not understanding OAuth correctly:
client_secret
public which is required for the authorization code flow? From quick googling some people say yes and some say no. Most services (e.g. Spotify, StreamElements) only allow full access using the authorization code flow, meaning it would not be really worth implementing only for the implicit code flow. With a public client secret everyone could request authorization in our name, should I be worried about that? In case of twitch both the authorization code and implicit code flow allow access to tokens with the same permissions so there the only security is the registered callback url which brings me to my next question:Another idea is to have a separate website on the
codeoverflow.org
domain where you also get auth tokens and copy them into the gui. That way we can have the client secret actually secret and the callback url would also be https and not on localhost. This idea however isn't that easy and that elegant as a login button right in the gui.Comments?
The text was updated successfully, but these errors were encountered: