본문 바로가기

springboot4

[Spring Boot] ssl 적용 frontend에서 ssl을 적용하여 https 프로토콜을 사용하는 순간, 콘솔에서 api 서버가 https 가 아니라 안전하지 않다는 에러를 계속 뿌렸다. 또, network 탭에서는 preflight 가 계속 error였다. 아무리 화면은 잘 나온다고 해도 에러를 지나치는건 굉장히 불편하다.! 그래서 spring boot api 서버에도 ssl 을 적용하기로 했다. 1. Key 파일 로 Springboot key 만들기 (certbot etc.) frontend 쪽에서 만든 아래와 같은 key 파일이 있어서, 아래 파일을 활용하여 도메인을 적용해보았다. key 만드는 것 부터 필요하다면 certbot 을 사용하면 된다.! 참고 : SpringBoot 무료 SSL 인증서 적용하기 (Certbot) Op.. 2023. 4. 3.
[SpringBoot] JPA란? -- 목차 -- JPA 란 - Hibernate - 영속성 컨텍스트 ORM 이란 JPA의 동작 과정 JPA를 사용해야 하는 이유(장,단점) JPA란 Java persistence API 현재 자바 진영의 ORM 기술 표준 스펙을 정의한다. JPA의 스펙은 자바의 객체와 데이터베이스를 어떻게 매핑하고 동작해야 하는지를 정의하고 있다. 인터페이스의 모음이다. 즉, 실제로 구현되는 것이 아니라 구현된 클래스와 매핑을 해주기 위해 사용되는 프레임워크이다. 대표적인 Framework : Hibernate 과거 자바 표준(Entity Bean)으로, EJB라는 것이 있다. JPA 이전의 ORM기술이다. 단점 코드가 매우 지저분 하다. API의 복잡성이 높다. (interface를 많이 구현해야 함) 속도가 느리다... 2022. 7. 22.
[Security] JWT생성과 로그인, 권한 관리 스프링 시큐리티(JWT) 로그인 로직 이제부터 시큐리티를 사용해서 로그인 및 jwt를 사용할 것이다. - 사용자 정보를 담은 UserDetails 인터페이스 생성 - DB에서 사용자 정보를 직접 가져오는 UserDetailsService 인터페이스 구현 - 사용자 정보를 불러오는 loadUserByUsername() 메소드를 Override - username 으로 user를 찾아와서 UserDetails 타입으로 반환한다. - UserDetailsService(UserDetails) - repository에 findByUsername 메서드 생성 - UsernamePasswordAuthenticationFilter 생성 - Form based Authentication 방식으로 인증을 진행할 때 아이디.. 2022. 6. 28.
[Security] JWT를 위한 Security 설정 초기 셋팅은 일단 넘어가고 아래 처럼 Security 설정을 하도록 한다. pom.xml이나 application.yml (초기 셋팅) 이 궁금하면 깃헙 일단 참고참고! 전체 구조 1. Model객체 생성 User.java package com.cos.jwt.model; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import lombok.Data; @Data .. 2022. 6. 28.