본문 바로가기
관리자

분류 전체보기

(1018)
[TIL] git, github 변경 코드 줄 수 확인 명령어. file changed, insertions, deletions 배경github에 PR을 올리기 전에 변경량을 확인해야할 필요가 있었다. 너무 많은 코드 변경사항이 commit 되면 리뷰어가 부담스러울 수 있기 때문이다. 방법$ git diff --shortstat   참고로 stat을 입력하면 파일마다 얼마나 변했는지 알려준다.$ git diff --stat
[비공개] Weekly Report - 25/03/17~24/03/23, 1730일차 보호되어 있는 글입니다.
[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 내용 보호되어 있는 글입니다.