AI 요약
Dress Code 사내 엔지니어가 사내용 HTML 공유 서비스의 인증을 Google Workspace로 통합 구현한 과정을 정리한 글입니다. 사람 로그인은 Google OIDC와 OAuth 동의 화면(내부 타입)으로 처리하고, 기계와 CI 인증은 Workload Identity Federation과 도메인 전체 위임을 활용합니다. 핵심은 인증 대상을 '사람', '기계', 'CI'로 구분하여 각각 다른 인증 방식을 적용하고, hd 클레임 이중 확인과 JWKS 서명 검증으로 보안을 강화한 점입니다. 특히 발행자가 퇴사한 경우 CI 토큰이 자동으로 무효화되도록 설계했습니다.
핵심 포인트
- Google OIDC + OAuth 동의 화면 '내부' 타입으로 사외 계정 차단, hd 클레임을 앱에서도 이중 확인
- ID 토큰은 decode만 하지 않고 Google JWKS 공개키로 서명 검증 필수
- Directory API 접근을 위해 Workload Identity Federation(키리스 GCP 호출)과 도메인 전체 위임(관리자 권한) 2단계 필요
- 사람·기계·CI 인증을 분리하여, CI 토큰을 재직 확인 대상에 포함시키면 발행자 퇴사 시 CI가 즉시 중단되는 문제 방지
향후 전망
- 현재는 설계와 통신 확인까지 완료된 단계로, 실제 운영을 통한 검증이 필요
- AI 에이전트의 MCP 기반 API 접근 허용 등 향후 요구사항 확장에 대비한 설계로 평가됨
