Keycloak이란?
Keycloak은 오픈 소스 ID 및 접근 관리 소프트웨어입니다. 여러 애플리케이션에 다단계 인증이 적용된 하나의 공통 로그인을 제공하며, 맞춤형 애플리케이션에 표준 기반 로그인을 추가하는 데 널리 쓰입니다.
엔지니어와 상담하세요 지식 베이스
정의
Keycloak은 Red Hat에서 시작되어 지금은 Cloud Native Computing Foundation 프로젝트입니다. 직접 운영하는 서버에서 컨테이너 또는 Kubernetes 위에서 실행되며, OpenID Connect, OAuth 2.0, SAML을 지원합니다. 이러한 표준을 사용하는 애플리케이션은 로그인을 Keycloak에 맡기고 확인된 ID를 돌려받으므로, 비밀번호를 직접 다루지 않습니다.
싱글 사인온이 중요한 이유
싱글 사인온을 쓰면 각 사람이 연결된 모든 애플리케이션에 하나의 계정을 갖습니다. 누군가 떠날 때 그 계정을 비활성화하면 모든 곳에서 접근이 사라집니다. 다단계 로그인은 한곳에서 요구되고, 직원은 재사용하거나 적어 둘 비밀번호가 줄어듭니다.
주요 구성 요소
- 렘(realm): 렘은 별도의 사용자, 설정, 애플리케이션 모음입니다. 하나의 설치에 직원용, 고객용처럼 여러 개를 둘 수 있습니다.
- 클라이언트: Keycloak으로 사용자를 로그인시키는 각 애플리케이션은 고유한 설정을 가진 클라이언트로 등록됩니다.
- ID 브로커링: Keycloak은 로그인을 다른 공급자에게 넘기고 그 결과를 신뢰할 수 있어, 직원이 Microsoft 365 계정으로 로그인할 수 있습니다.
- 사용자 페더레이션: Keycloak은 모든 계정의 사본을 따로 두는 대신 기존 LDAP 디렉터리나 Microsoft Active Directory에서 사용자를 읽어 올 수 있습니다.
Keycloak과 Authentik
Authentik은 같은 영역을 다룹니다. Keycloak은 더 오래된 프로젝트로, 개발자가 자체 소프트웨어 안에 로그인이 필요할 때 일반적으로 선택합니다. Authentik은 웹 인터페이스에서 로그인 단계를 설계하는 데 더 비중을 두며, 로그인 기능이 없는 애플리케이션 앞에 로그인을 두는 프록시 아웃포스트를 제공합니다. Keycloak도 그런 애플리케이션을 보호할 수 있지만, 보통 그 앞에 별도의 프록시를 둡니다.
KawaConnect가 싱글 사인온을 다루는 방식
저희는 맞춤형 업무용 소프트웨어를 만드는데, 로그인은 처음부터 직접 작성하기보다 공개된 표준을 따라야 하는 애플리케이션의 부분입니다. Microsoft 365에서의 ID 업무는 Entra ID 계정, 다단계 인증, 조건부 접근을 다룹니다. 또한 자체 호스팅 Linux, Docker, Kubernetes 서비스를 운영하는데, 여기서는 ID 공급자를 통해 내부 도구가 다른 모든 것과 같은 Microsoft 계정을 사용할 수 있습니다.
관련 서비스
Kubernetes 컨설팅
자체 호스팅 서비스와 그 구성을 위한 클러스터.
Microsoft 365
직원 계정을 위한 Entra ID, MFA, 조건부 접근.
네트워크 보안
누군가 지켜보는 가운데 제공하는 원격 접속, MFA, 세분화.
자세히 보기
- Keycloak 문서서버 관리, 애플리케이션 보안, 업그레이드 가이드.
- Keycloak 웹사이트다운로드, 릴리스 소식, 시작 가이드가 있는 프로젝트 홈.
- Wikipedia의 Keycloak프로젝트와 Red Hat에서의 역사에 대한 중립적인 개요.
- How OpenID Connect worksKeycloak과 Authentik이 쓰는 로그인 표준에 대한 OpenID Foundation의 설명.