거버넌스 폴리시
거버넌스 폴리시 (Governance Policies)
컨트롤을 폴리시로 묶고 프로젝트 전체에서 강제하는 방법을 설명하는 문서예요. 이 문서에서는 폴리시가 어떻게 작동하는지, 만들고 프로젝트를 할당하는 방법, 기본 폴리시 상속, 그리고 평가가 언제 실행되는지 정리해 볼게요.
출처: 문서
본문
폴리시(policy) 는 단일 컴플라이언스 요구사항을 나타내는 컨트롤들의 명명된 묶음이에요. 예를 들어 내부 AI 표준이나 EU AI Act, NIST AI RMF 같은 외부 프레임워크가 여기에 해당돼요. Low 중요도보다 높은 모든 컨트롤이 통과하면 폴리시가 충족(met) 돼요.
폴리시는 어떻게 작동하나요?
- 폴리시에는 하나 이상의 컨트롤이 들어 있어요.
- 각 프로젝트는 최대 하나의 폴리시에 속해요. 하나의 폴리시가 여러 프로젝트를 거버넌스할 수 있어요.
- 폴리시에 할당된 모든 프로젝트는 그 폴리시의 모든 컨트롤과, 기본 폴리시에서 상속받은 모든 컨트롤에 대해 평가돼요.
- 프로젝트에 대해 Low 중요도보다 높은 모든 컨트롤이
PASS로 결정되면 폴리시가 충족돼요. Low 중요도 컨트롤은FAIL,ERROR,NO_DATA로 결정돼도 폴리시를 실패시키지 않아요.
프로젝트는 폴리시 하나에만 속할 수 있으니, 할당하는 폴리시는 그 프로젝트가 충족해야 할 요구사항의 완전한 집합을 나타내야 해요.
폴리시 만들기
- 조직의 Governance 페이지로 이동해요.
- New Policy를 클릭해요.
- Name(이름)과 선택적인 Description(설명)을 입력해요.
- 이 폴리시가 강제할 컨트롤을 추가해요.
- 폴리시를 저장해요.
프로젝트 할당
폴리시는 프로젝트가 할당되기 전까지 효과가 없어요. 폴리시에서 거버넌스할 프로젝트를 할당해요. 할당된 각 프로젝트는 이후 폴리시의 컨트롤로 지속적으로 평가돼요.
프로젝트를 다른 폴리시로 옮기려면 그냥 다시 할당하면 돼요. 프로젝트는 항상 정확히 하나의 폴리시에 속하거나 아무 폴리시에도 속하지 않아요.
기본 폴리시 (Base policies)
폴리시는 기본 폴리시를 확장(extend) 하고 그 컨트롤을 상속받을 수 있어요. 공유 요구사항을 조직 전반의 기준(baseline)에 한 번 정의한 뒤, 여러 팀이나 애플리케이션 폴리시에 적용할 수 있어요.
:::info "기본 폴리시"를 만드는 별도의 버튼은 없어요. 다른 폴리시가 어떤 폴리시를 확장하면 그 폴리시가 자동으로 기본 폴리시가 돼요. :::
기본 폴리시를 확장하려면:
- 공유 컨트롤을 상속받을 폴리시를 열거나 만들어요.
- 페이지 제목 근처의 Extend base policy를 클릭해요.
- 기본으로 사용할 폴리시를 선택해요.
- Save를 클릭해요.
확장된 폴리시는 Base policy 배지를 받아요.
- 상속은 실시간이에요. 기본 폴리시에서 컨트롤을 추가하거나 제거하면, 그 폴리시를 확장하는 모든 폴리시의 유효 컨트롤 집합이 즉시 바뀌어요. 각 확장 폴리시의 프로젝트는 다음 평가 때 변경 사항을 반영해요.
- 상속은 엄격히 덧셈 방식이에요. 확장 폴리시는 항상 상속받은 모든 컨트롤(앱에서 via ‹base policy› 로 표시)과 자신의 컨트롤을 함께 가져요. 상속받은 컨트롤을 선택 해제할 수는 없어요.
- 계층은 두 단계예요. 이미 다른 폴리시를 확장하는 폴리시는 기본으로 선택될 수 없어요. 기본 폴리시가 다른 폴리시를 확장할 수도 없어요.
- 기본 폴리시는 평범한 폴리시예요. 여전히 자체 프로젝트를 직접 할당받을 수 있고, 그 페이지는 해당 프로젝트에 대해서만 보고해요.
- 다른 폴리시가 확장하는 폴리시를 삭제하려면, 먼저 확장 폴리시를 제거하거나 함께 삭제해야 해요.
공개 API를 통해 폴리시의 controls 필드는 상속받은 것을 포함해 프로젝트에 적용되는 모든 컨트롤을 나열하고, 읽기 전용 isBasePolicy 플래그는 다른 폴리시가 이를 확장하는지 알려줘요.
커스텀 에이전트 스킬 (Custom Agent Skills)
거버넌스 폴리시는 코딩 에이전트를 위한 거버넌스 Custom Agent Skill을 정의할 수도 있어요. 폴리시에 스킬을 한 번 정의하면, 그 폴리시에 할당된 모든 프로젝트가 프로젝트 범위의 /skills.git 엔드포인트에서 동일한 skills/governance/SKILL.md 콘텐츠를 받아요.
이를 통해 Claude Code, Codex, Cursor 등 다양한 코딩 에이전트에 팀이 따라야 할 폴리시별 지침을 같은 방식으로 줄 수 있어요. 전체 설정은 Custom Agent Skills로 온보딩 표준화 문서를 참고해요.
평가가 언제 실행되나요?
프로젝트의 컨트롤은 해당 폴리시에 대해 평가돼요:
| 트리거 | 설명 |
|---|---|
| 일별 스케줄 | 모든 거버넌스 대상 프로젝트가 하루에 한 번 자동으로 재평가돼요. |
| 컨트롤 재평가 | Governance 페이지에서 폴리시에 대한 평가를 수동으로 다시 실행해요. |
| 배포 게이트 | deepeval CLI 또는 공개 API로 CI/CD에서 트리거돼요. CI/CD에서 배포 게이트 걸기를 참고해요. |
각 평가는 이력 레코드를 남기기 때문에, 프로젝트의 컴플라이언스 상태가 시간에 따라 어떻게 변하는지 추적할 수 있어요.
다음 단계
- CI/CD에서 배포 게이트 걸기 — 폴리시로 컴플라이언스에 미달하는 배포를 막아요
- 컨트롤 — 폴리시 안의 요구사항을 설정해요
- Custom Agent Skills 가이드 — 폴리시별 거버넌스 지침을 코딩 에이전트에 배포해요
- AI 거버넌스 소개 — 폴리시, 컨트롤, 게이팅이 어떻게 어우러지는지 배워요