레고 개요 - AWS 규범적 지침

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

레고 개요

Rego는 범용 정책 언어이므로 스택의 모든 계층과 모든 도메인에서 작동합니다. Rego의 주요 목적은 JSON/YAML 입력 및 데이터를 수용하여 인프라 리소스, ID 및 운영에 대한 정책 기반 결정을 내리는 것입니다. Rego를 사용하면 언어를 변경하거나 확장할 필요 없이 스택 또는 도메인의 모든 계층에 대한 정책을 작성할 수 있습니다. Rego가 내릴 수 있는 결정의 몇 가지 예는 다음과 같습니다.

  • 이 API 요청이 허용되나요 아니면 거부되나요?

  • 이 애플리케이션의 백업 서버 호스트 이름은 무엇입니까?

  • 제안된 인프라 변경의 위험 점수는 얼마입니까?

  • 고가용성을 위해 이 컨테이너를 어떤 클러스터에 배포해야 합니까?

  • 이 마이크로서비스에 사용해야 하는 라우팅 정보는 무엇입니까?

이러한 질문에 답하기 위해 Rego는 이러한 결정을 내리는 방법에 대한 기본 철학을 사용합니다. Rego에서 정책 초안을 작성할 때의 두 가지 주요 원칙은 다음과 같습니다.

  • 모든 리소스, ID 또는 작업을 JSON 또는 YAML 데이터로 표시할 수 있습니다.

  • 정책은 데이터에 적용되는 로직입니다.

Rego는 JSON/YAML 데이터 입력 평가 방법에 대한 로직을 정의하여 소프트웨어 시스템이 권한 부여 결정을 내리는 데 도움이 됩니다. C, Java, Go, Python과 같은 프로그래밍 언어가 이 문제에 대한 일반적인 해결책이지만 Rego는 시스템을 나타내는 데이터와 입력, 그리고 이 정보를 사용하여 정책을 결정하는 로직에 초점을 맞추도록 설계되었습니다.