1. 베이직반 강의 로그인/회원가입 청강
안그래도 로그인과 회원가입 부분이 스스로 모자라다고 느끼던 차에, 베이직반이 관련 강의를 해주신다고 해서 청강하기로 했다. 이론적인 부분을 다시한번 짚고 넘어갈 수 있어 좋았다.
Spring Framework
애플리케이션 프레임워크란?
- 개발자가 응용 소프트웨어의 표준 구조를 구현하기 위해 사용하는 소프트웨어 프레임워크로 구성된다.
- 특정 운영체제를 위한 응용 프로그램 표준 구조를 구현하는 클래스와 라이브러리 모임이다.
- 재사용 가능한 수많은 코드를 프레임워크로 통합시켜 표준 코드를 따로 작성하지 않아도 같이 사용된다.
- 일관된 개발을 지원하고, 경계설정을 강제함으로서 아래의 이익을 얻게 된다.
- 모듈성 Modularity
- 재사용성 Reusability
- 확장성 Extensibility
- 단순성 Simplicity
- 유지관리성 Maintainability
- bean 만 흐름에 맞게 전달하면 api명세 - 비즈니스 로직 설계 - 데이터베이스 저장 순서대로 작업이 진행된다.
Spring Security
Spring Security Architecture (링크)
Web Security
사용자 Custom Filter
FilterChainProxy에서 url 기반 Filter 적용하기
JWT token
- JSON 웹 토큰(JSON Web Token, JWT) 이란? :
- 선택적 서명 및 암호화를 사용하여 데이터를 만들기 위한 인터넷 표준이다.
- 장점 / 단점
- 장점
- 간편성 및 효율성 : 쉽게 생성 및 전송이 가능, 텍스트 기반이므로 크기가 작아 전송 및 저장에 효율적이다.
- 자가 수용(Self-contained) : 필요한 모든 정보를 자체적으로 포함하기에 서버에서 검증에 필요한 모든 정보를 가진다. 이는 서버에서 데이터베이스 조회를 최소화해 성능을 향상시킨다.
- 분산 인증(Distributed Authentication) : 분산된 시스템에 적합함, 인증정보를 효과적으로 공유가능.
- 표준화 및 널리 지원 : JWT는 표준 규격, 많은 언어 및 프레임워크에서 지원해 다양한 환경에서 가용 가능.
- 단점
- 무결성만을 보장하며, 기밀성은 보장하지 않음 : 내용 자체는 암호화가 되어있지 않아 별도의 암호화 필요.
- 크기 증가 : 필요정보를 토큰에 포함하므로 크기가 증가, 요청이 늘어날수록 대역폭 낭비.
- 재발급 및 취소 문제 : JWT는 발급 후 유효기간 만료까지 계속 사용, 취소 및 갱신에 추가 매커니즘 필요함.
- 보안 취약 : 악의적 사용자가 토큰을 탈취하면 인증 우회 가능, 안전하게 보관/전송하는 매커니즘 필요함.
- 장점
- 페이로드는 몇몇 클레임(claim) 표명(assert)을 처리하는 JSON을 보관하고 있다.
- 토큰은 비공개 시크릿 키 또는 공개/비공개 키를 사용하여 서명된다.
- 토큰의 구성
- Header (토큰의 사용법 지정)
- alg : Signature에서 사용하는 알고리즘
- typ : 토큰 타입
- Payload (사용자 정보를 담는다)
- sub : 토큰 제목(subject)
- aud : 토큰 대상자(audience)
- iat : 토큰이 발급된 시각 (issued at)
- exp : 토큰의 만료 시각 (expired)
- Signature (암호화)
-
헤더와 페이로드의 문자열을 합친 뒤, 헤더에서 선언한 알고리즘과 key를 이용해 암호화한 값이다.
- Header (토큰의 사용법 지정)
JWT Token process
“서버가 상태를 가지지 않는다”가 중요한 장점
참고 링크
2. Kotlin 4주차
Kotlin 4주차
접근제한자 접근이란 ? : 객체를 이용해서 변수나 메소드를 호출할 수 있는지의 여부. 외부에서 데이터에 무분별하게 접근하는 것을 막기 위해 사용. 내부에서 작업을 위해 사용되는 변수나 부
ds-36500.tistory.com
'TIL ~ 24.04.05' 카테고리의 다른 글
20240205 TIL (0) | 2024.02.05 |
---|---|
20240202 TIL (0) | 2024.02.02 |
20240131 TIL (0) | 2024.01.31 |
20240130 TIL (0) | 2024.01.30 |
20240129 TIL (0) | 2024.01.29 |