API de permisos de fuentes de datos - Amazon Managed Grafana

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

API de permisos de fuentes de datos

Utilice la API de permisos de fuentes de datos para habilitar, deshabilitar, enumerar, añadir y eliminar permisos para las fuentes de datos.

Puede establecer permisos para un usuario o un equipo. Los permisos no se pueden configurar para los administradores, ya que siempre tienen acceso a todo.

Los niveles de permisos del campo de permisos son los siguientes:

  • 1 = Consulta

nota

Para usar una API de Grafana con tu espacio de trabajo de Grafana gestionado por Amazon, debes tener un token de API de Grafana válido. Lo incluyes en el Authorization campo de la solicitud de API. Para obtener información sobre cómo crear un token para autenticar tus llamadas a la API, consultaAutenticarse con fichas.

Habilite los permisos para una fuente de datos

POST /api/datasources/:id/enable-permissions

Habilita los permisos para la fuente de datos con el identificador indicado. Nadie, excepto los administradores de la organización, puede consultar la fuente de datos hasta que se hayan agregado los permisos que permitan a determinados usuarios o equipos consultar la fuente de datos.

Ejemplo de solicitud

POST /api/datasources/1/enable-permissions Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

Ejemplo de respuesta

HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 35 {"message":"Datasource permissions enabled"}

Códigos de estado:

  • 200 — Creado

  • 400 — No se pueden habilitar los permisos; consulta el cuerpo de la respuesta para obtener más información.

  • 401 — No autorizado

  • 403 — Acceso denegado

  • 404 — No se encontró la fuente de datos

Deshabilita los permisos de una fuente de datos

POST /api/datasources/:id/disable-permissions

Inhabilita los permisos para la fuente de datos con el identificador indicado. Se eliminan todos los permisos existentes y cualquier persona puede consultar la fuente de datos.

Ejemplo de solicitud

POST /api/datasources/1/disable-permissions Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk {}

Ejemplo de respuesta

HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 35 {"message":"Datasource permissions disabled"}

Códigos de estado:

  • 200 — Ok

  • 400 — Los permisos no se pueden deshabilitar; consulta el cuerpo de la respuesta para obtener más información.

  • 401 — No autorizado

  • 403 — Acceso denegado

  • 404 — No se encontró la fuente de datos

Obtenga permisos para una fuente de datos

GET /api/datasources/:id/permissions

Obtiene todos los permisos existentes para la fuente de datos con los proporcionadosid.

Ejemplo de solicitud

GET /api/datasources/1/permissions HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

Ejemplo de respuesta

HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 551 { "datasourceId": 1, "enabled": true, "permissions": [ { "id": 1, "datasourceId": 1, "userId": 1, "userLogin": "user", "userEmail": "user@test.com", "userAvatarUrl": "/avatar/46d229b033af06a191ff2267bca9ae", "permission": 1, "permissionName": "Query", "created": "2017-06-20T02:00:00+02:00", "updated": "2017-06-20T02:00:00+02:00", }, { "id": 2, "datasourceId": 1, "teamId": 1, "team": "A Team", "teamAvatarUrl": "/avatar/46d229b033af06a191ff2267bca9ae", "permission": 1, "permissionName": "Query", "created": "2017-06-20T02:00:00+02:00", "updated": "2017-06-20T02:00:00+02:00", } ] }

Códigos de estado:

  • 200 — Ok

  • 401 — No autorizado

  • 403 — Acceso denegado

  • 404 — No se encontró la fuente de datos

Añadir permiso para una fuente de datos

POST /api/datasources/:id/permissions

Añade un permiso de usuario para la fuente de datos junto con el permiso proporcionadoid.

Ejemplo de solicitud para añadir un permiso de usuario

POST /api/datasources/1/permissions Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "userId": 1, "permission": 1 }

Ejemplo de respuesta para añadir un permiso de usuario

HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 35 {"message":"Datasource permission added"}

Ejemplo de solicitud para añadir un permiso a un equipo

POST /api/datasources/1/permissions Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "teamId": 1, "permission": 1 }

Ejemplo de respuesta para añadir un permiso de equipo

HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 35 {"message":"Datasource permission added"}

Códigos de estado:

  • 200 — Ok

  • 400 — No se puede añadir el permiso; consulte el cuerpo de la respuesta para obtener más información.

  • 401 — No autorizado

  • 403 — Acceso denegado

  • 404 — No se encontró la fuente de datos

Eliminar el permiso de una fuente de datos

DELETE /api/datasources/:id/permissions/:permissionId

Elimina el permiso con el ID de permiso proporcionado para la fuente de datos con el dado. id

Ejemplo de solicitud

DELETE /api/datasources/1/permissions/2 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

Ejemplo de respuesta

HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 35 {"message":"Datasource permission removed"}

Códigos de estado:

  • 200 — Ok

  • 401 — No autorizado

  • 403 — Acceso denegado

  • 404 — No se encontró la fuente de datos o no se encontró el permiso