profile
하루 일지 보단 행동 고찰 과정에 대한 개발 블로그

[SEO-BETTER-PAY] membership 기획

✅ 1. 회원 가입 / 탈퇴이메일, 휴대폰 번호, 비밀번호 등 입력받아 등록필수 정보 유효성 검사탈퇴 요청 처리 (soft delete 또는 완전 삭제)✅ 2. 로그인 / 로그아웃로그인: ID/PW 또는 OAuth2, 인증 성공 시 토큰(JWT 등) 발급로그아웃: 토큰

2025년 3월 24일
·
0개의 댓글
·

[스프링시큐리티] 사용자 정보 조회 / 인증 상세

UserDetailsService UserDetailsService 구현 AuthenticationProvider AuthenticationProvider안에 UserDetails가 포함되어있는 것으로 AuthenticationProvider를 구현하여 적용하면

2024년 12월 19일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] 비밀번호 보안 PasswordEncoder

스프링 시큐리티의 PasswordEncoder 인터페이스는 비밀번호를 안전하게 저장하기 위해 비밀번호의 단방향 변환을 수행하는 데 사용일반적으로 PasswordEncoder는 사용자의 비밀번호를 암호화하여 저장하거나 인증 시 검증을 위해 입력한 비밀번호와 암호화 되어

2024년 12월 19일
·
0개의 댓글
·

에러 노트

발생 예외 해결 @SpringBootApplication docker compose 로 이미지 build시 에러 발생 해결 8초 동안 Thought about WeakKeyException 해결법 이 오류 메시지는 JWT 서명용 키가 잘못 설정되어 “길이 0bi

2024년 12월 18일
·
0개의 댓글
·

[스프링시큐리티] securityConfig

2024년 12월 18일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] 보안강화

: 요청에 따른 보안 기능 설정을 하여 실행Spring Security 는 여러 SecurityFilterChain @Bean 을 등록해서 다중 보안 기능을 구성 할 수 있다다중보안 설정하는 경우 각각의 SecurityFilterChain이 생기고 proxy에 Secu

2024년 12월 18일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] Servlet API, Servlet MVC 통합

스프링시큐리티는 다양한 프레임워크 및 API와의 통합을 제공하고 있으며 Servlet3 과Spring MVC와 통합을 통해 여러 편리한 기능들을 사용 할 수 있다인증 관련 기능들을 필터가 아닌 서블릿 영역에서 처리 할 수 있다1) SecurityContextHolder

2024년 12월 18일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] 인증/인가 관련 이벤트 처리

스프링 시큐리티는 인증이 성공하거나 실패하게 되면 AuthenticationSuccessEvent 또는 AuthenticationFailureEvent 를 발생시킨다이벤트를 수신하려면 ApplicationEventPublisher 를 사용하거나 시큐리티에서 제공하는 A

2024년 12월 18일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] AOP 메소드 보안

MethodInterceptor(스프링시큐리티 지원), Pointcut, Advisor, AuthorizationManager 등을 커스텀하게 생성하여 AOP 메서드 보안을 구현 할 수 있다순수한 AOP 기술만 가지고도 메서드 보안을 구현할 수 있는 것joinpoint

2024년 12월 17일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] 인가 아키텍처

인가 즉 권한부여는 특정자원에 접근할 수 있는 사람을 결정하는 것을 의미 (신원 확인 후 어떤 권한을 부여할 것인가)Spring Security 는 GrantedAuthority 클래스를 통해 권한 목록을 관리하고 있으며 사용자의 Authentication 객체와 연결

2024년 12월 17일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] 계층적 권한

: 기본적으로 스프링시큐리티에서 권한과 역할은 계층적이거나 상하관계로 구분하지 않는다.그래서 인증 주체가 다양한 역할과 권한을 부여 받아야 한다RoleHirerachy는 역할간의 계층구조를 정의하고 관리하는데 사용되며 보다 간편하게 역할간의 계층 구조를 설정하고 이를

2024년 12월 17일
·
0개의 댓글
·

[스프링시큐리티] 정적 자원 관리

정적 자원 관리 스프링시큐리티에서RequestMatcher인스턴스를등록하여무시해야할요청을지정할수있다 주로 정적자원(이미지,CSS,JavaScript파일 등)에 대한 요청이나 특정 엔드포인트가 보안필터를 거치지 않도록 설정할 때 사용 사용 방법 enum으로 정의되어있

2024년 12월 16일
·
0개의 댓글
·

[MSA] prometheus, Grafana 설치

- prometheus: metric 데이터 조회,저장 grafana: 시각화 위 두 오픈소스를 같이 설치할 수 있는 Prometheus Operator를 이용하여 설치 https://suave-zinc-9c8.notion.site/Telemetry-1ce6909121

2024년 12월 3일
·
0개의 댓글
·

[MSA] Axon Framework CQRS, API Aggregation

Aggregate(command model): 어그리게이트는 상태를 관리하고 명령(command)을 처리하여 이벤트를 생성한다. Default 생성자는 Axon에서 리플렉션을 통해 Aggregate를 초기화할 때 필요하다. 동작 Command: 명령이 Aggregate

2024년 11월 29일
·
0개의 댓글
·

[MSA] Event Sourcing, Event Driven, Event Driven Architecture

이벤트를 발행(produce)하고 비동기 방식으로 필요한 곳에서 consume 한다발생(produce)는 누락될 가능성이 거의 없다 (성공률이 높다)이벤트 자체만으로는 어떤 도메인과도 직접적인 의존성이 없는 느신한 결합을 가능하게 만든다Event Sourcing는 데이

2024년 11월 29일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] 인가 - 요청 / 메서드 기반 권한 부여

요청 기반 권한 부여HttpSecurity.authorizeHttpRequests() 클라이언트 요청(일반적으로 브라우저로 URL로 요청하는 것) request(경로 등)를 통해서 서버가 어떤 권한을 부여할 것인지 모델링 하는 것 HttpSecurity 인스턴스를 사

2024년 11월 3일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] sameSite

sameSite: 크로스 사이트 간 쿠키 전송에 대한 제어를 핸들링하는 것쿠키 설정할 때 지정.스프링시큐리티에서는 SameSite 속성에 대한 지원을 제공하지 않지만 spring Session에서는 해당 속성을 지원한다.Strict : 사용자가 A서비스에 접속을하여 서

2024년 11월 3일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] 사이트 간 요청 위조 | 2. CSRF (Cross Site Request Forgery)

웹 사이트는 사용자가 이미 인증을 받았기 때문에 인증받은 쿠키로 접속을 하면 누가 됐든 인증 받은 상태로 인식한다. 사용자의 브라우저가 자동으로 보낼 수 있는 인증 정보 예를 들어 쿠키나 기본 인증 세션등과 함께 공격용 페이지와 함께 웹사이트로 요청이 된다 위와 같은

2024년 11월 1일
·
0개의 댓글
·
post-thumbnail

[스프링시큐리티] 악용 보호 | 1. CORS (cross origin resource sharing)

CORS : 동일 출처 정책

2024년 11월 1일
·
0개의 댓글
·

[MSA] 페이 결제 프로젝트 Transaction 단위 설계 (SAGA 패턴 )

📍고민 1. 내부 API와 외부 오픈뱅킹 API가 하나의 프로세스 일 때 Transaction 처리 Money Payment > - Money-service : 사용자와 밀접한 관계 (페이 지갑에 들어가는 머니를 관리하는 모듈로 머니의 단순 차/가감을 관리하며 머

2024년 10월 31일
·
0개의 댓글
·