API de permissões de fonte de dados - Amazon Managed Grafana

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

API de permissões de fonte de dados

Use a API Data Source Permissions para ativar, desativar, listar, adicionar e remover permissões para fontes de dados.

Você pode definir permissões para um usuário ou uma equipe. As permissões não podem ser definidas para administradores, porque eles sempre têm acesso a tudo.

Os níveis de permissão para o campo de permissão são os seguintes:

  • 1 = Consulta

nota

Para usar uma API Grafana com seu espaço de trabalho Amazon Managed Grafana, você deve ter um token válido da API Grafana. Você inclui isso no Authorization campo na solicitação da API. Para obter informações sobre como criar um token para autenticar suas chamadas de API, consulteAutenticar com tokens.

Habilitar permissões para uma fonte de dados

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

Ativa permissões para a fonte de dados com o ID fornecido. Ninguém, exceto os administradores da organização, pode consultar a fonte de dados até que as permissões tenham sido adicionadas para permitir que determinados usuários ou equipes consultem a fonte de dados.

Exemplo de solicitação

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

Exemplo de resposta

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

Códigos de status:

  • 200 — Criado

  • 400 — As permissões não podem ser habilitadas, consulte o corpo da resposta para obter detalhes.

  • 401 — Não autorizado

  • 403 — Acesso negado

  • 404 — Fonte de dados não encontrada

Desativar permissões para uma fonte de dados

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

Desativa as permissões para a fonte de dados com o ID fornecido. Todas as permissões existentes são removidas e qualquer pessoa pode consultar a fonte de dados.

Exemplo de solicitação

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

Exemplo de resposta

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

Códigos de status:

  • 200 — Ok

  • 400 — As permissões não podem ser desativadas, consulte o corpo da resposta para obter detalhes.

  • 401 — Não autorizado

  • 403 — Acesso negado

  • 404 — Fonte de dados não encontrada

Obter permissões para uma fonte de dados

GET /api/datasources/:id/permissions

Obtém todas as permissões existentes para a fonte de dados com o fornecidoid.

Exemplo de solicitação

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

Exemplo de resposta

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 status:

  • 200 — Ok

  • 401 — Não autorizado

  • 403 — Acesso negado

  • 404 — Fonte de dados não encontrada

Adicionar permissão para uma fonte de dados

POST /api/datasources/:id/permissions

Adiciona uma permissão de usuário para a fonte de dados com o fornecidoid.

Exemplo de solicitação para adicionar permissão de usuário

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

Exemplo de resposta para adicionar uma permissão de usuário

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

Exemplo de solicitação para adicionar permissão de equipe

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

Exemplo de resposta para adicionar uma permissão de equipe

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

Códigos de status:

  • 200 — Ok

  • 400 - A permissão não pode ser adicionada, consulte o corpo da resposta para obter detalhes.

  • 401 — Não autorizado

  • 403 — Acesso negado

  • 404 — Fonte de dados não encontrada

Remover permissão para uma fonte de dados

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

Remove a permissão com o PermissionID fornecido para a fonte de dados com o dado. id

Exemplo de solicitação

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

Exemplo de resposta

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

Códigos de status:

  • 200 — Ok

  • 401 — Não autorizado

  • 403 — Acesso negado

  • 404 — Fonte de dados não encontrada ou permissão não encontrada