Pular para o conteúdo principal

Gerenciar as permissões do painel usando o espaço de trabalho API

Este tutorial demonstra como gerenciar as permissões do painel usando o espaço de trabalho API. Cada etapa inclui um exemplo de solicitação e resposta e explicações sobre como usar as ferramentas e propriedades da API em conjunto.

Pré-requisitos

Parâmetros do caminho

Cada solicitação do endpoint neste artigo requer dois parâmetros de caminho, workspace_object_type e workspace_object_id.

  • workspace_object_type : Para painéis AI/BI, o tipo de objeto é dashboards.
  • workspace_object_id : Isso corresponde ao resource_id associado ao painel. O senhor pode usar o comando GET /api/2.0/workspace/list ou GET /api/2.0/workspace/get-status para recuperar esse valor. É uma cadeia de 32 caracteres semelhante a 01eec14769f616949d7a44244a53ed10.

Consulte a Etapa 1: Explore um diretório workspace para ver um exemplo de listagem de objetos workspace. Consulte GET /api/2.0/workspace/list Para obter detalhes sobre a lista do espaço de trabalho API.

Obter os níveis de permissão do objeto workspace

Esta seção usa o endpoint Get workspace object permission levels para obter os níveis de permissão que um usuário pode ter em um dashboard. Consulte GET /api/workspace/workspace/getpermissionlevels.

No exemplo a seguir, a solicitação inclui parâmetros de caminho de amostra 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 de permissão do objeto workspace

A opção Get workspace object permissions endpoint obtém as permissões atribuídas em um objeto 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 nesse 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 site workspace. A segunda entrada mostra as permissões herdadas pela 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 as permissões do objeto workspace

O senhor pode definir permissões em dashboards usando a opção Set workspace object permissions endpoint. Consulte PUT /api/workspace/workspace/setpermissions.

O exemplo a seguir concede a permissão CAN EDIT a todos os usuários 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 os painéis AI/BI, é possível usar o grupo All account users para atribuir a permissão view a todos os usuários registrados no Databricks account. Consulte Compartilhar um painel publicado.

Atualizar as permissões do objeto workspace

O Update workspace object permissions endpoint executa funções semelhantes às do Set workspace object permissions endpoint. Ele atribui permissões usando uma solicitação PATCH em vez de uma solicitação PUT.

Consulte PATCH /api/workspace/workspace/updatepermissions.


PATCH /api/2.0/permissions/dashboards/01eec14769f616949d7a44244a53ed10

Request body:

{
"access_control_list": [
{
"group_name": "account userS",
"permission_level": "CAN_VIEW"
}
]
}