

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# API d'authentification
<a name="v10-Grafana-API-Authentication"></a>

Utilisez l'API d'authentification pour utiliser les clés d'authentification dans un espace de travail Amazon Managed Grafana.

**Note**  
Pour utiliser une API Grafana avec votre espace de travail Amazon Managed Grafana, vous devez disposer d'un jeton de compte de service valide. Vous l'incluez dans le `Authorization` champ de la demande d'API.

## Obtenir des clés d'API
<a name="v10-Grafana-API-Authentication-GetApiKeys"></a>

```
GET /api/auth/keys
```

**Exemple de demande**

```
GET /api/auth/keys HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Paramètre de requête :**
+ **IncludeExpired** — Paramètre booléen (facultatif) qui indique s'il faut inclure les clés expirées dans les résultats renvoyés. La valeur par défaut est `false`.

**Exemple de réponse**

```
HTTP/1.1 200
Content-Type: application/json

[
  {"id": 3,"name": "API","role": "Admin"},
  {"id": 1,"name": "TestAdmin","role": "Admin","expiration": "2019-06-26T10:52:03+03:00"}
]
```

## Créer une clé d'API
<a name="v10-Grafana-API-Authentication-CreateApiKey"></a>

```
POST /api/auth/keys
```

**Exemple de demande**

```
POST /api/auth/keys HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "name": "mykey",
  "role": "Admin",
  "secondsToLive": 86400
}
```

Schéma de corps JSON :
+ **name** — Le nom de la clé.
+ **role** — Définit le niveau d'accès (rôle Grafana) pour la clé. Les valeurs valides sont `Admin`, `Editor` ou `Viewer`.
+ **secondes ToLive** — Définit le délai avant l'expiration de la clé. Il doit être inférieur ou égal à 2592000 (30 jours).

**Exemple de réponse**

```
{"name":"mykey","key":"eyJrIjoiWHZiSWd3NzdCYUZnNUtibE9obUpESmE3bzJYNDRIc0UiLCJuIjoibXlrZXkiLCJpZCI6MX1=","id":1}
```

Statuts d'erreur :
+ **400** — `secondsToLive` est supérieur à 2592000
+ **500** — Impossible de stocker la clé dans la base de données.

## Supprimer la clé d'API
<a name="v10-Grafana-API-Authentication-DeleteApiKey"></a>

```
DELETE /api/auth/keys/:id
```

**Exemple de demande**

```
DELETE /api/auth/keys/3 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Exemple de réponse**

```
HTTP/1.1 200
Content-Type: application/json

{"message":"API key deleted"}
```