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

Legacy Google sign-in library will be deprecated #123

Open
J-avery32 opened this issue Aug 12, 2021 · 1 comment
Open

Legacy Google sign-in library will be deprecated #123

J-avery32 opened this issue Aug 12, 2021 · 1 comment
Assignees

Comments

@J-avery32
Copy link
Collaborator

We use the legacy JS google sign in library. This should be updated.

@dylanmcreynolds
Copy link
Collaborator

I would really like to remove the javascript google stuff altogether. I'd rather handle the OIDC exchange ourselves. Here's a brief look at the flow:

I realize that much of this is work in splash-server, but let's put all the details here.

Much of what I'm talking about can be seen in https://github.com/AI-multimodal/oidc_validator. That repo is a stripped out project that I created to test dealing with OIDC just on its own. Some of that was used to make Tiled play with OIDC.

I think we have a configurable model for "OAuth2IdP" in he server. It's something along the lines of:

class OAuth2IdP:
  authURL: string # location that the user is taken to to perform logni. e.g. https://accounts.google.com/o/oauth2/v2/auth
  callbackURL: string # splash-server location that the IdP redirects to in order to exchange codes
  successURL: string # splash-server local location to take the user to after successful login
  failureURL: string # splash-server local location to take the user to after failed login
  IdPClientId: string # client id to send to the IdP
  IdPClientSecret: string # client secret to send to the IdP
  scopes: list[string] :  a list of scopes to send to the provider

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

No branches or pull requests

2 participants