일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- githubactions
- springsecurity
- 스프링부트
- CI/CD
- 도커
- 스프링시큐리티
- yaml-resource-bundle
- 트랜잭션
- Spring
- 액세스토큰
- 국제화
- 티스토리챌린지
- JIRA
- 오블완
- 리프레시토큰
- springdataredis
- 백준
- 프로그래머스
- 데이터베이스
- AWS
- 메시지
- 소셜로그인
- 파이썬
- java
- 토이프로젝트
- docker
- oauth2
- 재갱신
- 스프링
- springsecurityoauth2client
- Today
- Total
목록Spring/Spring Security (3)
땃쥐네
1. 의문점 @GetMapping("user") fun user(authentication: Authentication): OAuth2User { val token = authentication as OAuth2AuthenticationToken val user = token.principal return user } 스프링 시큐리티를 사용할 때, Authentication 객체를 컨트롤러에서 바로 바인딩받아 사용할 수 있다.그런데 이 Authentication 객체는 어떻게 주입되는걸까? 2. 디버거로 찾기: 어느 HandlerMethodArguemntResolver가 작동했을까? 컨트롤러의 파라미터 바인딩 동작 확인은 어떤 HandlerMetho..
자바, 순수 코틀린 문법을 사용하다보면 스프링 시큐리티 필터체인을 작성할 때 다음과 같이 작성해야한다. @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { http .authorizeHttpRequests((authorize) -> authorize .requestMatchers("/login").permitAll() .anyRequest().authenticated() ); return http.build(); } 물론 이것도 괜찮긴 한데... 람다 표현식을 체이닝을 통해 넣어주는 식이기도 하고 가독성이 썩 좋지는 않다.import org.springframework.se..
dependencies { // spring security implementation("org.springframework.boot:spring-boot-starter-security") testImplementation("org.springframework.security:spring-security-test") } gradle의 경우 buiild.gradle 또는 build.gradle.kts maven의 경우 pom.xml 파일에 스프링부트 시큐리티 의존성을 추가 해보면 여러가지 일들이 일어난다. 이를 가장 정확히 설명하는 문서는 스프링 시큐리티의 공식 문서의 getting-started - Runtime Expectations 단락에 있다. 여기선 간단하게 당장 개발하면서 체감할 수 있는 내용만..