728x90

Keycloak 2

[Keycloak] Custom API

Keycloak를 도입하여 인증·인가를 간편하게 구성할 수 있지만, “Admin REST API”로는 사용자와 그룹 정보를 한꺼번에 조회하기가 쉽지 않습니다.이를 위해 RealmResourceProvider라는 확장(SPI)을 구현해 N+1 문제를 개선하고, 하나의 엔드포인트에서 사용자와 그들의 그룹 목록을 동시에 가져오는 방법을 소개합니다.문제: 기본 Admin API의 N+1 호출Keycloak에는GET /admin/realms/{realm}/users : 사용자 목록 (그룹 정보 X)GET /admin/realms/{realm}/users/{userId}/groups : 해당 사용자의 그룹 목록 엔드포인트만 제공됩니다.수많은 사용자에 대해 그룹 정보를 확인하려면,사용자 목록 API 호출 → 사용자 ..

Keycloak 2025.03.04

[Keycloak] Keycloak + Spring Boot + NuxtJS 아키텍처

🎯 목표 요구 사항 및 아키텍처Keycloak → 인증 및 인가 담당 (OAuth 2.0 / OpenID Connect)Spring Boot → 키클락 Admin Rest API를 래핑하는 API 서버NuxtJS → JWT를 관리하고 Keycloak과 직접 통신하여 인증 처리 Q1. Spring API를 통해 Keycloak Admin API를 호출하는 이유는?✅ 보안 및 권한 제어를 위해Keycloak Admin API는 강력한 관리자 권한이 필요 → 직접 호출하면 보안 위험 증가Spring Boot API가 프록시 역할 → 관리자가 인증된 경우에만 Admin API를 호출할 수 있도록 제한Spring Security로 API 접근 제어 가능 → 관리 역할(Role) 검증 후 처리 가능✅ 비즈니스 로..

Keycloak 2025.03.04
728x90