

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# API für Datenquellenberechtigungen
<a name="Grafana-API-DatasourcePermissions"></a>

Verwenden Sie die API für Datenquellenberechtigungen, um Berechtigungen für Datenquellen zu aktivieren, zu deaktivieren, aufzulisten, hinzuzufügen und zu entfernen. 

Sie können Berechtigungen für einen Benutzer oder ein Team festlegen. Für Administratoren können keine Berechtigungen festgelegt werden, da sie immer Zugriff auf alles haben.

Die Berechtigungsstufen für das Berechtigungsfeld lauten wie folgt:
+ 1 = Abfrage

**Anmerkung**  
Um eine Grafana-API mit Ihrem Amazon Managed Grafana-Workspace verwenden zu können, benötigen Sie ein gültiges Grafana-API-Token. Sie fügen dies in das `Authorization` Feld in der API-Anfrage ein. Informationen zum Erstellen eines Tokens zur Authentifizierung Ihrer API-Aufrufe finden Sie unter[Authentifizieren Sie sich mit Tokens](authenticating-grafana-apis.md).

## Aktivieren Sie Berechtigungen für eine Datenquelle
<a name="Grafana-API-DatasourcePermissions-enable"></a>

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

Aktiviert Berechtigungen für die Datenquelle mit der angegebenen ID. Niemand außer Organisationsadministratoren kann die Datenquelle abfragen, bis Berechtigungen hinzugefügt wurden, die es bestimmten Benutzern oder Teams ermöglichen, die Datenquelle abzufragen.

**Beispielanforderung**

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

**Beispielantwort**

```
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 35

{"message":"Datasource permissions enabled"}
```

Statuscodes:
+ **200** — Erstellt
+ **400** — Berechtigungen können nicht aktiviert werden. Einzelheiten finden Sie im Antworttext.
+ **401** — Nicht autorisiert
+ **403** — Zugriff verweigert
+ **404** — Datenquelle nicht gefunden

## Deaktivieren Sie die Berechtigungen für eine Datenquelle
<a name="Grafana-API-DatasourcePermissions-disable"></a>

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

Deaktiviert die Berechtigungen für die Datenquelle mit der angegebenen ID. Alle vorhandenen Berechtigungen werden entfernt und jeder kann die Datenquelle abfragen.

**Beispielanforderung**

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

{}
```

**Beispielantwort**

```
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 35

{"message":"Datasource permissions disabled"}
```

Statuscodes:
+ **200** — In Ordnung
+ **400** — Berechtigungen können nicht deaktiviert werden. Einzelheiten finden Sie im Antworttext.
+ **401** — Nicht autorisiert
+ **403** — Zugriff verweigert
+ **404** — Datenquelle nicht gefunden

## Holen Sie sich Berechtigungen für eine Datenquelle
<a name="Grafana-API-DatasourcePermissions-get"></a>

```
GET /api/datasources/:id/permissions
```

Ruft alle vorhandenen Berechtigungen für die Datenquelle mit den angegebenen Werten ab`id`.

**Beispielanforderung**

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

**Beispielantwort**

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

Statuscodes:
+ **200** — In Ordnung
+ **401** — Nicht autorisiert
+ **403** — Zugriff verweigert
+ **404** — Datenquelle nicht gefunden

## Fügen Sie eine Berechtigung für eine Datenquelle hinzu
<a name="Grafana-API-DatasourcePermissions-add"></a>

```
POST /api/datasources/:id/permissions
```

Fügt eine Benutzerberechtigung für die angegebene Datenquelle hinzu`id`.

**Beispiel für eine Anfrage zum Hinzufügen von Benutzerberechtigungen**

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

{
  "userId": 1,
  "permission": 1
}
```

**Beispielantwort für das Hinzufügen einer Benutzerberechtigung**

```
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 35

{"message":"Datasource permission added"}
```

**Beispiel für eine Anfrage zum Hinzufügen einer Teamberechtigung**

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

{
  "teamId": 1,
  "permission": 1
}
```

**Beispielantwort für das Hinzufügen einer Teamberechtigung**

```
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 35

{"message":"Datasource permission added"}
```

Statuscodes:
+ **200** — In Ordnung
+ **400** — Die Berechtigung kann nicht hinzugefügt werden. Weitere Informationen finden Sie im Antworttext.
+ **401** — Nicht autorisiert
+ **403** — Zugriff verweigert
+ **404** — Datenquelle nicht gefunden

## Entfernen Sie die Berechtigung für eine Datenquelle
<a name="Grafana-API-DatasourcePermissions-remove"></a>

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

Entfernt die Berechtigung mit der angegebenen PermissionId für die Datenquelle mit der angegebenen. `id`

**Beispielanforderung**

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

**Beispielantwort**

```
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 35

{"message":"Datasource permission removed"}
```

Statuscodes:
+ **200** — In Ordnung
+ **401** — Nicht autorisiert
+ **403** — Zugriff verweigert
+ **404** — Die Datenquelle wurde nicht gefunden oder die Berechtigung wurde nicht gefunden