Aller au contenu principal

Gérer les autorisations de tableau de bord à l'aide de l'API Workspace

Cette page explique comment gérer les autorisations des tableaux de bord à l'aide de l'API Workspace. 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. Pour gérer les autorisations via l'interface utilisateur, consultez Partager un tableau de bord.

Prérequis

Paramètres de chemin

Chaque requête Endpoint de cet article nécessite deux paramètres de chemin, workspace_object_type et workspace_object_id.

  • workspace_object_type ** ** : Pour les tableaux de bord AI/BI, le type d’objet dashboards est.
  • workspace_object_id : cela correspond au resource_id associé au tableau de bord. Vous pouvez utiliser l'API 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 de workspace pour un exemple de liste d'objets de workspace. Consultez GET /api/2.0/workspace/list pour plus de détails sur l'API de liste de Workspace.

Obtenir les niveaux d'autorisation des objets Workspace

Cette section utilise l'endpoint Obtenir les niveaux d'autorisation des objets de workspace pour obtenir les niveaux d'autorisation qu'un utilisateur peut avoir sur un tableau de bord. Voir GET /api/workspace/workspace/getpermissionlevels.

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

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 des autorisations d'objet de workspace

L'Endpoint Obtenir les autorisations d'objet de Workspace obtient les autorisations attribuées sur un objet de Workspace spécifique. Consultez GET /api/workspace/workspace/getpermissions.

L'exemple suivant montre une requête et une réponse pour le tableau de bord de l'exemple précédent. La réponse comprend des détails sur le tableau de bord, ainsi que 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 dans la portion access_control_list de la réponse. Dans la première entrée, les autorisations sont héritées d'un dossier du Workspace. La deuxième entrée indique 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 les autorisations d'objet de Workspace

Vous pouvez définir les autorisations sur les tableaux de bord à l'aide de l'Endpoint Définir les autorisations d'objet de Workspace . Consultez PUT /api/workspace/workspace/setpermissions.

L'exemple suivant donne l'autorisation CAN EDIT à tous les utilisateurs du workspace pour le workspace_object_id dans la requête 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 auprès du compte Databricks. Consultez Partager un tableau de bord publié.

Mettre à jour les autorisations d'objet du Workspace

L'Endpoint Mettre à jour les autorisations d'objet de Workspace fonctionne de manière similaire à l'Endpoint Définir les autorisations d'objet de Workspace . Elle attribue des autorisations en utilisant une requête PATCH au lieu d'une requête 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"
}
]
}