[JWT] io.jsonwebtoken.SignatureException: JWT signature does not match locally computed signature. JWT validity cannot be asserted and should not be trusted.
·
Server/Error
JWT signature does not match locally computed signature.에러 위의 에러는 토큰이 맞지 않을 때(만료되거나 키가 변경되었거나 등등) 발생한다. 하지만 토큰을 바로 생성해서 인증을 했음에도 불구하고 해당 에러가 계속해서 발생하여 디버깅을 하게 되었다. 1. 로그인 후 토큰 발급 2. 발급 받은 토큰을 이용하여 인증 JwtFilter.java 확인 JwtUtil.java 확인 원인 찾기 isExpired에 token이 잘 넘어 오는 것을 확인 했으므로 이곳을 기점으로 디버깅을 실행시켜봤다. 원인 발견 괄호를 안닫았다 하하하 해결 오타를 잘 찾읍시다.
[Spring Security] config 설정 2
·
Server/Spring&Spring Boot
수업 중 진행한 Config를 기준으로 Spring Security 설정 관련된 체인들을 설명하는 글입니다. 과정 configuration 패키지 생성 SecurityConfig 클래스 생성 어노테이션 추가 @EnableWebSecurity @Configuration SecurityFilterChain 추가 추가하지 않을 경우 deny 401 에러 발생 @Bean 추가 EncrypterConfig 클래스 생성 어노테이션 추가 @Configuration BCryptPasswordEncoder SecurityConfig에 생성하지 말 것. @Bean 추가 EncrypterConfig.class @Configuration public class EncoderConfig { @Bean public BCryptP..
[Spring] @RequestBody 바인딩 시, 기본 생성자(@NoArgsConstructor)의 변덕과 필요한 이유
·
Server/Spring&Spring Boot
사건의 발단 문제의 UserLoginReuqst dto @AllArgsConstructor @Getter public class UserLoginRequest { private String userName; private String password; } 사건 내용 @RequestBody로 데이터를 불러오던 중 Type definition error: [simple type, class com.study.domain.dto.UserLoginRequest]; nested exception is com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `com.study.domain.dto.UserLo..
[Spring Security] config 설정 1
·
Server/Spring&Spring Boot
수업 중 진행한 Config를 기준으로 Spring Security 설정 관련된 체인들을 설명하는 글입니다. 과정 configuration 패키지 생성 SecurityConfig 클래스 생성 어노테이션 추가 @EnableWebSecurity @Configuration SecurityFilterChain 추가 추가하지 않을 경우 deny 401 에러 발생 @Bean 추가 EncrypterConfig 클래스 생성 어노테이션 추가 @Configuration BCryptPasswordEncoder SecurityConfig에 생성하지 말 것. @Bean 추가 SecurityConfig.class Spring Security 설정을 검색해보면, WebSecurityConfigurerAdapter을 상속받아 설정을..
[Docs] Swagger 도입
·
Server/Spring&Spring Boot
Swagger? 스웨거(Swagger)는 개발자가 REST 웹 서비스를 설계, 빌드, 문서화, 소비하는 일을 도와주는 대형 도구 생태계의 지원을 받는 오픈 소스 소프트웨어 프레임워크이다. 의존성 추가 dependencies { implementation 'io.springfox:springfox-boot-starter:3.0.0' } Swagger 3.x.x 버전 spring boot 2.6.x 호환 이슈 application.yml 또는 application.properties 등에 다음과 같은 내용을 추가한다. Spring boot 설정이 변경되면서 호환 이슈가 발생되었다고 한다. spring: mvc: pathmatch: matching-strategy: ant_path_matcher Swagger..
[error] com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
·
Server/Error
잘 되던 MySQL이 새로운 프로젝트를 만들자 먹통이 되었다. 연결이 잘 되지 않는다는 에러인 듯하여 먼저 도커에 올라가 있는 MySQL을 내리고 실행하였으나 동일 문제가 발생하였다. 두 번째로 spring-boot-starter-jdbc dependency를 추가하였으나 역시 문제가 여전했다. 이후 yml에 설정된 DB 정보를 보니, 아니나 다를까 역시 오타 문제였다. 내가 지정한 MySQL의 포트번호는 3306이다.
[Spring Security] 기본 유저, 비밀번호 변경
·
Server/Spring&Spring Boot
스프링 시큐리티 기본 계정 스프링 시큐리티의 dependency를 추가하면, 애플리케이션 구동 시 다음과 같은 로그인 화면이 등장한다. 기본적으로 Username = user 이며 패스워드는 애플리케이션 구동 시 콘솔에 등장한다. 매번 구동할 때마다 랜덤한 난수를 반환해주는데, 이게 귀찮을 경우 user name과 password를 고정시킬 방법이 있다. 스프링 시큐리티 계정 변경 application.yml에서 다음과 같이 입력한다. # 스프링 시큐리티 security: user: name: password: yml에 내용 저장후 다시 애플리케이션을 구동하면 입력한 정보를 통해 로그인을 할 수 있다. 참조 Spring Security 기본 User/Password 설정 Spring Security 의존..
[테스트 코드] Controller Test, MockMVC
·
Server/Spring&Spring Boot
과정 수업 시간 중, Controller Test를 진행했습니다. Repository 테스트와는 달리 새로운 개념, 메서드 등이 대거 등장하면서 모르는 부분들이 많아 정리를 하였습니다. 단위 테스트 단위 테스트는 프로젝트에 필요한 모든 기능에 대한 테스트를 각각 진행하는 것을 의미 일반적으로 스프링부트에서는 org.springframework.boot:spring-boot-starter-test 디펜던시만으로 의존성을 모두 가질 수 있다. F.I.R.S.T 원칙 Fast: 테스트 코드의 실행은 빠르게 진행되어야함 Independent : 독립적인 테스트가 가능해야함 Repeatable : 테스트는 매번 같은 결과를 만들어야 함 Self-Validating : 테스트는 그 자체로 실행하여 결과를 확인할 수..
코드플리
'Server' 카테고리의 글 목록 (14 Page)