Open Policy Agent (OPA)
마이크로서비스, API, Kubernetes, CI 파이프라인 전반에서 인가·컴플라이언스·설정 규칙을 코드로 일관되게 적용하는 범용 CNCF 졸업 정책 엔진입니다.
- 활발히 유지보수됨
- 재단 지원
- 문서화가 잘 되어 있음
- 관대한 라이선스
개요
Open Policy Agent(OPA)는 정책 결정을 애플리케이션 코드에서 분리해주는 범용 정책 엔진입니다. 정책은 구조화된 데이터에 대한 규칙을 표현하기 위해 만들어진 선언형 쿼리 언어인 Rego로 작성되며, OPA는 요청이나 리소스에 대해 이 정책을 평가해 허용/거부 결정(또는 더 풍부한 구조화된 출력)을 반환하고, 이를 호출한 서비스가 실제로 적용합니다.
OPA는 하나의 애플리케이션에 내장되는 라이브러리가 아니라 독립적인 엔진이기 때문에, 사이드카로 배포되거나, 리소스가 생성되기 전에 규정을 위반하는 리소스를 거부하는 Kubernetes 어드미션 컨트롤러로, 혹은 CI 파이프라인 내부의 정책 검사로 배포되는 경우가 많습니다. 시스템마다 규칙을 다시 구현하는 대신 매우 다른 적용 지점에서 동일한 정책 언어를 재사용할 수 있습니다.
OPA는 여러 서비스와 스택 계층에 걸쳐 정책을 일관되게 적용해야 하는 플랫폼·보안 팀에 적합합니다. 카탈로그에 있는 Casbin이나 OpenFGA와는 다른 계층입니다. 그것들은 애플리케이션이 자체 코드 안에서 권한을 확인하기 위해 직접 내장하는 인가 라이브러리인 반면, OPA는 애플리케이션 코드를 포함한 여러 다른 시스템이 질의할 수 있는 공유 인프라로 실행되는 것이 일반적입니다.
이 카탈로그에 오른 이유
카탈로그 평점: ★★★★☆ (4/5)
The standard general-purpose policy engine (Rego), essential representative project for policy-as-code.
- 기반 프로젝트
- 재단 거버넌스
- 카테고리
- DevOps
- 언어
- Go, Rego
- 라이선스
- Apache-2.0
관련 프로젝트
Kyverno
Apache-2.0별도의 정책 언어 대신 일반 YAML로 정책을 작성하고 적용할 수 있게 해주는 Kubernetes 네이티브 정책 엔진입니다.
활발히 유지보수됨
- DevOps
Cilium
Apache-2.0전통적인 네트워킹 구성 요소를 커널 수준 성능으로 대체하는, eBPF 기반 Kubernetes 네트워킹·보안·관측 가능성 플랫폼입니다.
활발히 유지보수됨
- DevOps
etcd
Apache-2.0Kubernetes 자체가 모든 클러스터 상태를 저장하는 데 사용하는 분산형 일관성 키-값 저장소로, 다른 분산 시스템을 위한 신뢰할 수 있는 구성 요소이기도 합니다.
활발히 유지보수됨
- DevOps
cert-manager
Apache-2.0Kubernetes 애플리케이션의 TLS 인증서 발급, 갱신, 관리를 자동화하여 수동 인증서 처리를 없애줍니다.
활발히 유지보수됨
- DevOps
잘못된 정보를 발견하셨나요? GitHub에서 수정 제안하기