Partilhar via


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

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

Pré-requisitos

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 AI/BI, o tipo de objeto é dashboards.
  • workspace_object_id: Isso corresponde ao resource_id associado 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 32 caracteres semelhante a 01eec14769f616949d7a44244a53ed10.

Consulte Etapa 1: Explorar um diretório de espaço de trabalho para obter um exemplo de listagem de objetos de espaço de trabalho. Consulte GET /api/2.0/workspace/list para obter detalhes sobre a API da Lista de Espaços de Trabalho.

Obter níveis de permissão do objeto do espaço de trabalho

Esta seção usa o ponto de extremidade Get workspace object permission levels para obter os níveis de permissão que um utilizador pode ter num 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 das permissões de objeto do espaço de trabalho

O endpoint Obter permissões de objeto de espaço de trabalho obtém as permissões atribuídas a um objeto específico de espaço de trabalho. 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 da access_control_list resposta. Na primeira entrada, as permissões são herdadas de uma pasta no espaço de trabalho. 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 permissões de objeto de espaço de trabalho

Você pode definir permissões em dashboards usando o endpoint Definir permissões de objeto de espaço de trabalho. Consulte PUT /api/workspace/workspace/setpermissions.

O exemplo a seguir dá permissão CAN EDIT a todos os usuários do espaço de trabalho para a workspace_object_id 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, você pode usar o grupo All account users para atribuir permissão de exibição a todos os usuários registrados na conta do Azure Databricks. Consulte Compartilhar um painel publicado.

Atualizar permissões de objeto de espaço de trabalho

O Update workspace object permissions endpoint executa funções de forma semelhante ao Definir Permissões de Objeto de Espaço de Trabalho endpoint. Ele atribui permissões usando uma PATCH solicitação em vez de uma PUT solicitação.

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"
    }
  ]
}