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

BED-5070: Add Auto-provisioning Support to SSO Auth Flow on Backend #1025

Draft
wants to merge 10 commits into
base: main
Choose a base branch
from

Conversation

ALCooper12
Copy link
Contributor

@ALCooper12 ALCooper12 commented Dec 17, 2024

Description

  • Created a new SSOProviderConfig struct to be used as a jsonb type/value inside the sso_providers table under a new column called config
  • Added database migration in order to create the new config column and insert default values
  • Updated and added new/existing database and model variables/functions within sso_providers.go,samlprovider(s).go, and oidc_providers.go files
  • Added user creation auto-provisioning and attribute mapping for both SAML and OIDC
  • Set up the enforcement of enable/disable auto-provisioning for the SSOProviderConfig

Motivation and Context

  • Ticket: BED-5070

Why is this change required? What problem does it solve?

  • Currently, BloodHound users must be created manually for every new user. In larger customer environments, this can create a significant amount of work to create 30+ user accounts and this friction could reduce adoption. This PR solves the issue of auto-provisioning users who don't yet exist via SAML and OIDC into the BHCE/BHE platform. It also sets up default user role allocation and SSO Provider role modification

How Has This Been Tested?

  • Still working on this*****

Screenshots (optional):

  • Still working on this*****

Types of changes

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Database Migrations

Checklist:

@ALCooper12 ALCooper12 self-assigned this Dec 17, 2024
@ALCooper12 ALCooper12 added enhancement New feature or request api A pull request containing changes affecting the API code. work in progress This pull request is a work in progress and should not be merged labels Dec 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api A pull request containing changes affecting the API code. enhancement New feature or request work in progress This pull request is a work in progress and should not be merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant