HTTP API 인증 옵션
HTTP API 인증 옵션
Grafana HTTP API에 요청을 보낼 때 사용하는 인증 옵션을 소개하는 문서예요. 온프레미스(Grafana OSS/Enterprise)에서는 기본 인증(basic auth)이나 서비스 계정 토큰(service account token)을 사용하고, Grafana Cloud에서는 서비스 계정 토큰을 사용해요. 조직을 지정하는 X-Grafana-Org-Id 헤더도 함께 다룹니다.
인증 방식에 따른 예시 코드를 그대로 확인하면서, 자신의 환경에 맞는 인증 방법을 선택해 보세요.
출처: 문서
본문
인증 옵션은 Grafana 온프레미스를 사용하는지, 아니면 Grafana Cloud를 사용하는지에 따라 달라져요.
조직을 설정하려면 X-Grafana-Org-Id 헤더 섹션을 참고하세요.
Grafana OSS/Enterprise의 인증 옵션
HTTP API 요청은 기본 인증(basic authentication) 또는 서비스 계정 토큰(service account token)으로 인증할 수 있어요.
기본 인증 (Basic auth)
이 옵션은 Grafana 온프레미스에서만 사용할 수 있어요.
기본 인증은 기본적으로 활성화되어 있으며, 표준 basic auth를 통해 HTTP 요청을 인증할 수 있어요. 기본 인증은 LDAP 사용자도 인증합니다.
예를 들어:
curl http://admin:admin@localhost:3000/api/org
{"id":1,"name":"Main Org."}
서비스 계정 토큰 (Service account token)
서비스 계정 토큰을 만들려면:
- 왼쪽 메뉴에서 Administration으로 이동하세요.
- Users and access > Service Accounts를 클릭하세요.
서비스 계정 토큰 사용 방법에 대한 자세한 내용은 Service Accounts 문서를 참고하세요.
모든 요청에서 Authorization 헤더에 토큰을 넣어 사용합니다. 예를 들어:
GET http://your.grafana.com/api/dashboards/db/mydash HTTP/1.1
Accept: application/json
Authorization: Bearer <SERVI...KEN>
Authorization 헤더 값은 Bearer <YOUR_SERVICE_ACCOUNT_TOKEN> 형식이어야 해요.
Grafana Cloud의 인증 옵션
Grafana Cloud 인스턴스가 제공하는 HTTP API를 사용하려면 서비스 계정 토큰으로 요청을 인증해야 해요.
서비스 계정 토큰에 접근하거나 만들려면:
- 왼쪽 메뉴에서 Administration으로 이동하세요.
- Users and access > Service Accounts를 클릭하세요.
서비스 계정 생성, 권한 부여, 토큰 추가에 대한 자세한 내용은 Service Accounts를 참고하세요.
Grafana 인스턴스에 보내는 모든 요청의 Authorization 헤더에 서비스 계정 토큰을 포함하세요.
GET http://your.grafana.com/api/dashboards/db/mydash HTTP/1.1
Accept: application/json
Authorization: Bearer <SERVI...KEN>
HTTP API에 대한 요청은 Authorization 헤더로 인증됩니다.
Authorization: Bearer *** ACCOUNT TOKEN>
X-Grafana-Org-Id 헤더
X-Grafana-Org-Id는 동작이 적용되는 조직을 지정하는 선택 속성(optional property)이에요. 설정하지 않으면 생성된 키는 현재 컨텍스트 조직에 속하게 됩니다. admin 관련 요청을 제외한 모든 요청에서 이 헤더를 사용하세요.
예시 요청:
GET /api/org/ HTTP/1.1
Accept: application/json
Content-Type: application/json
X-Grafana-Org-Id: 2
Authorization: Bearer <SERVI...KEN>