본문 바로가기

스프링8

Apple 로그인 Oauth 2.0 구현 오늘은 애플 로그인을 구현하려고한다. 사실 소프트웨어 마에스트로 앱 출시를 위해 애플 스토어 심사를 받았는데, 리젝당했다.. 그 이유는 구글 로그인이 있지만, 애플로그인이 없어서 그렇다,,ㅎㅎ 그래서 오늘은 애플로그인을 구현한걸 포스팅하고자 한다! Spring Boot, gradle 프로젝트로 진행하였다. implementation group: 'com.auth0', name: 'java-jwt', version: '3.4.0' 다음과 같이 의존성을 추가해준다. 애플 로그인 토큰을 Decode하려면 필요하다. 먼저 나는 프론트 친구한테 identyToken을 받았다. identityToken 의 길이가 어마무시하다.. 이걸 헤더로 받아와서 스프링에서 이 헤더를 가지고 애플로그인을 진행하려고한다. 기존의 .. 2023. 10. 27.
[KaKaoLogin RestAPI] oAuth2.0 + SpringBoot - (1) 오늘은 카카오톡을 이용한 SNS로그인을 하려고합니다. 먼저 카카오톡 개발자센터에서 어플리케이션을 등록해주어야합니다. https://developers.kakao.com/ Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 여기로 가셔서 로그인해주세요 그 다음 내 애플리케이션을 선택 해주세요. 지금 테스트하실 홈페이지의 URL을 적어주시고 저장을 눌러주세요 저는 Localhost_Test로 만들었습니다. 그럼 이 페이지를 마주하게 되시는데요 저희가 사용할 건 RESTAPI 입니다. 그리고 카카오 로그인에 들어가셔서 모두 활성화 해주신다음에 Redire.. 2022. 8. 19.
[Spring Security] + [JWT] + [RefreshToken] 스프링 시큐리티 JWT 로그인 적용기 오늘은 저번 포스팅에서 했던 Security + JWT로 로그인을 구현했습니다. 이번에는 RefreshToken을 이용하려고 하는데요 이 RefreshToken을 이용하는 이유를 설명하겠습니다. 먼저 저희가 로그인 하면 AccessToken을 발급받게 됩니다. 이 AccessToken은 유효시간이 짧습니다. 저번 코드에서는 30분이었는데 이번 코드에서는 실습을 위해 2분으로 설정했습니다. 이렇게 AccessToken의 유효시간은 짧아서 매 30분마다 로그인을 다시 해야 하는데요 이런 불편함을 해결하고자 RefreshToken을 사용하게 됩니다. 기본적인 로직을 설명드리겠습니다. 1. 사용자가 로그인시 AccessToken, RefreshToken을 발급합니다. 이 두 Token은 Front 측에서 Loc.. 2022. 8. 18.
[Spring Security] + [JWT] 스프링 시큐리티 JWT 로그인[실습] 저번 포스팅에 이어서 이번에는 직접 코드를 작성하도록하겠습니다. 버전 : Spring Boot 2.7.2 SQL : JPA IDEA : IntelliJ 디렉토리 구조 저희가 Spring Security와 JWT를 사용해야하므로 해당 Gradle을 추가해줍니다. implementation 'org.springframework.boot:spring-boot-starter-security' testImplementation 'org.springframework.security:spring-security-test' implementation 'io.jsonwebtoken:jjwt:0.9.1' SpringSecurity 설정을 해주겠습니다. Spring Security를 사용하기위한 환경설정 Class라 생각하.. 2022. 8. 12.
[Spring Security] + [JWT] 스프링 시큐리티 JWT 로그인[이론] 오늘은 스프링 시큐리티를 이용한 JWT로그인을 포스팅하려고 합니다. 스프링 공부를하면서 Spring Security 기능을 알게 되었는데 이기능을 자주 쓰기도 하고 보안에 취약하지 않은 것 같고 권한에 대해서도 인증절차가 잘 되어있어 현재 많이 사용되고있는 기능같습니다. [Spring Security] 1. Authentication(인증) : 사용자 인증 절차 2. Authorization(권한) : 사용자 권한/등급 이 두가지를 도와주는 것이 Spring Security인데요 인증 과정에 대해서 한번 살펴보겠습니다. 이 이미지는 다른 사이트에서도 많이 보셨을텐데요 저희가 Spring Security를 이해하는데 도움이 되는 자료입니다. 번호 순서대로 설명드리겠습니다. 1. Request요청이 들어온 .. 2022. 8. 12.
스프링부트 게시판 작성/목록 머스테치로 구현하기 전에도 스프링 부트로 게시판 작성 및 목록을 포스팅했는데요 그때 포스팅은 단순히 소스코드만 있었는데 이번 시간에는 View도 같이 작성한 소스를 설명드리겠습니다. 저희는 인텔리제이로 사용하였는데 여기서는 JSP를 사용하지 않고 mustache라는 템플릿을 사용합니다. 인텔리제이 무료 버전에서는 JSP를 사용 불가합니다. 하지만 MUSTACHE라는 템플릿은 사용 가능하며, 또한 쉬운 코드로 작성할 수 있기 때문에 머스테치로 화면을 구현해보려고 합니다! 먼저 main/resources 디렉토리에 templates를 만들어준 후 index.mustache를 작성해줍니다. {{>layout/header}} 스프링 부트로 시작하는 웹서비스 글 등록 게시글번호 제목 작성자 최종수정일 {{#posts}} {{id}}.. 2022. 1. 26.