Partager via


Gérer les autorisations de tableau de bord en utilisant l’API Espace de travail

Ce tutoriel montre comment gérer les autorisations de tableau de bord à l’aide de l’API Espace de travail. Chaque étape comprend un exemple de requête et de réponse ainsi que des explications sur la façon d’utiliser ensemble les outils et les propriétés de l’API.

Prérequis

Paramètres de chemin d’accès

Chaque demande de point de terminaison de cet article nécessite deux paramètres de chemin d’accès, workspace_object_type et workspace_object_id.

  • workspace_object_type : Pour les tableaux de bord AI/BI, le type d’objet est dashboards.
  • workspace_object_id : cela correspond au resource_id associé au tableau de bord. Vous pouvez utiliser GET /api/2.0/workspace/list ou GET /api/2.0/workspace/get-status pour récupérer cette valeur. Il s’agit d’une chaîne de 32 caractères similaire à 01eec14769f616949d7a44244a53ed10.

Consultez Étape 1 : Explorer un répertoire d’espace de travail pour obtenir un exemple de liste d’objets d’espace de travail. Consultez GET /api/2.0/workspace/list pour plus d’informations sur l’API liste d’espaces de travail.

Obtenir les niveaux d’autorisation de l’objet d’espace de travail

Cette section utilise le point de terminaison Obtenir les niveaux d’autorisation de l’objet d’espace de travail pour obtenir les niveaux d’autorisation qu’un utilisateur peut avoir sur un tableau de bord. Consultez GET /api/workspace/workspace/getpermissionlevels.

Dans l’exemple suivant, la requête inclut des exemples de paramètres de chemin d’accès décrits ci-dessus. La réponse inclut les autorisations qui peuvent être appliquées au tableau de bord indiqué dans la demande.

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

Obtenir les détails de l’autorisation de l’objet d’espace de travail

Le point de terminaison Obtenir les autorisations d’objet d’espace de travail obtient les autorisations attribuées sur un objet d’espace de travail spécifique. Consultez GET /api/workspace/workspace/getpermissions.

L’exemple suivant montre une demande et une réponse pour le tableau de bord dans l’exemple précédent. La réponse inclut des détails sur le tableau de bord et les utilisateurs et les groupes disposant d’autorisations sur le tableau de bord. Les autorisations sur cet objet ont été héritées pour les deux éléments de la partie access_control_list de la réponse. Dans la première entrée, les autorisations sont héritées d’un dossier dans l’espace de travail. La deuxième entrée affiche les autorisations héritées par l’appartenance au groupe, 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/"
                ]
        }
]
}
]
}

Définir des autorisations d’objet d’espace de travail

Vous pouvez définir des autorisations sur des tableaux de bord à l’aide du point de terminaison Définir des autorisations d’objet d’espace de travail. Consultez PUT /api/workspace/workspace/setpermissions.

L’exemple suivant donne l’autorisation CAN EDIT à tous les utilisateurs de l’espace de travail pour la workspace_object_id dans la demande PUT.

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

Request body:

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

Pour les tableaux de bord AI/BI, vous pouvez utiliser le groupe All account users pour attribuer l’autorisation d’affichage à tous les utilisateurs enregistrés dans le compte Azure Databricks. Consultez Partager un tableau de bord publié.

Mettre à jour les autorisations d’objet de l’espace de travail

Le point de terminaison Mettre à jour les autorisations d’objet de l’espace de travail effectue des fonctions de la même façon que le point de terminaison Définir les autorisations d’objet de l’espace de travail. Il attribue des autorisations à l’aide d’une demande PATCH au lieu d’une demande PUT.

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