왜 모델 권한 관리가 중요한가
머신러닝 모델은 단순한 코드 파일이 아닙니다. 프로덕션 환경에서 실행되는 모델은 비즈니스 의사결정 에 직접 영향을 미치며, 잘못된 모델이 배포되면 금전적 손실이나 규제 위반으로 이어질 수 있습니다.무분별한 모델 배포의 위험성
- 검증되지 않은 모델 배포: 실험 중인 모델이 실수로 프로덕션에 배포되어 예측 품질 저하
- 모델 오염 (Model Poisoning): 악의적 사용자가 학습 데이터나 모델 가중치를 변조
- 규제 위반: 금융/의료 도메인에서 승인되지 않은 모델 사용 시 법적 제재 (GDPR, HIPAA 등)
- 추적 불가: 누가 언제 어떤 모델을 배포했는지 기록이 없으면 사고 원인 분석 불가
규제 준수 (Compliance) 요구사항
| 규제 | 관련 요구사항 |
|---|---|
| GDPR | 자동화된 의사결정 모델의 설명 가능성, 접근 권한 기록 |
| HIPAA | 의료 데이터를 사용한 모델의 접근 제어 및 감사 로그 |
| SOC 2 | 모델 변경 이력, 배포 승인 프로세스 문서화 |
| 금융 규제 | 신용 심사 모델의 변경 통제 및 독립적 검증 요구 |
Unity Catalog (UC)가 제공하는 보호
Unity Catalog 기반 Model Registry는 테이블과 동일한 거버넌스 체계 를 모델에 적용합니다. 단일 접근 제어 계층에서 데이터 → 피처 → 모델 → 엔드포인트까지 일관된 권한 관리가 가능합니다.Unity Catalog 기반 모델 권한 체계
권한 계층 구조
UC 모델 권한은 Catalog → Schema → Model 3단계 네임스페이스를 따릅니다. 상위 레벨 권한이 없으면 하위 레벨에 접근할 수 없습니다.주요 권한 설명
| 권한 | 적용 대상 | 허용 작업 |
|---|---|---|
USE CATALOG | Catalog | Catalog 내 객체 탐색 |
USE SCHEMA | Schema | Schema 내 객체 탐색 |
CREATE MODEL | Schema | 새 모델 등록 (새 버전 포함) |
EXECUTE | Model | 모델 버전 조회, 추론 호출 |
APPLY TAG | Model | 모델에 태그 추가/수정 |
ALL PRIVILEGES | Model | 모든 작업 (소유자 수준) |
참고: EXECUTE 권한은 모델 가중치 파일 다운로드를 허용하지 않습니다. 모델 아티팩트 (Artifact) 접근은 별도의 Storage Credential 권한으로 제어됩니다.
참고 링크: Unity Catalog privileges for ML models
역할별 권한 설계
실제 조직에서는 역할 (Role) 기반으로 권한을 그룹화하는 것이 권장됩니다.데이터 사이언티스트 (Data Scientist)
실험을 수행하고 모델을 등록하는 역할. 프로덕션 배포 권한은 없습니다.ML 엔지니어 (ML Engineer)
승인된 모델을 프로덕션에 배포하고 모니터링하는 역할.모델 소비자 (Model Consumer)
추론 API를 호출하는 애플리케이션 또는 팀. 읽기 전용 권한만 부여합니다.관리자 (Admin)
전체 모델 생명주기를 관리하는 역할. 서비스 프린시펄 (Service Principal) 계정으로 운영하는 것을 권장합니다.Model Serving 연동
모델 → 엔드포인트 배포 워크플로
서비스 프린시펄 (Service Principal) 설정
엔드포인트가 UC 모델에 접근하려면 서비스 프린시펄 에 권한을 부여해야 합니다. 개인 계정 대신 서비스 프린시펄을 사용하면 담당자 이직/퇴사 시에도 서비스가 중단되지 않습니다.엔드포인트 권한 관리
Model Serving 엔드포인트 자체에도 별도의 권한 체계가 있습니다. UC 모델 권한과는 독립적으로 관리됩니다.엔드포인트 권한 레벨
| 권한 | 허용 작업 |
|---|---|
CAN_MANAGE | 엔드포인트 생성/수정/삭제, 권한 관리 |
CAN_QUERY | 엔드포인트에 추론 요청 전송 (REST API 호출) |
CAN_VIEW | 엔드포인트 상태 및 설정 조회 |
PAT (Personal Access Token) vs OAuth 토큰
| 방식 | 장점 | 단점 |
|---|---|---|
| PAT | 설정 간단 | 만료 관리 필요, 개인 계정에 종속 |
| OAuth M2M | 서비스 프린시펄 기반, 자동 갱신 | 초기 설정 복잡 |
| Instance Profile (AWS) | IAM 기반, 자격증명 불필요 | EC2/클러스터에서만 사용 가능 |