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
- node
- ROT13
- js
- Query
- 자바스크립트
- typeorm
- vanila js
- 피보나치 수
- javascript
- kakao
- nestjs
- Bandit
- REST API
- RestAPI
- html
- tr명령어
- 모던 자바스크립트
- 백준
- 카카오
- mutation
- linux
- graphql
- 실패율
- JavaStritp
- await
- 코딩태스트
- typescript
- 자바스크립트의 역사
- 프로그래머스
- 코딩테스트
Archives
- Today
- Total
꿀 떨어지는 코딩 양봉장
Authentication(인증) & Authorization(허가)가 무엇인가? 본문
Authorization(허가), Autentication(인증)은 대부분의 애플리케이션에서 필수적인 부분들입니다.
Authentication(인증) & Authorization(허가)가 무엇인가?
1. Authentication(인증)
사용자가 누구인지에 대해서 확인하는 절차입니다(로그인 또는 회원가입을 하는 것)
2. Autorization(허가)
사용자에 대한 권한을 허락하는 것입니다.
왜 필요할까?
서비스를 사용하는 사용자가 누구인지? 언제? 어디서? 어떻게? 사용하고 있는지 파악하기 위해서입니다.
Authentication(인증)
인증은 사용자가 누구인지(identifacation)을 확인하는 절차입니다.
예를 들면 사용자의 아이디와 비밀번호를 확인하는 과정입니다.
- 사용자의 비밀번호는 절대로 그대로 DB에 저장하지 않습니다.
- DB를 해킹당하면 사용자의 정보가 그대로 노출되고 개발자가 사용자의 정보를 볼 수 있습니다.
Authorization(허가)
허가란 요청한 request를 실행할 수 있는 권한이 있는 사용자인지 확인하는 절차입니다.
예를 들어 쇼핑몰 사이트가 있다고 생각해봅시다. 관리자와 고객이 사용할 수 있는 요청 권한이 다를 것입니다.
관리자는 상품의 가격을 조정하는 요청을 보낼 수 있지만 고객은 그럴 수 없습니다.
Authorization 방법
- Authentication(인증) 절차를 통해서 사용자에게 access_token을 발급합니다.
- 사용자가 request(요청)을 보낼 때 access_token을 같이 보냅니다.
- 서버에서 사용자가 첨부한 access_token을 검사합니다.
- 유저가 권한을 가지고 있다면 요청을 처리합니다.
'Language > NestJS' 카테고리의 다른 글
NestJS Lifecycle Events (0) | 2023.08.20 |
---|---|
NestJS와 Graphql Subscription (0) | 2022.02.03 |