편의점 재고 불러오기 고찰
·
개인 프로젝트 정리
편의점 재고를 불러오는 기능을 구현시에 이렇게 추상화 하였다. 이러면 장점은 편의점 입장에서 ProductProvider의 getProduct() 메소드만 사용하면 product를 file에서 읽어오든 구글sheet에서 불러오든 재고를 불러올 수 있는 기능을 사용하는 것은 똑같다.
JWT Authentication 객체
·
카테고리 없음
1. principal의미 : 현재 인증된 사용자의 주요 정보입니다.일반적으로 포함되는 값 : 사용자 이름, 사용자 ID, 또는 사용자에 대한 식별 정보입니다.UserDetails 인터페이스를 구현한 객체나 간단한 String으로 나타낼 수 있다. 예시 : CustomUserDetails를 통해 사용자의 ID, 이메일 , 닉네임 등 구체적인 정보가 담길 수 있다. 2. credentials의미 : 인증에 사용되는 자격 증명이다.일반적으로 포함되는 값 : 비밀번호, JWT 토큰 등으로 표현된다. 하지만 인증이 완료되면 보안을 위해 보통 null로 설정된다. 로그인 시 비밀번호가 설정되거나 , JWT 토큰을 통해 인증할 때 JWT가 저장될 수 있다. 3. authorities의미 : 사용자가 가진 권한 목록..
TCP/IP 이해
·
CS
1. Connection oriented두 개 엔드포인트(로컬, 리모트) 사이에 연결을 먼저 맺고 데이터를 주고받는다. 여기서 'TCP 연결 식별자'는 두 엔드포인트의 주소를 합친 것으로, 형태이다. 2. Bidrectional byte stream양방향 데이터 통신을 하고, 바이트 스트림을 사용한다. 바이트 스트림이란?- 1바이트(8비트)씩 데이터를 전송한다.- 이진 데이터를 처리할 수 있어 이미지, 오디오, 비디오 같은 파일을 다루기 적합- 문자 집합에 의존하지 않음 : 문자가 아닌 데이터를 다룰 때 유리하다.- 입출력 스트림(InputStream, OutputStream) 계열 클래스에서 사용된다. 바이트 스트림 사용 예시- 파일 복사: 이미지 , 동영상 등 텍스트가 아닌 파일을 처리할 때 주로 ..
스프링 시큐리티 JWT
·
카테고리 없음
스프링 시큐리티 필터 동작 원리 스프링 시큐리티는 클라이언트의 요청이 여러개의 필터를 거쳐 DispatcherServlet(Controller)으로 향하는 중간 필터에서 요청을 가로챈 후 검증(인증/인가)를 진행한다. 클라이언트 요청 -> 서블릿 필터 -> 서블릿(컨트롤러)   getPrincipal () 과 getAuthorities () 모두 Authentication 객체에서 사용자 인증 정보와 권한 정보를 가져오기 위한 메서드입니다. Spring Security가 인증 절차를 통해 Authentication 객체를 생성할 때 이 두 메서드가 설정되는데 , 둘은 각각 다른 역할을 가지고 있습니다.  1. getPrincipal ()- 역할 : getPrincipal () 은 인증된 사용자의 주체, ..
spring security 총정리(10) - (DefaultLoginPageGeneratingFilter,
·
카테고리 없음
Spring Security에서 로그인 페이지나 에러 페이지와 같은 기본 페이지를 필터에서 응답하는 이유는 Spring Security의 구조와 동작 방식 때문입니다. 구체적으로는, Spring Security가 요청을 필터 체인에서 먼저 처리하고, 보안 관련 요청을 컨트롤러 레이어까지 전달하지 않기 위해 기본 페이지를 필터에서 응답합니다.DefaultLoginPageGeneratingFilter는 이러한 보안 관련 기본 페이지를 생성하고 응답하는 역할을 수행하는 Spring Security의 필터입니다.왜 필터에서 기본 페이지를 응답하는가?Spring Security의 아키텍처:Spring Security는 필터 기반 보안 구조로 설계되어 있습니다. 요청이 서버에 도달하면, Spring Security..
스프링 시큐리티 총 정리(9) - (UserNamePasswordAuthenticationFilter)
·
카테고리 없음
UserNamePasswordAuthenticationFilter 목적 이 필터는 DefaultSecurityFilterChain에 기본적으로 등록되는 필터로 여덟 번째에 위치한다. 이 필터가 등록되는 목적은 POST : "/login" 경로에서 Form 기반 인증을 진행할 수 있도록multipart/form-data 형태의 username/password 데이터를 받아 인증 클래스에게 값을 넘겨주는 역할을 수행한다. 커스텀 SecurityFilterChain을 생성하면 자동 등록이 안되기 때문에 아래 구문을 통해서 필터를 활성화시켜야 한다. http             .formLogin(Customizer.withDefaults());  UsernamePasswordAuthenticationFilt..