전체 글 291

5. [SSO] Keycloak & Springboot 적용기 - 2

1. 서론 오늘은 어제에 이어 접근 토큰을 생성해보는 시간을 가지겠습니다. 어제의 포스팅은 다음을 참고하세요. dkyou.tistory.com/54 2. 본론 2.1 Generating Access Token With Keycloak's API 키클락은 기본적으로 access token을 생성하고, refresh token을 발급해주는 REST API를 제공하고 있습니다. 우리는 이 API를 이용해서 우리 고유 로그인 페이지를 쉽게 만들 수 있습니다. 첫번째로, 우리는 아래의 URL을 이용해서 POST 요청을 함으로서 Keycloak으로부터 access token을 획득할 필요가 있습니다. http://localhost:8180/auth/realms/master/protocol/openid-connect..

Dev 2020.09.27

4. [SSO] Keycloak & Springboot 적용기

1. 서론 앞서 SSO 구축을 위한 오픈소스(Keycloak)을 찾았고, 전반적인 개념과 getting started에 대해 알아보았다. 이제 스프링 부트에 더 잘 적용시키기 위해 www.baeldung.com/spring-boot-keycloak A Quick Guide to Using Keycloak with Spring Boot | Baeldung Learn how to configure a Keycloak server and use it with a Spring Boot Application. www.baeldung.com 을 번역해보는 작업을 진행해보려 한다. - 해당 작업은 20년 6월 23일 최종 수정으로, 아주 따끈따끈한 자료이다. 2. 본론 2.1 개요 이 게시글에서는, 우리는 Keycl..

Dev 2020.09.26

[SSO] Keycloak 공식문서 따라해보기 - 3

1. 서론 Keycloak 번역작업도 거의 끝나간다. 생각보다 기본기를 탄탄히 가져갈 수 있었던 좋은 경험이다. 이번 시간에는 간단한 앱을 활용해서 keycloak의 기능을 활용해보려 한다. 2. 본론 이제 우리는 어드민 계정, realm, 사용자의 개념을 학습하였습니다. 우리는 Keycloak을 이용해서 WildFly Servlet 앱을 보안으로 활용할 수 있습니다. WildFly 클라이언트 어뎁터를 설치하고, 해당 앱을 어드민 콘솔에 등록하고, WildFly 인스턴스를 Keycloak 관리대상에 포함시킬 수 있고, 앱을 보호하는데 사용할 수 있습니다. 2.1 키클럭을 이용하여 포트 조절하기 키클록 서버로서 같은 공간에 WildFly를 사용할 수 있도록 합니다. 이 상황에서, WildFly를 앱 컨테이..

Dev 2020.09.25

[SSO] Keycloak 공식문서 따라해보기 - 2

1. 서론 저번 시간에 이어 realm와 유저를 생성해보는 시간을 가지려 한다. 2. 본론 realm이 무엇인지부터 알아야한다. realm이란, 개발자가 object들을 관리할 때 사용하는 공간이라고 정의할 수 있다. 두가지 종류의 realm이 존재한다. Master realm : 첫번째 Keycloak을 생성하면 만들어진다. 첫 로그인 시 생성된 어드민 계정을 포함한다. 이것으로 다른 realms을 만들 때 기반이 되는 realm이다. Other realms : master realm의 어드민으로부터 생성된다. 이 realms 내부에서, 관리자가 사용자와 앱을 만든다. 앱은 사용자가 소유하고 관리할 수 있다. 2.1 Master realm으로부터 realms 만들기 마스터로부터, realms 만드는 방..

Dev 2020.09.24

[SSO] Keycloak 공식문서 따라해보기 - 1

1. 서론 공식문서를 번역해보기로 했다. 프로젝트에 적용은 했는데, 이걸 어떻게 커스터마이징해야할지 더 알아보고 싶은 궁굼증이 생겼다. 문서는 크게 4꼭지로 이루어져있다. Trying out keyclock Installing a sample instance of Keycloak Creating a realm and a user Securing a sample application 번역해두면 누군가는 보겠지,,, 라는 생각에 열심을 다해보기로 한다. 배움이 짧아 의역이 많으니 너그러운 양해부탁드립니다. 수정 건의는 언제든 환영입니다. 2. 본론 2.1 키클락 연습해보자 이 가이드를 보면 당신이 프로젝트 환경을 구성할 때 keycloak을 사용하는데 도움이 될 것입니다. 키클락을 서버에 standalone..

Dev 2020.09.23

20. [SpringBoot] 버전 걱정 없는 SSO 구현 번역해보기 - 2

