자연어 접근 정책을 Rego 코드로 자동 변환하는 Prose2Policy 파이프라인

Prose2Policy(P2P)는 대형 언어 모델(LLM)을 활용해 자연어 접근 제어 정책(NLACP)을 자동으로 감지·추출·검증·리턴·테스트까지 수행하여, Open Policy Agent의 정책 언어인 Rego 코드로 변환하는 엔드‑투‑엔드 파이프라인이다. 정책 검출, 구성 요소 추출, 스키마 검증, 린팅·컴파일, 자동 테스트 생성·실행의 5단계 모듈로 구성되며, ACRE 데이터셋에서 95.3%의 컴파일 성공률과 82.2%/98.9%의 양·음…

저자: Vatsal Gupta, Darshan Sreenivasamurthy

자연어 접근 정책을 Rego 코드로 자동 변환하는 Prose2Policy 파이프라인
**1. 서론** 디지털 전환과 자동화 시스템이 확대되면서 접근 제어의 중요성이 급증하고 있다. 기존에 애플리케이션 내부에 하드코딩된 권한 로직은 변화 관리와 감사에 비효율적이며, Zero‑Trust 환경에서는 외부 정책 엔진을 통한 지속적인 검증이 요구된다. 그러나 정책을 작성해야 하는 비즈니스 이해관계자는 XACML, NGAC, Rego 등 전문 언어에 익숙하지 않아, 자연어(NLACP)로 요구사항을 표현한다. 이 격차를 메우기 위해 본 논문은 **Prose2Policy(P2P)** 라는 LLM 기반 파이프라인을 제안한다. **2. 배경 및 관련 연구** 초기 접근 정책 자동화는 Text2Policy, ACRE와 같이 규칙 기반 의존도가 높았다. 이후 Narouei·Takabi, Abdelgawad 등은 의미역 라벨링·신경망을 도입했지만, 복잡한 DSARCP 요소 추출에 한계가 있었다. 최근 AutoPAC, RAGent 등은 LLM을 활용했지만, 출력 제어와 검증 단계가 부족했다. 또한 목적(purpose) 추출과 정책 테스트 자동화는 거의 다루어지지 않았다. **3. 설계 원칙 및 기술 선택** - **프롬프트 체이닝**: 정책 감지 → 요소 추출 → Rego 변환 순으로 단계별 프롬프트를 설계하고, 각 단계에서 JSON 스키마를 강제한다. - **프로그램‑오브‑생각**: LLM이 추론 과정을 단계별로 기록하도록 하여, 오류 원인 분석이 가능하도록 한다. - **스키마‑가드레일**: 조직별 JSON 스키마를 사전 정의해, 추출된 값이 허용 목록에 포함되는지 검증한다. - **Rego 선택**: 선언형·가독성이 높고 OPA와 광범위하게 연동되는 점을 강조한다. **4. 시스템 아키텍처** 파이프라인은 네 개의 모듈로 구성된다. 1) **사전 처리**: 정책 여부 판단, 공동 지시어 해소, 텍스트 세그멘테이션. 2) **구성 요소 추출**: DSARCP를 JSON 형태로 반환하는 LLM 프롬프트. 3) **스키마 검증**: 조직 스키마와 비교, 누락 시 관리자 알림. 4) **Rego 생성·리닝·컴파일·테스트**: Rego 템플릿에 삽입, Regal 린터와 OPA 컴파일러로 구문·스타일 검증, 자동 생성된 양·음 테스트 실행. 각 모듈은 CLI와 웹 UI를 통해 개별 호출이 가능하며, 배치 처리와 실시간 인터랙티브 모드가 제공된다. **5. 기능 상세** - **시각적 흐름**: 웹 UI에서 입력 → 각 단계별 중간 결과(프롬프트, JSON, 린트 메시지) 를 실시간으로 확인 가능. - **배치 처리**: 대량 문서에서 정책을 추출해 일괄 Rego 모듈 생성, 버전 관리와 CI 파이프라인 연계 가능. - **테스트 자동화**: DSARCP 기반 양성·음성 시나리오 자동 생성, LLM 기반과 규칙 기반 두 모드 제공. 복합 조건에서는 아직 제한이 있다. - **프롬프트 커스터마이징**: 사용자는 프롬프트 템플릿을 수정해 도메인 특화 추출 로직을 구현할 수 있다. **6. 평가** ACRE 데이터셋(485개 정책)을 사용해 평가하였다. - **컴파일 성공률**: 95.3% (462/485) – 스키마 검증을 통과한 정책 대부분이 Rego로 정상 컴파일. - **양성 테스트 통과율**: 82.2% – 허용 시나리오가 정책 로직과 일치하는 비율. - **음성 테스트 통과율**: 98.9% – 거부 시나리오가 올바르게 차단되는 비율. 비교 대상인 RAGent은 컴파일 성공률 78%, 테스트 통과율 60% 수준으로, Prose2Policy가 품질·신뢰성 면에서 현저히 우수함을 보여준다. **7. 논의 및 한계** - **복합 조건 처리**: 시간, 외부 상수, 다중 논리 연산을 포함한 정책에서 테스트 케이스 자동 생성이 미흡. - **출력 변동성**: 동일 입력에 대해 LLM이 다른 JSON을 반환할 수 있어, 재현성을 위해 시드·온도 파라미터 관리가 필요. - **스키마 유지 비용**: 조직 스키마가 변할 경우 수동 업데이트가 필요하므로, 자동 스키마 학습 메커니즘이 향후 과제로 제시된다. **8. 결론 및 향후 연구** Prose2Policy는 정책 감지·추출·검증·코드·테스트까지 일관된 파이프라인을 제공함으로써, 자연어 기반 정책을 실무에 바로 적용 가능한 Rego 코드로 전환한다. 향후 연구에서는 (1) 도메인‑특화 스키마 자동 학습, (2) RAG 기반 컨텍스트 강화, (3) CI/CD와 연계한 정책 배포 자동화, (4) 정책 버전 관리와 감사 로그 통합을 목표로 한다.

원본 논문

고화질 논문을 불러오는 중입니다...

댓글 및 학술 토론

Loading comments...

의견 남기기