-
Notifications
You must be signed in to change notification settings - Fork 17
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
SPA - OIDC integration following the design implemented on the PoC #558
Conversation
…tibility with bearer auth feature flag
@ekraffmiller Back to Ready For Review .. There was a single test failing when checking a checkbox (Terms Of Use), this was only happening in github actions, this was because the interactivity was happening too fast, I added a 300ms |
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.
This looks great, it's so nice to have OIDC in the SPA! 🎉
Regarding the testing, would it simplify things to add a script to docker-compose that completes the signup process for the OpenID users, and updates their permissions? That way it wouldn't have to be done for individual tests.
I did find one issue when I tried to give the Dataverse User account permissions through JSF. The Dataverse User isn't shown on the DataverseAdmin's dashboard, even though a user that I create within Dataverse is there. I can create a separate issue for that.
Also, what is the plan for Dataverse built-in users when we deploy to production? Will Dataverse be configured to do OpenID authentication for those users?
tests/e2e-integration/integration/datasets/DatasetJSDataverseRepository.spec.ts
Outdated
Show resolved
Hide resolved
…ary api config inits on all integration tests
@ekraffmiller thanks for the review!
For these two blocks I think we can keep iterating and thinking about it on this same branch that this PR points to (remember it doesn't point to
On this last comment, perhaps we can check with Guillermo on Monday to find out what is going on. |
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.
Sorry, just noticed this, otherwise looks great!
tests/e2e-integration/integration/datasets/DatasetJSDataverseRepository.spec.ts
Outdated
Show resolved
Hide resolved
…epository.spec.ts Co-authored-by: Ellen Kraffmiller <[email protected]>
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.
looks good, approved!
Came across an issue while testing this PR in local. to reproduce:
Do we want to limit the amount of characters enterable in those 2 fields? |
Another point I wanted to raise is that when we run the List User api - the new users aren't reflected in the API call: https://guides.dataverse.org/en/6.5/api/native-api.html#list-users |
@ofahimIQSS Since this PR is not pointing to develop, should we still merge it and create a backend and frontend issues to address the fix? |
I agree with moving forward with this PR and merging it and tracking the issue separately. I went ahead and created an issue for this - please modify it to our needs: #574 |
Merging PR as it has passed testing |
What this PR does / why we need it:
Change SPA authentication method to use Keycloak as OIDC provider using PKCE based on an initial PoC.
Which issue(s) this PR closes:
Special notes for your reviewer:
This PR does not point to the
develop
branch but to a separate branch ( authentication-oidc ), the idea is in another PR to configure the deployment to another environment that is not Beta maybe to be able to test this not only locally before merging to develop.All unit tests and e2e tests are working now with this new authentication method.
Application terms of use are empty for now as we don't have an API endpoint for it yet.
Suggestions on how to test this:
Step 1: Run the Development Environment
npm i
.cd packages/design-system && npm i && npm run build
.cd ../../
..env
file similar to.env.example
, with the variableVITE_DATAVERSE_BACKEND_URL=http://localhost:8000
.dev-env/.env
file is filled with the appropriate data. For theREGISTRY
variable, please setghcr.io
, as we will use a PR-generated dataverse image.cd dev-env
../run-env.sh 10959-bearer-token-auth-ext
.Step 2: Test the feature in the SPA
Another path:
Does this PR introduce a user interface change? If mockups are available, please link/include them here:
signup-success.mov
Is there a release notes update needed for this change?:
No
Additional documentation:
No