# 실제 고객사 사례 소개

국내 대형 유통사 A사는 다양한 백엔드 시스템과 프론트엔드 포털을 분산 운영하고 있었다. 각 애플리케이션마다 별도의 사용자 저장소와 로그인 방식을 사용하던 탓에, 신규 기능 개발 시 매번 인증 로직을 재구현해야 했고 유지보수에도 많은 비용이 들었다. 특히 사용자 데이터가 여러 곳에 분산되다 보니 계정 동기화에 문제가 발생하거나, 일부 계정 정책이 일관성 없이 적용되는 등 보안 위험도 높았다.

### 배경 및 문제 상황

* **인증 시스템 산재** A사는 레거시 ERP, 전자결재 시스템, 사내 포털, 모바일 앱 등 애플리케이션별로 독자적인 로그인 방식을 운영했다. 이로 인해 동일한 사용자가 시스템마다 계정이 달랐고, 각 부서별 정책을 모두 따르기 어려워 보안 감사 시 문제가 자주 지적되었다.
* **데이터 동기화 어려움** 사용자가 부서를 이동하거나 퇴사할 경우, 각 애플리케이션별로 계정 정보를 업데이트해야 했다. 이 과정에서 누락이나 지연이 발생하기도 했고, 일부 시스템에서는 여전히 폐지된 계정이 남아있어 보안 사고 위험이 상존했다.
* **개발 및 유지보수 비용 증가** 새로운 애플리케이션을 도입할 때마다 인증 로직을 다시 작성하고, 권한 관리 모듈도 중복 개발해야 했다. 이는 개발 생산성을 떨어뜨리고, 시스템이 복잡해질수록 장애 가능성도 높아졌다.

### Keycloak 도입 배경

A사는 통합 인증(SSO)과 중앙집중형 사용자 관리를 지원하는 솔루션을 물색하던 중, 오픈소스이면서도 기업 환경에서 안정적으로 사용할 수 있는 Keycloak을 후보로 선정했다. 다음과 같은 이점이 도입의 결정적 요인으로 작용했다.

* **SAML, OpenID Connect 등 표준 프로토콜 지원** 기존 레거시 시스템 일부는 SAML 기반 SSO를 요구했고, 신기술 기반의 새 시스템은 OpenID Connect를 선호하는 상황이었다. Keycloak은 다양한 표준 프로토콜을 모두 지원하기 때문에 서로 다른 유형의 애플리케이션을 손쉽게 연결할 수 있었다.
* **확장성과 커스터마이징 용이성** A사의 인증 정책은 산업 특성상 강도 높은 규정과 세부적인 MFA(Multi-Factor Authentication) 요구사항이 있었다. Keycloak은 스크립트 기반 정책이나 확장 포인트가 많아, 추가 요구사항을 맞춤 개발하기에도 적합했다.
* **커뮤니티와 기업 지원** Keycloak은 오픈소스 커뮤니티가 활발하고, 기업 환경에 필요한 관리·모니터링 기능도 꾸준히 개선되고 있었다. A사는 필요에 따라 Red Hat 등에서 제공하는 전문 기술 지원도 고려했다.

### 구축 절차

1. **사용자 디렉터리 통합** A사는 사내에 이미 Active Directory(AD)와 별도의 LDAP 시스템을 혼합 운영하고 있었다. Keycloak의 사용자 페더레이션 기능을 통해 두 디렉터리 정보를 통합 조회하도록 구성했다. 초기 동기화 시 충돌 계정을 처리하기 위해 커스텀 매핑 로직을 작성했고, 이후에는 LDAP 그룹 정책에 맞춰 동적으로 권한을 할당하도록 구현했다.
2. **SSO 포털 연동** A사는 사내 포털부터 통합 인증을 시범 적용했다. Keycloak에 Realm을 생성해 인증 소스를 일원화하고, 포털은 OpenID Connect로 Keycloak에 접속해 인증 토큰을 받도록 변경했다. 포털 로그인 시 싱글 사인온이 적용되어, 기존 레거시 ERP나 전자결재 시스템도 별도 로그인 절차 없이 이용할 수 있게 되었다.
3. **고객 대상 서비스 확장** B2B 고객사 파트너 포털과 B2C 온라인몰에도 순차적으로 통합을 진행했다. 파트너 포털은 SAML을 활용했으며, 온라인몰은 소셜 로그인(Facebook, Google)과 Keycloak을 병행 사용하도록 했다. 이를 통해 외부 고객들도 단일 ID로 여러 서비스에 접근 가능하게 되어 편의성이 높아졌다.
4. **MFA 도입 및 정책 강화** 보안 강화를 위해 Keycloak의 내장 OTP(One-Time Password) 기능을 테스트한 뒤, 사내 임직원에게 MFA를 의무화했다. 동시에 IP 제한, 특정 시간대 접근 제한 등의 고급 정책을 스크립트 정책으로 구현해 보안 요구사항을 충족시켰다.

### 도입 성과

* **관리 효율성 및 비용 절감** 모든 시스템 계정을 Keycloak에서 일괄적으로 관리하게 되면서, 계정 생성·변경·삭제 프로세스가 대폭 단순화됐다. 중복 코드와 중복 인프라가 제거되면서 개발 및 운영 비용이 크게 절감되었다.
* **보안 수준 향상** MFA 및 통합 계정 정책으로 인해 불필요한 권한 남용이 줄어들었고, 감사 로그를 한 곳에서 수집해 모니터링할 수 있게 되었다. 특히 감사 대응 시 특정 계정이 어느 시스템에 언제 접근했는지를 일관되게 추적할 수 있어, 보안 사고 발생 시 조치가 빨라졌다.
* **확장성 확보** 이후 신규 애플리케이션이 추가될 때 SAML 또는 OpenID Connect로 손쉽게 Keycloak Realm에 연동할 수 있었다. 이는 애플리케이션의 인증 로직 개발 부담을 크게 줄여주었고, 파트너사나 고객사 서비스를 확장하기도 수월했다.
* **사용자 경험 개선** 싱글 사인온으로 인해 사용자는 단 한 번의 로그인으로 사내 시스템과 고객 대상 포털을 모두 이용할 수 있게 되었다. 내부 임직원과 외부 고객 모두 인증 단계가 단순해져 서비스 이용 만족도가 높아졌다.

위 사례를 통해 A사는 Keycloak을 활용하여 이질적인 환경을 통합 관리하고, 애플리케이션 간 사용자 경험을 개선함과 동시에 보안 수준을 한층 끌어올릴 수 있었다. 이러한 성공 경험은 회사 내 다른 프로젝트나 계열사로도 확산되어, 점차 Keycloak 기반의 통합 인증 체계가 그룹 차원의 표준으로 자리잡는 계기가 되었다.
