Govern Roles and Permissions#

The Role and Permissions feature lets you control who has authorization to view, edit, delete, and/or create items in Dataiku Govern. The Roles and Permissions Handler in the Python API is used to manage roles, role assignments and permissions.

Add a rule to assign a role to a new user#

import dataikuapi

host = "http(s)://GOVERN_HOST:GOVERN_PORT"
apiKey = "Your API key secret"
client = dataikuapi.GovernClient(host, apiKey)

# get the role and permissions editor
rp_editor = client.get_roles_permissions_handler()

# retrieve the role assignements for the Business initiative blueprint
bi_ra = rp_editor.get_role_assignments('bp.system.business_initiative')

# get the definition
bi_ra_def = bi_ra.get_definition()

# add a rule to assign the new user to the project manager role
project_manager_def = bi_ra_def.get_raw()['roleAssignmentsRules'].get('ro.project_manager', [])
project_manager_def.append({
  "criteria": [],
  "userContainers": [{"type": "user", "login": "new_user"}]
})
bi_ra_def.get_raw()['roleAssignmentsRules']['ro.project_manager'] = project_manager_def
bi_ra_def.save()

Reference documentation#

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminRolesPermissionsHandler(client)

Handle to edit the roles and permissions Do not create this directly, use get_roles_permissions_handler()

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminRoleListItem(...)

An item in a list of roles.

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminRole(...)

A handle to interact with the roles of the instance as an admin.

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminRoleDefinition(...)

The definition of a specific role.

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminBlueprintRoleAssignmentsListItem(...)

An item in a list of blueprint role assignments.

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminBlueprintRoleAssignments(...)

A handle to interact with the blueprint role assignments for a specific blueprint Do not create this directly, use get_role_assignments()

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminBlueprintRoleAssignmentsDefinition(...)

The role assignments for a specific blueprint.

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminBlueprintPermissionsListItem(...)

An item in a list of blueprint permissions.

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminBlueprintPermissions(...)

A handle to interact with blueprint permissions for a specific blueprint Do not create this directly, use get_blueprint_permissions()

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminBlueprintPermissionsDefinition(...)

The permissions for a specific blueprint.

dataikuapi.govern.admin_roles_permissions_handler.GovernAdminDefaultPermissionsDefinition(...)

The default permissions of the instance Do not create this directly, use get_default_permissions_definition()