데이터 소스를 위한 라벨 기반 접근 제어

데이터 소스를 위한 라벨 기반 접근 제어 (LBAC for data sources)

데이터 소스를 위한 라벨 기반 접근 제어(LBAC, Label Based Access Control)는 팀 멤버십에 기반해 데이터 소스 접근 관리를 간소화하고 효율적으로 만들어요. 라벨로 로그나 메트릭을 필터링해 데이터 소스에 대한 세밀한 접근 제어를 제공하며, 관리자가 팀별 접근 규칙을 구성해 사용자가 자신에게 부여된 권한과 관련된 데이터만 조회하도록 보장해요.

출처: 문서

본문

지원되는 데이터 소스

LBAC는 현재 Loki와 Prometheus를 지원해요.

참고: 트레이스(Traces) 지원은 공개 미리보기(public preview) 상태이며 Grafana Cloud에서만 사용할 수 있어요. 팀 LBAC는 Grafana Cloud가 접근할 수 있는 트레이스(Grafana Cloud 스택용으로 구성된 Tempo 데이터 소스 또는 내장 Cloud Traces 데이터베이스를 통해 제공되는 트레이스)에 사용할 수 있어요.

데이터 소스 Grafana Cloud Grafana Enterprise 교차 테넌트 쿼리 지원
Loki GA GA (GEL - Grafana Enterprise Logs 필요)
Prometheus GA GA (GEM - Grafana Enterprise Metrics 필요)
Tempo 공개 미리보기 사용 불가

참고: 엔터프라이즈에서 이 기능은 Grafana Enterprise Metrics(GEM) 또는 Grafana Enterprise Logs(GEL)가 있어야 동작해요.

LBAC를 사용하면 LogQL로 팀 멤버십에 기반한 사용자 접근을 구성할 수 있어요. 각 팀에 설정된 규칙에 따라 로그나 메트릭에 대한 접근을 제어하죠. 이 기능은 Grafana 사용자가 흔히 겪는 두 가지 문제(너무 넓거나 너무 복잡한 접근 관리)를 해결해요.

  • Loki 데이터 소스용 LBAC 설정은 "Loki 데이터 소스용 LBAC 구성"을 참고하세요.
  • Prometheus 데이터 소스용 LBAC 설정은 "Prometheus 데이터 소스용 LBAC 구성"을 참고하세요.
  • Cloud Traces 또는 Tempo 데이터 소스용 설정은 "Tempo용 팀 LBAC 구성"을 참고하세요.

로그, 메트릭, 트레이스 필터링

데이터 소스용 LBAC는 로그, 메트릭, 트레이스에 대한 접근을 필터링할 수 있게 해줘요. 라벨 또는 속성 선택기로 규칙을 정의해 다음을 지정할 수 있어요: 어떤 데이터를 조회할 수 있는지, 어떤 팀이 접근할 수 있는지. 트레이스는 라벨이 아니라 속성(attributes)을 사용하며, LogQL 대신 TraceQL 스타일 속성 선택기에 의존해요. 트레이스 LBAC는 팀 수준에서만 사용할 수 있어요. 이런 유연성 덕분에 팀들이 보안 접근 경계를 유지하면서 같은 데이터 소스를 여러 용도로 사용할 수 있어요.

시작 전에

데이터 소스용 LBAC 메트릭은 백엔드가 Grafana Cloud Metrics(Mimir) 또는 Grafana Enterprise Metrics(GEM)여야 해요. 기능 토글은 필요 없어요.

제한 사항 (Limitations)

데이터 소스용으로 구성된 Cloud Access Policy에서 라벨 선택기를 모두 제거해야 해요. 그렇지 않으면 CAP 라벨 선택기가 데이터 소스용 LBAC 규칙을 덮어써요.

LBAC를 사용하지 않는 데이터 소스와 명확히 분리되도록, LBAC 규칙용으로 단일 데이터 소스를 만드는 것을 권장해요. 모든 팀에 쿼리 권한만 부여하고, 전체 접근이 필요하면 LBAC를 구성하지 않은 별도의 데이터 소스를 만들어 사용하세요.

LBAC 규칙

Grafana는 데이터 소스를 통해 HTTP 요청에 LBAC 규칙을 추가해요. 팀에 여러 규칙을 구성하면 각 규칙은 개별적으로 평가되며, 쿼리 결과에는 규칙 중 하나라도 일치하는 줄이 포함돼요. 데이터 소스 Admin 권한이 있는 사용자만 데이터 소스 권한 탭에서 LBAC 규칙을 편집할 수 있어요. LBAC 규칙 변경은 데이터 소스 권한 편집과 같은 접근 수준을 요구하기 때문이에요.

LBAC 규칙 프로비저닝

프로비저닝 설정에는 Terraform 프로바이더를 사용하는 것을 권장해요. 데이터 소스에 규칙을 구성하는 방법은 프로바이더 문서를 참고하세요.

더 알아보기 (Learn more)