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

OIDC: Plugin-customizable OpenIDProvider class #982

Merged
merged 4 commits into from
Sep 25, 2024

Conversation

psrok1
Copy link
Member

@psrok1 psrok1 commented Sep 24, 2024

Your checklist for this pull request

  • I've read the contributing guideline.
  • I've tested my changes by building and running the project, and testing changed functionality (if applicable)
  • I've added automated tests for my change (if applicable, optional)
  • I've updated documentation to reflect my change (if applicable)

What is the current behaviour?

This PR addresses #965. Depending on the OpenID Provider, usually provider offers additional resources that may tell us more about the specific user, but these resources are non-standard and specific for the provider. We may want to have a dedicated handler for these specific providers

What is the new behaviour?

  • Additional layer between mwdb.model.oauth.OpenIDProvider (now called OpenIDProviderSettings) and mwdb.core.oauth.OpenIDClient - mwdb.core.oauth.provider.OpenIDProvider that implements user and group creation and can be used to create own customized OpenIDProvider classes
  • Specialized provider class can be registered by plugin using PluginAppContext.register_openid_provider_class method

Test plan

  • manual test: Implement customized provider and check if it works

Closing issues

closes #965

@psrok1 psrok1 merged commit a65ec4b into master Sep 25, 2024
12 checks passed
@psrok1 psrok1 deleted the feature/customizable-oidc-provider-handling branch September 25, 2024 15:05
psrok1 added a commit that referenced this pull request Sep 25, 2024
psrok1 added a commit that referenced this pull request Sep 25, 2024
@psrok1 psrok1 mentioned this pull request Oct 7, 2024
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

Successfully merging this pull request may close these issues.

OIDC: Plugin interface to customize the user creation for OIDC-based registrations
1 participant