데이터 소스 LBAC 규칙 API
데이터 소스 LBAC 규칙 API
LBAC(Label-Based Access Control, 레이블 기반 접근 제어) 규칙은 팀에 대해 설정할 수 있어요.
⚠️ Grafana 13부터
/api엔드포인트가/apis라우트로 대체되어 더 이상 사용되지 않게(deprecated) 되고 있어요. Grafana가 기존 API를 마이그레이션하는 동안 현재 사용 중인 레거시 API와 정확히 일치하지 않을 수 있어요. 이 변경으로 현재 설정이 중단되거나 깨지지는 않아요. 레거시 API는 비활성화되지 않으며 완전히 접근·사용 가능하지만,/api라우트는 더 이상 업데이트되지 않아요. 자세한 내용은 "Grafana의 새 API 구조" 문서를 참조해요.
출처: 문서
본문
데이터 소스의 LBAC 규칙 가져오기
GET /api/datasources/uid/:uid/lbac/teams
주어진 uid를 가진 데이터 소스의 모든 기존 LBAC 규칙을 가져와요.
필요한 권한:
| Action | Scope |
|---|---|
| datasources:read | datasources:datasources:uid:datasources:uid:my_datasource (단일 데이터 소스) |
예제
예제 요청:
GET /api/datasources/uid/my_datasource/lbac/teams HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVI...>
예제 응답:
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 131
{
"rules": [
{
"teamUId": "fdnd1pf4m9sxvc",
"rules": [
"{ service_name=\"bigquery-sync-mysql\" }"
]
},
{
"teamUid": "dfed1p2m9sxvfc",
"rules": [
"{ service_name=\"api\" }"
]
}
]
}
데이터 소스의 LBAC 규칙 업데이트하기
PUT /api/datasources/uid/:uid/lbac/teams
주어진 uid를 가진 데이터 소스에 연결된 팀의 LBAC 규칙을 업데이트해요. 여기서 팀 목록과 각 팀의 규칙을 제출해요. 목록에서 팀을 삭제하면 해당 팀의 LBAC 규칙이 제거돼요. 업데이트할 모든 팀과 규칙을 제출해야 하며, 팀의 규칙을 제거하려면 해당 팀 없이 현재 규칙 목록을 제출해야 해요.
필요한 권한:
| Action | Scope |
|---|---|
| datasources:write | datasources:datasources:uid:datasources:uid:my_datasource (단일 데이터 소스) |
| datasources.permissions:write | datasources:datasources:uid:datasources:uid:my_datasource (단일 데이터 소스) |
예제
예제 요청:
PUT /api/datasources/uid/my_datasource/lbac/teams
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVI...KEN>
{
"rules": [
{
"teamUId": "fdnd1pf4m9sxvc",
"rules": [
"{ service_name=\"bigquery-sync-mysql\" }"
]
},
{
"teamUid": "dfed1p2m9sxvfc",
"rules": [
"{ service_name=\"api\" }"
]
}
]
}
예제 응답:
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 35
{
"id": 1,
"message": "Data source LBAC rules updated",
"name": "loki",
"rules": [
{
"teamUId": "fdnd1pf4m9sxvc",
"rules": [
"{ service_name=\"bigquery-sync-mysql\" }"
]
},
{
"teamUid": "dfed1p2m9sxvfc",
"rules": [
"{ service_name=\"api\" }"
]
}
],
"uid": "ee1nm1t7spog0e",
}
더 알아보기 (Learn more)
- 데이터 소스 관리 API
- 레이블 기반 접근 제어 (LBAC)
- Grafana의 새 API 구조