Compartir a través de


Administrar los permisos del panel mediante la API del área de trabajo

Este tutorial muestra cómo administrar los permisos del panel de control mediante la API del área de trabajo. Cada paso incluye una solicitud de ejemplo y una respuesta y explicaciones sobre cómo usar las propiedades y las herramientas de API juntas.

Requisitos previos

Parámetros de la ruta de acceso

Cada solicitud de punto de conexión de este artículo requiere dos parámetros de ruta de acceso, workspace_object_type y workspace_object_id.

  • workspace_object_type: para los paneles de Lakeview, el tipo de objeto es dashboards.
  • workspace_object_id: corresponde al resource_id asociado al panel. Puede usar el GET /api/2.0/workspace/list o GET /api/2.0/workspace/get-status para recuperar ese valor. Es una cadena de 32 caracteres similar a 01eec14769f616949d7a44244a53ed10.

Consulte Paso 1: Explorar un directorio del área de trabajo para obtener un ejemplo de enumeración de objetos de área de trabajo. Consulte GET /api/2.0/workspace/list para obtener más información sobre la API de lista de áreas de trabajo.

Obtención de niveles de permisos de objetos de área de trabajo

Esta sección usa el punto de conexión Obtener niveles de permiso de objetos del área de trabajo para obtener los niveles de permiso que un usuario puede tener en un panel. Consulte GET /api/workspace/workspace/getpermissionlevels.

En el ejemplo siguiente, la solicitud incluye parámetros de ruta de acceso de ejemplo descritos anteriormente. La respuesta incluye los permisos que se pueden aplicar al panel indicado en la solicitud.

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

Obtención de los detalles del permiso del objeto del área de trabajo

El punto de conexión Obtener permisos de objetos del área de trabajo obtiene los permisos asignados a un objeto específico del área de trabajo. Consulte GET /api/workspace/workspace/getpermissions.

En el ejemplo siguiente se muestra una solicitud y respuesta para el panel en el ejemplo anterior. La respuesta incluye detalles sobre el panel y los usuarios y grupos con permisos en el panel. Los permisos de este objeto se han heredado para los dos elementos de la parte access_control_list de la respuesta. En la primera entrada, los permisos se heredan de una carpeta del área de trabajo. En la segunda entrada se muestran los permisos heredados por la pertenencia al 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/"
                ]
        }
]
}
]
}

Establecimiento de permisos de objeto de área de trabajo

Puede establecer permisos en los paneles mediante el punto de conexión Establecer permisos de objetos del área de trabajo. Consulte PUT /api/workspace/workspace/setpermissions.

En el ejemplo siguiente se concede permiso CAN EDIT a todos los usuarios del área de trabajo para workspace_object_id en la solicitud PUT.

PUT /api/2.0/permissions/dashboards/01eec14769f616949d7a44244a53ed10

Request body:

{
"access_control_list": [
{
        "group_name": "users",
        "permission_level": "CAN_EDIT"
}
]
}

En el caso de los paneles de Lakeview, use el grupo All account users para asignar permisos de vista a todos los usuarios registrados en la cuenta de Azure Databricks. Consulte Compartir un panel publicado.

Actualización de los permisos de objeto del área de trabajo

El punto de conexión Actualizar permisos de objetos del área de trabajo realiza funciones similares a las del punto de conexión Establecer permisos de objetos del área de trabajo. Asigna permisos mediante una solicitud de PATCH en lugar de una solicitud 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"
    }
  ]
}