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

baton databricks v0 #1

Merged
merged 24 commits into from
Jan 23, 2024
Merged

baton databricks v0 #1

merged 24 commits into from
Jan 23, 2024

Conversation

martinalbert
Copy link
Contributor

@martinalbert martinalbert commented Dec 13, 2023

Resolves https://github.com/ConductorOne/baton-project-status/issues/70.

Includes integrated Users, Groups, ServicePrincipals and Roles with their entitlements and grants.

- use logger from context instead of `fmt`
- prepare credentials in config for workspace API
- refactor the flow of config validation
  - account id has be present at all times
  - currently only Basic or SCIM are supported
- comment out handling workspace API configuration for now
- lists only the top account resource based on specified account id
- acts as a parent resource to all other resources
- mimics API design - implements granting of marketplace.admin role
  - we can obtain who has marketplace.admin role only when we look for rule sets scoped to whole account
- lists all existing groups under account
- adds various entitlements
  - membership entitlement
  - permission entitlement - granting assignable roles (group manager) to other identities
  - workspace scoped entitlements (for example `allow-cluster-create`)
- todo: implement grants for workspace scoped entitlements
- lists all existing ServicePrincipals under account
- adds various entitlements
  - role entitlements - granting itself roles
  - permission entitlement - granting assignable roles (group manager) to other identities
  - workspace scoped entitlements (for example `allow-cluster-create`) - granting itself a permissions
- lists all existing Workspaces under account
- todo: entitlements & grants for workspace API
- lists static roles and entitlements that identities in Databricks can have
- granting process is complex due to API design - no way to filter by role
- due to adding this resource, we remove cyclic entitlements and grants on other identities (users, groups, servicePrincipals)
  - this involves roles like account_admin or workspace specific entitlements like workspace_access or databricks_sql_access
- add helpers
- add resource types
- polish and optimize
- add helpers for
  - path and query parameters
  - authentication
  - resolving the URL paths
- add models and helper methods
- SCIM token have only restricted capabilities, it can't list roles or rule sets, which are very important for connector
@martinalbert martinalbert marked this pull request as ready for review January 16, 2024 18:45
@ggreer ggreer merged commit 55068aa into main Jan 23, 2024
2 checks passed
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.

2 participants