API per le autorizzazioni delle origini dati - Grafana gestito da Amazon

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

API per le autorizzazioni delle origini dati

Utilizza l'API Data Source Permissions per abilitare, disabilitare, elencare, aggiungere e rimuovere le autorizzazioni per le fonti di dati.

Puoi impostare le autorizzazioni per un utente o un team. Le autorizzazioni non possono essere impostate per gli amministratori, perché hanno sempre accesso a tutto.

I livelli di autorizzazione per il campo di autorizzazione sono i seguenti:

  • 1 = Interrogazione

Nota

Per utilizzare un'API Grafana con il tuo spazio di lavoro Amazon Managed Grafana, devi disporre di un token API Grafana valido. Lo includi nel Authorization campo della richiesta API. Per informazioni su come creare un token per autenticare le chiamate API, consultaAutenticazione con token.

Abilita le autorizzazioni per una fonte di dati

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

Abilita le autorizzazioni per l'origine dati con l'ID specificato. Nessuno tranne gli amministratori di sistema può interrogare l'origine dati finché non sono state aggiunte le autorizzazioni per consentire a determinati utenti o team di interrogare l'origine dati.

Richiesta di esempio

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

Example response

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

Codici di stato:

  • 200 — Creato

  • 400 - Le autorizzazioni non possono essere abilitate, consulta il corpo della risposta per i dettagli.

  • 401 — Non autorizzato

  • 403 — Accesso negato

  • 404 — Fonte dati non trovata

Disattiva le autorizzazioni per un'origine dati

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

Disattiva le autorizzazioni per l'origine dati con l'ID specificato. Tutte le autorizzazioni esistenti vengono rimosse e chiunque può interrogare l'origine dati.

Richiesta di esempio

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

Example response

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

Codici di stato:

  • 200 — Ok

  • 400 — Le autorizzazioni non possono essere disabilitate, consulta il corpo della risposta per i dettagli.

  • 401 — Non autorizzato

  • 403 — Accesso negato

  • 404 — Fonte dati non trovata

Ottieni le autorizzazioni per una fonte di dati

GET /api/datasources/:id/permissions

Ottiene tutte le autorizzazioni esistenti per l'origine dati con il dato. id

Richiesta di esempio

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

Example response

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

Codici di stato:

  • 200 — Ok

  • 401 — Non autorizzato

  • 403 — Accesso negato

  • 404 — Fonte dati non trovata

Aggiungere l'autorizzazione per un'origine dati

POST /api/datasources/:id/permissions

Aggiunge un'autorizzazione utente per l'origine dati con quella specificataid.

Esempio di richiesta per aggiungere l'autorizzazione dell'utente

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

Esempio di risposta per l'aggiunta di un'autorizzazione utente

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

Esempio di richiesta per aggiungere l'autorizzazione del team

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

Esempio di risposta per l'aggiunta di un'autorizzazione al team

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

Codici di stato:

  • 200 — Ok

  • 400 — L'autorizzazione non può essere aggiunta, vedi il corpo della risposta per i dettagli.

  • 401 — Non autorizzato

  • 403 — Accesso negato

  • 404 — Fonte dati non trovata

Rimuovere l'autorizzazione per un'origine dati

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

Rimuove l'autorizzazione con il PermissionID specificato per l'origine dati con il dato dato. id

Richiesta di esempio

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

Example response

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

Codici di stato:

  • 200 — Ok

  • 401 — Non autorizzato

  • 403 — Accesso negato

  • 404 — Origine dati non trovata o autorizzazione non trovata