-
Notifications
You must be signed in to change notification settings - Fork 32
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
feat: Core authentication plugins #1180
Conversation
mofojed
commented
Mar 28, 2023
•
edited
Loading
edited
- Add authentication plugins framework
- Add core plugins (Pre-shared key, Parent, and anonymous authentication)
- Fixes Support plugins for authentication #1058
- Refactored app initialization so embed-grid and embed-chart share the same logic
- Allows embed-grid/embed-chart to display a login screen if necessary
- embed-grid/embed-chart now also authorize
Codecov Report
@@ Coverage Diff @@
## main #1180 +/- ##
==========================================
+ Coverage 45.14% 45.67% +0.52%
==========================================
Files 460 473 +13
Lines 33637 33703 +66
Branches 8462 8455 -7
==========================================
+ Hits 15186 15394 +208
+ Misses 18401 18258 -143
- Partials 50 51 +1
Flags with carried forward coverage won't be shown. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
- Load AuthPlugins from the server before logging in - Find the appropriate auth plugin and login with it
- Add core plugins for Pre-shared Key, Parent, and Anonymous types of authentication - Will create an example for authclock login in the deephaven-js-plugins repo
- Include an example in the auth-plugin/README - Add tests for the core plugin types - Cleanup some of the AppInit stuff
- Forgot to check that bit
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.
Manual testing of PSK and anonymous login work great, also tested by creating my own auth wiring for keycloak and loading it through the plugins mechanism.
- Resolved conflicts in AppInit.tsx - Moved requestParentLoginOptions call to AuthPluginParent
- Will be used by embed-grid and embed-chart as well
- Added types to @deephaven/plugin-utils - Reference those types in @deephaven/redux
- Move SessionUtils into jsapi-utils package - Move PluginUtils and some of the app loading stuff into app-utils package
- Will be needed for all the apps
- Now it should be easier for other apps to initialize (like the embedded apps)
- All unit tests pass - Need to fix embed-grid and embed-chart apps
- Update readme - Delete AppRootBootstrap (unused)
- Wasn't proxying the plugins URL
- Rename 'utils.ts' to 'ConnectUtils.ts' - Wrap styleguide in a FontBootstrap
- Tests the full AppBootstrapping procedure
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.
Looking pretty good. There's a few unresolved conversations I commented on in this last round, so address those (just adding a comment or creating follow up tickets) and then this should be good to merge
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.
Tested w/ psk and anonymous locally
We should maybe do a follow up to improve psk by adding a prompt if it's not in the URL. Just a little better user experience