1. 서론 오늘은 어제에 이어서 두번째 앱을 구성해보겠습니다. 2. 본론 스프링 OAuth Client Thymeleaf-2를 사용하였습니다. 이전 포스팅에서 첫번째 앱을 구성한 것과 비슷한 설정을 가져갈 것입니다. 2.1 application.yml spring: security: oauth2: client: registration: custom: client-id: ssoClient-2 client-secret: ssoClientSecret-2 scope: read,write authorization-grant-type: authorization_code redirect-uri: http://localhost:8084/ui-two/login/oauth2/code/custom provider: cust..

Dev/SpringBoot 2020.09.22

19. [SpringBoot] 버전 걱정 없는 SSO 구현 번역해보기 - 1

1. 서론 Simple Single Sign-On with Spring Security OAuth2 | Baeldung A simple SSO implementation using Spring Security 5 and Boot. www.baeldung.com 을 번역해보는 작업을 실시하였습니다. 이유는 코드를 한번 돌려보았는데 완벽하게 내가 원하는 작업과 일치하였기 때문입니다. 최신 코드이기 때문에 decperated 된 어노테이션이 없을 것이라고 생각하였습니다. SSO 코드를 여러개 분석하면서 버전이 다르거나 변경된 코드로 인해 고생을 많이 했었고, 최신 코드로 하면 변경이 없을 것 같아 도전해보게 되었습니다.(번역해보니 이전 버전은 점점 사양화되고있다고 한다.) 2. 본론 2.1 개요 이 튜토리얼에..

Dev/SpringBoot 2020.09.21

4. 3분기 중반 즈음에(20-09-18)

서론 직장인으로서 1년이 거의 다 되어간다. ( 벌써 3분기라니... 벌써 9월이라니!!! ) 한번 글을 써야겠다 했는데 어쩜 이렇게 분기별로 딱딱 맞춰 글 쓸 생각이 나는지 모르겠다. 본론 프로그라피라는 동아리에서 (1분기 회고 참고) 실제 서비스를 만들게 되었다. 나도 서비스를 성공적으로 배포할 수 있게 될줄 몰랐는데. 레모닝이라는 어플을 만들게 되었다. 고생해준 팀원들에게 너무 고맙다. 배포한 다음에 눈물 한방울이 또륵 흘렀다. 배포 한번에 뭐가 그렇게 감회가 깊었던지, 평생 내가 만든 서비스를 출시해보는 것이 목표였는데 동아리에서 해결하여서 너무 기뻣다. 완성은 아직 미숙하지만 계속해서 6.5기로 잔류하면서 유지보수작업을 실행하려고 한다! 즐거운 회사생활 회사에서는 본격적으로 업무를 맡아 개발작업..

18. [SpringBoot] 환경설정별로 다르게 실행해보자

1. 서론 요즘 스프링 부트를 학습하면서, 정말 제대로 학습해보고 싶은 생각이 많이 들었습니다. 그래서 기본을 계속 찾아보다 프로파일에 따른 환경을 구성해서 분리하는 작업을 해보았는데, 개발 환경 구성을 다르게 하는 것이 중요하다는 것을 알게되었습니다. 이 글을 이해하시면 한 프로젝트 내에서 로컬, 개발, 베포환경을 분리할 수 있습니다. 2. 본론 아주 간단합니다. 프로젝트 생성 후, application.yml 파일 설정을 하시면 됩니다. 1. application.yml 작성하기 - application.yml 은 다음 경로에 있습니다. 없다면 그냥 new 해서 해당 경로에 새로 생성 하시면 됩니다. server: port: 80 --- spring: profiles: local server: por..

Dev/SpringBoot 2020.09.09

17. [SpringBoot] 스프링부트 카카오 로그인하기 구현(따라치기만하면됨)(2)

서론 1편에 이어 2편도 제작하려 합니다. 1편은 하단 링크를 참고하시면 됩니다. 16. [SpringBoot] 스프링부트 카카오 로그인하기 구현(따라치기만하면됨)(1) 서론 카카오 소셜로그인을 구현하려고 구글링을 이곳 저곳 해봤는데,, 다들 너무 어렵고, 내가 아는것이 맞나,, 싶을정도로 하나도 모르겠었습니다. 그러다 우연히 https://master-gromit.tistory.com/11?ca dkyou.tistory.com 저번 시간에는 인증 코드를 요청하고 카카오 서버를 거쳐 인증코드를 가져오는 첫번째 단계까지 확인했습니다. 이번에는 인증코드로 토큰 요청을 하고, 토큰을 받아오는 과정까지 진행해보려 합니다. 본론 access_token을 가져오기 위해서는 다음과 같이 4개의 조건이 필요합니다. g..

Dev/SpringBoot 2020.07.24