승인 정책
에이전트 작업에 대한 워크스페이스 범위의 승인 정책을 정의하여 민감한 파일 변경을 제한하고 위험한 작업 전에 검토를 요구합니다.
승인 정책은 에이전트 작업이 적용되기 전에 수동 검토가 필요한 시점을 제어하는 워크스페이스 수준의 규칙입니다. 이들은 작업 유형(예: 풀 리퀘스트 또는 패치)을 승인 요구사항에 매핑하며, 민감한 파일과 구성을 보호하기 위한 선택적 경로 기반 필터링이 있습니다.
승인 정책이 필요한 이유
기본적으로 작업에 할당된 에이전트는 자율적으로 작동합니다 — 허가를 기다리지 않고 풀 리퀘스트를 생성하고, 변경사항을 푸시하고, 새 이슈를 엽니다. 승인 정책을 통해 고위험 작업에 대한 수동 검토를 요구할 수 있습니다:
- CI/CD 설정 보호 — 에이전트의
.github/워크플로우 수정 전에 승인 요구 - 비밀 변경 차단 —
.env,secrets/또는 기타 민감한 경로에 대한 모든 변경 거부 - 프로덕션 게이팅 — 프로덕션 설정 변경 전에 관리자 서명 요구
- 청구 감시 — 청구 관련 파일에 대한 모든 변경 검토
정책 작동 방식
각 정책은 다음을 정의합니다:
- 작업 유형 — 적용되는 작업 (예:
pull_request,patch) - 경로 글롭 — 선택적 파일 패턴; 비어있는 글롭은 모든 파일과 일치
- 효과 —
require_approval(검토 대기열에 올림) 또는deny(즉시 거부) 중 하나 - 승인자 역할 — 승인 권한이 있는 사람 (기본값:
admin) - 우선순위 — 여러 정책이 일치할 때 우선순위가 높은 것이 승리;
deny가require_approval보다 우선
에이전트가 작업을 시도할 때 정책 엔진은 워크스페이스의 모든 활성화된 정책을 평가합니다. 일치하는 정책이 작업의 허용 여부, 승인 대기열, 또는 거부를 결정합니다.
일치 논리
정책이 일치하는 경우:
- 그
action_types에 시도되는 작업이 포함되고, 그리고 - 최소한 하나의
path_globs패턴이 변경된 파일과 일치 (또는 경로 글롭이 비어있음)
정책이 일치하지 않으면 작업은 기본적으로 허용됩니다. 여러 정책이 일치하면 우선순위가 높은 것이 승리합니다. 우선순위가 같을 때는 deny가 require_approval을 이깁니다.
정책 생성 및 관리
정책은 워크스페이스 설정 → 승인 정책(관리자만 가능)에서 관리됩니다. 다음을 할 수 있습니다:
- 새 정책 생성 — 작업 유형, 경로 패턴, 효과 및 승인자 역할 정의
- 정책 활성화 또는 비활성화 — 삭제하지 않고 토글
- 우선순위 설정 — 여러 규칙이 적용될 때 어느 정책이 승리하는지 제어
- 템플릿 사용 — AACWorkflow는 일반적인 경우를 위한 선택적 시작 정책 제공
기본 템플릿
엔터프라이즈 기능을 활성화하면 두 정책을 시작점으로 사용할 수 있습니다:
- CI/CD 설정 보호:
.github/**에 대한 변경 승인 요구 - 청구/비밀 보호:
billing/**,secrets/**및.env*파일에 대한 모든 변경 차단
승인 워크플로우
정책이 승인을 요구할 때:
- 에이전트의 작업이 캡처되고 안전하게 저장됨
- 작업이 워크스페이스 받은편지함 → 승인 대기열에 나타남
- 승인자 역할이 있는 회원(권한이 있는 검토자)이 작업 요약과 변경 미리보기를 봄
- 검토자가 승인(작업 진행) 또는 거부(에이전트 통지, 변경 미적용)를 결정
- 승인은 7일 후 만료; 만료된 요청은
expired로 표시되고 재제출해야 함
작업 승인
대기 중인 작업을 승인하려면:
- 받은편지함 → 승인 열기
- 대기 중인 작업을 클릭하여 전체 diff 및 컨텍스트 확인
- 승인 클릭으로 진행, 또는 거부 클릭으로 거부
- 승인되면 에이전트의 대기열화된 페이로드가 즉시 적용됨
- 거부되면 에이전트가 통지받고 접근 방식을 조정할 수 있음
보안 검사: 작업을 승인할 때 AACWorkflow는 저장된 페이로드가 대기열화된 이후 변조되지 않았는지 확인합니다. 승인이 만료되었거나 페이로드가 일치하지 않으면 승인이 오류와 함께 거부됩니다.
정책 효과
require_approval
정책의 효과가 require_approval일 때:
- 에이전트의 작업이 대기열화되고 적용되지 않음
- 승인자 역할이 있는 워크스페이스 회원이 승인 요청을 받음
- 작업은 명시적 승인 후에만 진행
- 중요한 설정이나 고위험 변경을 보호하는 데 유용
deny
정책의 효과가 deny일 때:
- 에이전트의 작업이 즉시 거부됨
- 승인 요청이 생성되지 않음
- 에이전트가 거부 사유로 통지됨
- 절대 금지 목록(예: 비밀 또는 자격증명)에 유용
모범 사례
- 보수적으로 시작 — CI/CD 및 비밀에 대한 템플릿을 활성화한 다음 필요에 따라 개선
- 경로 글롭 신중하게 사용 —
**/billing/**은 너무 넓음;billing/pricing.json같은 것을 선호 - 명확한 우선순위 설정 — 여러 정책이 적용될 수 있을 때 혼동 회피
- 거부 정기적 검토 — 에이전트가 자주 deny 정책에 걸리면 규칙 조정 필요 여부 검토
- 팀에 전달 — 스쿼드 리더들이 어느 경로에 승인이 필요한지 알도록 확인
다음 단계
- 엔터프라이즈 거버넌스 기능 — 워크스페이스 차원의 보안 제어
- 안전 출력 레이어 — 승인 정책이 에이전트 출력 처리와 통합되는 방식
- 멤버와 역할 — 승인자 역할 요구사항 이해