Open Policy Agent (OPA)
마이크로서비스, API, Kubernetes, CI 파이프라인 전반에서 인가·컴플라이언스·설정 규칙을 코드로 일관되게 적용하는 범용 CNCF 졸업 정책 엔진입니다.
개요
Open Policy Agent(OPA)는 정책 결정을 애플리케이션 코드에서 분리해주는 범용 정책 엔진입니다. 정책은 구조화된 데이터에 대한 규칙을 표현하기 위해 만들어진 선언형 쿼리 언어인 Rego로 작성되며, OPA는 요청이나 리소스에 대해 이 정책을 평가해 허용/거부 결정(또는 더 풍부한 구조화된 출력)을 반환하고, 이를 호출한 서비스가 실제로 적용합니다.
OPA는 하나의 애플리케이션에 내장되는 라이브러리가 아니라 독립적인 엔진이기 때문에, 사이드카로 배포되거나, 리소스가 생성되기 전에 규정을 위반하는 리소스를 거부하는 Kubernetes 어드미션 컨트롤러로, 혹은 CI 파이프라인 내부의 정책 검사로 배포되는 경우가 많습니다. 시스템마다 규칙을 다시 구현하는 대신 매우 다른 적용 지점에서 동일한 정책 언어를 재사용할 수 있습니다.
OPA는 여러 서비스와 스택 계층에 걸쳐 정책을 일관되게 적용해야 하는 플랫폼·보안 팀에 적합합니다. 카탈로그에 있는 Casbin이나 OpenFGA와는 다른 계층입니다. 그것들은 애플리케이션이 자체 코드 안에서 권한을 확인하기 위해 직접 내장하는 인가 라이브러리인 반면, OPA는 애플리케이션 코드를 포함한 여러 다른 시스템이 질의할 수 있는 공유 인프라로 실행되는 것이 일반적입니다.
- 카테고리
- DevOps
- 언어
- Go, Rego
- 라이선스
- Apache-2.0
관련 프로젝트
Kyverno
Apache-2.0별도의 정책 언어 대신 일반 YAML로 정책을 작성하고 적용할 수 있게 해주는 Kubernetes 네이티브 정책 엔진입니다.
- DevOps
Ansible
GPL-3.0구성 관리, 배포, 오케스트레이션을 위한 극도로 단순한 IT 자동화 플랫폼입니다.
- DevOps
Argo CD
Apache-2.0선도적인 Kubernetes GitOps 지속적 배포 도구로, 클러스터 상태를 Git에 정의된 내용과 일치하도록 자동으로 동기화합니다.
- DevOps
Caddy
Apache-2.0기본적으로 자동 HTTPS를 지원하는 현대적인 웹 서버·리버스 프록시로, 전통적인 웹 서버 설정에 비해 단순함을 중시해 만들어졌습니다.
- DevOps
잘못된 정보를 발견하셨나요? GitHub에서 수정 제안하기