Spring boot 3

JWT (JSON Web Token) - 실습

1. 환경변수 설정 (CMD)32Byte 랜덤 생성 $b = New-Object 'System.Byte[]' 32 [Security.Cryptography.RandomNumberGenerator]::Create().GetBytes($b)Base64 문자열로 변환$base64 = [Convert]::ToBase64String($b)환경변수에 base64 "문자열"을 저장// 키 이름: JWT_SECRET, 값: $base64(이전 단계에서 변환한 값), User 범위로 사용하겠다는 의미[Environment]::SetEnvironmentVariable("JWT_SECRET", $base64, "User")확인 방법// 저장된 값 bash에 출력[Environment]::GetEnvironmentVariab..

Spring boot 2025.09.24

JWT (JSON Web Token) - 이론

1. 토큰 이론사용자 인증 확인 방법에는 두가지가 존재서버 기반 인증 (세션 인증): Spring Security 기본 제공토큰 기반 인증토큰 기반 인증 특징무상태성서버에서 인증 정보(토큰)을 저장할 필요 X (서버에 데이터 유지는 자원 소비가 큼)상태 관리: 클라이언트에서 사용자의 인증 상태를 유지하며 이후 요청 처리서버 입장: Client의 정보를 저장/유지 X -> 완전한 무상태(Stateless)확장성무상태성의 영향 -> 서버 확장 시 상태관리 신경 X -> 서버 확장 용이세션 기반: 각각의 API에서 인증토큰 기반: 하나의 토큰으로 요청(Request)을 보냄추가: 페이스북, 구글 등 토큰 기반 인증을 사용하는 다른 시스템에 접근 가능이를 활용해 다른 서비스에 권한 공유 가능무결성토큰..

Spring boot 2025.09.23

[Spring Boot] TDD (Test-Driven Development)

📋 Spring Boot TDD 기본 흐름TDD는 항상 3단계 사이클:Red – 실패하는 테스트 작성 (처음엔 무조건 실패해야 정상)Green – 테스트를 통과시키기 위한 최소한의 코드 작성Refactor – 코드를 예쁘게 다듬고 최적화 (테스트는 계속 통과해야 함)즉,테스트 먼저 → 코드 작성 → 리팩터링✨ Spring Boot TDD 실습 예시예를 들어, "회원가입" 기능을 만든다고 가정1. 실패하는 테스트 먼저 만들기 (Red)// src/test/java/com/example/demo/MemberServiceTest.javapackage com.example.demo;import org.junit.jupiter.api.Test;import static org.assertj.core.api.Ass..

Spring boot 2025.04.22