스프링 시큐리티를 이용하여 인증/인가 로직을 작성하며 인증은 성공했지만, 인가는 실패한 경우 카카오 로그인 화면이 리턴되는 오류가 발생하였습니다. 다음은 제 SecurityConfig.java 파일입니다.// Spring Security 설정@Configuration@EnableWebSecurity@RequiredArgsConstructorpublic class SecurityConfig { @Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { http ... .authorizeHttpRequests( ..
프로젝트를 진행하며 채팅 기능이 필요할 시 웹소켓을 통해 연결하는 경우가 많습니다. 따라서 웹소켓의 개념에 대해 한번 정리해보고자 합니다.웹소켓이란웹소켓은 두 프로그램 간의 메세지를 교환하기 위한 통신 방법 중 하나입니다. 더 자세히 말하자면 W3C와 IETF에 의해 자리잡은 표준 프로토콜 중 하나입니다. 즉 현재 인터넷 환경(HTML5)에서 많이 사용됩니다.W3C와 IETF란?W3C: 월드 와이드 웹을 위한 표준을 개발하고 장려하는 조직IETF: 인터넷의 운영, 관리, 개발에 대해 협의하고 프로토콜과 구조적인 사안들을 분석하는 인터넷 표준화 작업 기구 웹소켓을 지원하는 브라우저(Chrome, Edge 등)의 경우 웹소켓 프로토콜을 지원하고 있습니다. 웹소켓의 특징1. 양방향 통신(Full-Duplex..
프로젝트를 진행하면서 WebSocket과 STOMP를 이용해서 채팅기능을 구현하였습니다. 특히 REST API를 이용하여 JWT토큰으로 사용자 인가 처리를 하기 때문에 WebSocket에서도 이를 사용하기 위해 Spring Security와 결합하였습니다. WebSocketConfig.java 설정 우선 WebSocket과 STOMP를 함께 쓰기 위해서 스프링에서는 WebSocketMessageBrokerConfigurer 인터페이스를 구현해야 합니다. @Order(Ordered.HIGHEST_PRECEDENCE + 99) @Configuration @EnableWebSocketMessageBroker // 웹소켓 메세지 핸들링 활성화 @RequiredArgsConstructor public class ..
나의 경험을 정리해 둔 자료로써, 정확히 100% 모든 로직이 완벽하다고는 하지 못하지만, react-native에서 스프링 시큐리티와 oauth2를 이용하여 소셜로그인을 구현하였다는 데에 의의를 둔다. 프로젝트를 진행하며 리액트 네이티브와 스프링 시큐리티를 이용하여 소셜로그인을 구현해야 했다. 자료를 확인하며 리액트 네이티브의 경우 소셜로그인을 지원하지 않았다. (코틀린정도만 정식으로 지원하는 듯?)그래서 어떤 분이 만드신 라이브러리를 이용하여 구현해볼까 하다가 그냥 처음부터 구현해보기로 하였다. ❗ 여기서 참고할 점은 어떤 분들은 프론트엔드에서 카카오 REST API를 통해 code를 받아온 후, 그 code를 백으로 넘겨 데이터를 받는 식으로 한 분들도 많았다. 근데 나는 spring securit..