Gerenciar permissões de painel usando a API do workspace
Este tutorial demonstra como gerenciar permissões de painel usando a API do workspace. Cada etapa inclui uma solicitação e uma resposta de exemplo e explicações sobre como usar as ferramentas e propriedades da API juntos.
Pré-requisitos
- Você precisa de um token de acesso pessoal para se conectar ao seu workspace. Confira Autenticação com tokens de acesso pessoal do Azure Databricks.
- Você precisa da ID do workspace que deseja acessar. Confira Nomes, URLs e IDs de instância do workspace
- Familiaridade com a referência da API REST do Databricks.
Parâmetros de caminho
Cada solicitação de ponto de extremidade neste artigo requer dois parâmetros de caminho, workspace_object_type
e workspace_object_id
.
workspace_object_type
: para painéis de IA/BI, o tipo de objeto édashboards
.workspace_object_id
: isso corresponde àresource_id
associada ao painel. Você pode usar o GET /api/2.0/workspace/list ou GET /api/2.0/workspace/get-status para recuperar esse valor. É uma cadeia de caracteres de 32 caracteres semelhante a01eec14769f616949d7a44244a53ed10
.
Consulte Etapa 1: Explore um diretório de workspace para obter um exemplo de listagem de objetos de workspace. Consulte GET /api/2.0/workspace/list para obter detalhes sobre a API da lista de workspaces.
Obter níveis de permissão de objeto do workspace
Esta seção usa o Obter níveis de permissão de objeto do workspace ponto de extremidade para obter os níveis de permissão que um usuário pode ter em um painel. Consulte GET /api/workspace/workspace/getpermissionlevels.
No exemplo a seguir, a solicitação inclui parâmetros de caminho de exemplo descritos acima. A resposta inclui as permissões que podem ser aplicadas ao painel indicado na solicitação.
GET /api/2.0/permissions/dashboards/01eec14769f616949d7a44244a53ed10/permissionLevels
Response:
{
"permission_levels": [
{
"permission_level": "CAN_READ",
"description": "Can view the Lakeview dashboard"
},
{
"permission_level": "CAN_RUN",
"description": "Can view, attach/detach, and run the Lakeview dashboard"
},
{
"permission_level": "CAN_EDIT",
"description": "Can view, attach/detach, run, and edit the Lakeview dashboard"
},
{
"permission_level": "CAN_MANAGE",
"description": "Can view, attach/detach, run, edit, and change permissions of the Lakeview dashboard"
}
]
}
Obter detalhes da permissão do objeto do workspace
O Obter permissões de objeto de workspace ponto de extremidade obtém as permissões atribuídas em um objeto de workspace específico. Consulte GET /api/workspace/workspace/getpermissions.
O exemplo a seguir mostra uma solicitação e uma resposta para o painel no exemplo anterior. A resposta inclui detalhes sobre o painel e usuários e grupos com permissões no painel. As permissões neste objeto foram herdadas para ambos os itens na parte access_control_list
da resposta. Na primeira entrada, as permissões são herdadas de uma pasta no workspace. A segunda entrada mostra permissões herdadas por associação ao grupo, admins
.
GET /api/2.0/permissions/dashboards/01eec14769f616949d7a44244a53ed10
Response:
{
"object_id": "/dashboards/490384175243923",
"object_type": "dashboard",
"access_control_list": [
{
"user_name": "first.last@example.com",
"display_name": "First Last",
"all_permissions": [
{
"permission_level": "CAN_MANAGE",
"inherited": true,
"inherited_from_object": [
"/directories/2951435987702195"
]
}
]
},
{
"group_name": "admins",
"all_permissions": [
{
"permission_level": "CAN_MANAGE",
"inherited": true,
"inherited_from_object": [
"/directories/"
]
}
]
}
]
}
Definir permissões de objeto de workspace
Você pode definir permissões nos painéis usando o ponto de extremidade Definir permissões de objeto de workspace. Consulte PUT /api/workspace/workspace/getpermissions.
O exemplo a seguir fornece permissão CAN EDIT para todos os usuários do workspace para o workspace_object_id
na solicitação PUT.
PUT /api/2.0/permissions/dashboards/01eec14769f616949d7a44244a53ed10
Request body:
{
"access_control_list": [
{
"group_name": "users",
"permission_level": "CAN_EDIT"
}
]
}
Para painéis de IA/BI, é possível usar o grupo All account users
para atribuir a permissão de exibição a todos os usuários registrados na conta do Azure Databricks. Confira Compartilhar um painel publicado.
Atualizar permissões de objeto de workspace
As permissões de objeto do workspace Update ponto de extremidade executa funções de forma semelhante às permissões de objeto configurar workspace. Ele atribui permissões usando uma solicitação PATCH
em vez de uma solicitação de PUT
.
Confira PATCH /api/workspace/workspace/updatepermissions na referência da API REST.
PATCH /api/2.0/permissions/dashboards/01eec14769f616949d7a44244a53ed10
Request body:
{
"access_control_list": [
{
"group_name": "account userS",
"permission_level": "CAN_VIEW"
}
]
}