Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- cheerio
- SpringRESTDocs
- AuthenticatoinProvide
- gradle
- SpringBoot
- Filter
- OpenStack
- Flyway
- Crawling
- JavaScript
- UsernamePasswordAuthenticationFilter
- Spring Security
- Spring REST Docs
- Pender
- MSA
- T-OTP
- vue
- 리액트
- Reduxpender
- vuejs
- Spring Batch
- preventdefault
- tasklet
- SWAGGER
- MFA
- stopPropogation
- openapi3
- REACT
- cloud native
- axios
Archives
- Today
- Total
Miracle Morning, LHWN
21. MFA (Multi-Factor Authentication) 본문
MFA (Multi-Factor Authentication)
기본 인증 외에 추가적인 인증을 통해 보안을 강화하는 기능을 말하며, 사용자의 서비스 접근에 있어 높은 보안을 제공한다.
인증 요소 유형 (Type of Authentication Factors)
- Knowledge : 사용자가 알고 있는 것. e.g) username, password, PIN 등
- Possession : 사용자가 가지고 있는 것. e.g) safety token
- Heritage : 사용자 그 자체의 것. e.g) fingerprint, retina verification, voice recognization
- Place : 사용자의 물리적인 위치
- Time : 인증을 위한 시간 기반의 기능 제공 e.g) OTP
다요소 인증 유형 (Type of Multi-Factor Authentication)
- SMS Token Authentication : 등록된 휴대폰 번호로 PIN 번호를 전송하여 입력 받아 인증한다.
- Email Token Authentication : 기본적인 방식은 SMS 토큰 인증과 동일하다. 다만, PIN 번호를 받는 매체가 SMS 가 아닌 전자메일 즉 Email 을 활용하는 것이 차이점이다.
- Hardware Token Authentication : 별도의 하드웨어를 통한 토큰 인증으로 동글 (Dongle) 형태의 기기가 제공된다. USB, USB-C 포트에 삽입하여 인증을 지원한다. 또는 별도의 OTP 기기를 활용한다.
- Software Token Authentication : 보안 토큰을 모바일 기기 등을 통해 제공한다. Google Authentication 과 같이 서비스와 밀접하게 묶여 근본적으로 스마트 기기에 토큰을 제공한다.
- Phone Authentication : 무작위로 OTP 를 발생하여 SMS 나 전화를 통한 인증이 있다.
- Biometric Verification : 생체 인식을 통하는 방법으로 지문, 안면인식, 음성인식 등이 있다.
T-OTP (Timebased-One Time Password)
시간 기반의 임시 비밀번호 생성의 원리는 아래와 같다.
인증을 하는 쪽과 제공하는 쪽에 동일한 암호를 생성하는 프로그램을 가지고 있다고 가정한다.
특정 정보(이용자의 Username) 를 활용하여 'Secret Key + Secret Key 를 생성한 시간을 환산한 값' 의 조합으로 OTP 번호를 발생하도록 하고, 해당 Secret Key 를 OTP 앱에 등록하면 동일하게 OTP 번호를 발생한다. 이 둘의 합이 동일하면 인증이 완료된다.
따라서 Secret Key 는 본인 외에 노출되면 안되며, 인증을 하는 쪽과 인증을 제공하는 쪽의 시간이 일치하지 않을 경우 인증에 문제가 될 수 있다.
출처 : https://fastcampus.co.kr/courses/204729/clips/
'IT 기술 > [JAVA] Spring Boot' 카테고리의 다른 글
18-3. Spring Security 에 대해 (3) (0) | 2021.06.25 |
---|---|
20. Spring Batch 를 활용한 데이터 일괄 처리 (0) | 2021.06.25 |
18-2. Spring Security 에 대해 (2) (0) | 2021.06.15 |
19. Spring Security 를 활용하여 OpenStack 연동해보기 (0) | 2021.06.02 |
18-1. Spring Security 에 대해 (1) (0) | 2021.06.01 |
Comments