전체 글 (1016) 썸네일형 리스트형 [TIL] mockStatic 개요static 클래스를 테스트해야할 경우가 발생했다. 아래와 같이 Spring의 의존성 없이 Factory 메서드로 DI를 구현할 때, Factory 자체를 mock 처리해야했다. SmsServiceFactory.get(config.getConfig()).send(normalizeMobileNumber, smsText); 이 때 SmsServiceFactory의 get 메서드 자체를 mock 처리하기 위해서 mockStatic을 사용했다. 기본적으로 Mockito는 인스턴스 메서드(Mock 객체)만 지원하지만, Java의 static 메서드는 인스턴스 없이 호출되므로 기본적인 @Mock이나 when()을 사용할 수 없다. 이를 해결하기 위해 Mockito 3.4+ 버전부터 mockStatic()을 제공.. [TIL] Keycloak - Google IDP Social Login시 prompt 설정 Google IDP Prompt 설정 keycloak에서 Google IDP를 설정하여 소셜 로그인을 할 때, 일부 환경(시크릿 모드 등)에서는 계정을 선택하는 화면이 나오지 않고 바로 로그인 되거나, 에러가 발생하는 경우가 발생한다. 이럴 경우 Keycloak admin console -> Identity providers -> Google -> Prompt 설정 값에 select_account 값을 넣어주면 된다. 그럼 이를 구글 요청 시 구글에서 인식하여 항상 계정 선택 화면을 띄우게 된다. 여러 개의 구글 계정을 갖고 있는 사람들이 많으므로 이런 설정을 해두는 것이 좋다. keycloak user info endpoint 설정 user info endpoint keycloak에서 사용자의 정보가 변경되었을 때, 클라이언트가 해당 사용자 정보를 조회해서 최신 정보를 확인해야하는 경우가 있을 수 있다. 이를 위해 Keycloak은 user info endpoint를 제공한다. 이는 OIDC 표준 endpoint이기도 하다. 사용을 위해서는 특정 User가 특정 Client에 로그인하고 Access Token을 발급받은 상태여야한다. 그리고 User Info endpoint의 Authorization header에 이 토큰을 전달해줘야한다. Access Token을 발급받기 위해 client을 생성한다. 그리고 해당 client에 user info 요청이 들어왔을 때 정보를 전달해주도록 mapper 설정을 해줘야한다. Clients.. [비공개] Weekly Report - 25/03/10~24/03/16, 1723일차 보호되어 있는 글입니다. [비공개] Weekly Report - 25/03/03~24/03/09, 1716일차 보호되어 있는 글입니다. keycloak haproxy compose 내용 보호되어 있는 글입니다. Podman 설치하고 intelliJ 연동하기(docker desktop 대체) 1. podmandocker desktop은 기업에서는 유료인 반면, podman은 apache 2.0 license로 기업에서도 무료다. 주요 특징1. 무료 & 오픈소스 • Docker와 유사한 기능을 제공하지만, 비용 없이 사용할 수 있습니다. 2. 루트리스(Rootless) 지원 • 사용자가 root 권한 없이 컨테이너를 실행할 수 있어 보안성이 높습니다. 3. Docker와 높은 호환성 • podman run, podman build 등 명령어가 Docker와 거의 동일합니다. • alias docker=podman을 설정하면 Docker처럼 사용할 수 있습니다. 4. 시스템 서비스 불필요 • Podman은 데몬(daemon)이 필요하지 않아서, 시스템 리소스를 절약할 수 있습니다. 5. Kube.. keycloak User 정보 마스킹 처리 보호되어 있는 글입니다. 이전 1 2 3 4 ··· 127 다음