IT 썸네일형 리스트형 스프링부트 카카오 소셜 로그인 3(OAuth2User, OAuth2UserService) 이전 포스팅할 때 OAuth2UserService 객체를 SecurityConfig에 등록하였다. 이번에는 OAuth2UserService를 구현하고 로그인 정보를 받을 OAuth2User를 상속받는 객체를 생성해보자.@Overridepublic String getName() { return this.getAttribute(this.userNameAttributeName).toString();}@Overridepublic Set getAuthorities() { return super.getAuthorities().stream().collect(Collectors.toSet());}@Overridepublic Map getAttributes() { return this.attributes.. 더보기 스프링부트 카카오 소셜 로그인 2(OAuth 로그인 활성화 및 객체 등록) 스프링 시큐리티 config 파일에 .oauth2Login()만 추가해주면 활성화가 된다.public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { http .csrf( csrf-> csrf.disable() ) .authorizeRequests() .antMatchers("/**") .permitAll() .and() .formLogin() .loginPage(.. 더보기 AWS Lightsail (1) 서버 생성(Ubuntu, hostname 설정, 시간 설정) EC2는 회사에 인프라 관리자가 있거나 자신이 가상 서버, 네트워크, 디스크 볼륨, 보안 그룹 등의 관리를 하드하게 해야하는 분에게 상대적으로 더 적합하다.상세 설정을 통해서 비용이든 성능이든 이득을 얻을 수 있는 환경에서 일하고 있다면 EC2와 관련 서비스들의 유연한 환경설정은 큰 장점이기 때문이다.또한 EC2는 네트워크 트래픽보다는 CPU 연산 위주의 프로젝트를 돌릴 때 더 유리하다.무엇보다 서버를 껏다 켰다 하면서 과금되는 시간을 조절할수도 있다는 온디멘드 방식은 매우 매력적인 옵션이다.그러나 뒤집어 이야기하면 세팅 하려고 정작 개발을 못하거나, 개발하는 시간보다 인프라 관리하는 시간이 더 들어야 하는 분에게는 주객이 전도된 상황이 생기게 된다. Lightsail은 인프라 관리해줄 사람이 없고 혼자.. 더보기 Spring Security User(UserDetail) 커스텀 spring security를 사용할 때 사용자의 정보를 컨트롤러를 통해 Principal 객체를 통해 얻을 수 있었다. 하지만 이 방법을 사용하여 사용자의 정보가 필요한 페이지마다 이 작업을 모두 추가해주기는 번거롭다. 이를 고려하여 두번째 방법으로는 컨트롤러에서 넘겨주는 복잡한 로직을 제거하기 위해 타임리프를 활용하여 authentication.principal의 정보를 바로 사용하는 것이다. 하지만 이 방법으로는 사용자의 정보는 한정적이다. 확인해보면 사용할만한 정보가 username과 password 뿐이다. 따라서 spring security가 회원의 정보를 세션에 담을 때 더 많은 정보를 담고 있으면 우리는 추가적으로 이러한 한정적인 정보를 벗어나서 사용할 수 있다. 스프링 시큐리티가 로.. 더보기 스프링부트 카카오 소셜 로그인 1(셋팅 및 설정 작업) 이전에 포스팅한 OAuth에 대한 Access Token 발급 과정에 대해서 간단하게라도 숙지하는 것을 (꼭)권장한다.https://sh970901.tistory.com/73 OAuth 2.0 (access Token 발급 과정)깃허브, 네이버, 카카오등을 통해 우리는 소셜 로그인을 만들 수 있다. 나의 서비스와 이들은 서로에 대해서는 사실 모른다고 표현할 수 있고 그들 가운데 oauth라는 표준 인터페이스 역할을 하는sh970901.tistory.com필자는 SSR 방식의 소셜로그인 구현을 기록했다. 리액트같은 것과 REST API 통신하려면 밑에 글을 참고해보자. 정리를 너무 잘해주셔서 이해가 확 와닿았다.https://data-jj.tistory.com/53 REST-API 활용한 카카오 소셜 로그.. 더보기 OAuth 2.0 (access Token 발급 과정) 깃허브, 네이버, 카카오등을 통해 우리는 소셜 로그인을 만들 수 있다. 나의 서비스와 이들은 서로에 대해서는 사실 모른다고 표현할 수 있고 그들 가운데 oauth라는 표준 인터페이스 역할을 하는 것이 있다. 이것에 의하여 묶여 소셜 로그인이 된다. oauth를 활용하면 우리가 만든 서비스가 그들의 서비스와 상호작용 할 수 있게 된다.우리가 만든 서비스는 ID나 PW가 아닌 access Token이라는 것을 oauth를 통해 획득하고 그 토큰을 활용하여 다른 서비스에 접근해서 데이터를 가져오고 생성하고 수정하는 등의 작업이 가능하다. 이 access Token이 사용자를 식별할 수 있는 것이다.이 때 Their을 담당하는 다른 서비스를 Resoure Server, 그리고 우리가 만든 서비스(mine)를.. 더보기 젠킨스(jenkins)로 스프링부트 자동화 3(파이프라인) 이번에는 Freestyle project가 아닌 Pipeline으로 만들어 보려고 한다. (결과가 좀 더 보기 좋게 나온다고함)pipeline { agent any //등록한 jdk를 활성화 tools { jdk 'openjdk-17-jdk' } //스테이지로 구성됨 각각의 단계 stages { //준비 단계 stage('Prepare') { steps { git branch: 'master', url: 'https://github.com/sh970901/dockerDB' } post { .. 더보기 젠킨스(jenkins)로 스프링부트 자동화 2(도커, DB 설치, 빌드) jenkins_1에서 도커를 설치하여 HOST OS의 도커명령어를 사용할 수 있도록 한다. jenkins_1 bash 도커 설치apt-get update -yapt-get install -y ca-certificates curl gnupg lsb-releasemkdir -p /etc/apt/keyringsrm /etc/apt/keyrings/docker.gpgcurl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpgecho "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://.. 더보기 이전 1 ··· 9 10 11 12 13 14 15 ··· 19 다음