Keycloak 실습 지도
설정 하나를 적용하고 로그인·token·API 결과가 어떻게 달라지는지 직접 확인한다.
이 덱은 Keycloak 덱의 개념을 labs/keycloak/의 Compose 환경에서 guided stage 순서대로
재현한다. 환경을 준비하고 읽을 코드를 구분한 뒤, 로컬 사용자로 client 로그인과 두 앱 SSO·API 권한을
확인하고, Samba AD 호환 디렉터리를 LDAPS로 연결해 외부 계정 로그인과 group 권한까지 이어 간다.
개념 설명은 늘리지 않고 각 실습이 해당 Keycloak 덱 장을 링크한다.
실습 기준은 Keycloak 26.7.3, PostgreSQL 18.6, Samba 4.19.5와 Node 24다. macOS/Colima에서 검증했고 네이티브 Ubuntu, Microsoft AD DS, 운영 HA는 미검증이다. 검증 범위는 각 페이지와 Keycloak 학습 마무리에서 구분한다.
환경 준비부터 시작- 환경 준비Compose 환경과 읽을 코드
Colima/Docker Engine · issuer·CA·secret · guided/ready · stop/resume
무엇을 직접 읽고 바꾸며 무엇은 스크립트가 대신하나
- 로컬 로그인과 SSOclient 하나에서 API 401·403·200까지
app-a client · redirect 실패와 복구 · app-b SSO · audience·role · API 결과
Keycloak session 재사용과 API의 별도 검증은 어디서 갈리나
- 외부 디렉터리Samba 계정 로그인에서 group 권한까지
Samba seed · LDAPS Federation · LDAP group mapper · role·groups claim · API 정책
외부 group은 어느 두 단계를 거쳐 API 권한이 되나
실습 순서와 개념 장
섹션 제목: “실습 순서와 개념 장”| stage | 명령 | 실습 | 먼저 읽을 개념 |
|---|---|---|---|
| base | first-start.sh --guided | Compose 실습 환경 준비, 실습 코드에서 읽을 것 | Keycloak의 역할, Realm과 로컬 사용자 |
| app-a | apply.sh app-a → verify.sh app-a | Client를 연결하고 로그인 확인하기 | OAuth 2.0과 OIDC 로그인, Client 연결과 SSO |
| app-b · api | apply.sh app-b → verify.sh sso, apply.sh api → verify.sh api | 두 앱 SSO와 API 권한 실습 | Access Token 검증, Group과 Role |
| ldap | apply.sh ldap → verify.sh ldap | Samba 테스트 디렉터리, 외부 디렉터리 계정으로 로그인하기 | AD와 LDAP 연결 읽기, LDAP User Federation |
| groups | apply.sh groups → verify.sh groups | 외부 Group을 Token과 API 권한으로 연결하기 | 디렉터리 Group 매핑, Client Scope와 Protocol Mapper |
모든 명령은 labs/keycloak/scripts/에서 실행한다. 각 스크립트가 무엇을 하고 무엇을 건드리지 않는지, mode·stage가
무엇을 뜻하는지는 실습 진행 순서와 스크립트에 있다.
실습 중 나타나는 오류 문구는 Keycloak 문제 진단에서 경계별로 찾는다.