-
Notifications
You must be signed in to change notification settings - Fork 136
feat: Preliminary OIDC implementation #906
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
Conversation
✅ Deploy Preview for endearing-brigadeiros-63f9d0 canceled.
|
Thank you for the contribution @jescalada ! Glad to see the addition of OIDC login support to enable the use of more identity providers 😁 When you get a chance, please ensure to sign the CLA so that this PR can be eventually merged. |
@coopernetes It was tough to integrate Some additions were the manual Let me know what you think! After integrating the multiple auth method system, things will make more sense, as this PR will force you to use OIDC exclusively. |
@06kellyjac (cc) 🍰 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Solid PR! 🍰 A couple of comments and requested changes 👍
Hi @JamieSlome and @coopernetes, our CLA got cleared, so I'd appreciate one final look! 😃 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! 🚀 🍰
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #906 +/- ##
==========================================
- Coverage 63.20% 61.06% -2.15%
==========================================
Files 47 48 +1
Lines 1685 1767 +82
==========================================
+ Hits 1065 1079 +14
- Misses 620 688 +68 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
@jescalada - can we look at the Codecov above and address as some technical debt? 🤝 I'll package this feature up and release under |
@JamieSlome Absolutely! Once all the OIDC-related features are merged, I can do a final PR to increase test coverage. We have 4 more bite-sized OIDC/Auth/JWT PRs and no additional ones for the foreseeable future. Thanks for taking a look at this one! 😃 |
Great, thanks! ❤️@jescalada |
Fixes #905.
It adds the OIDC login button to the login page (/login) and the internals for OIDC. I would appreciate some feedback before I fill in the missing MongoDB implementation and clean up the
package-lock.json
.To get this to work, I modified the
proxy.config.json
. I filled in the authentication section with my own OIDC provider config. If you want to use my own config from below, let me know your email so I can register you with my Google client.Also, let me know if there is a better way to set the config! (I noticed
user-settings.json
being mentioned in the unit tests)Note: Currently, the above config will make existing unit tests fail (because it disables the local auth for OIDC to work). To make them pass again, set the local authentication in the config to "enabled": true. We're working on patching this up by refactoring to allow multiple auth methods to coexist (G-Research#6).
If you feel like this PR is too barebones to merge in, I can add more improvements, like the multiple auth system, so that everything works well and is backward-compatible! Let me know if you prefer small, incremental PRs or completed and well-tested flows.
Changelog