1. 인증(Authentication)
인증은 누군가 또는 시스템이 실제로 그 누구인지 또는 시스템인지를 결정하는 과정입니다. 인증 기술은 사용자의 자격 증명 정보가 데이터 인증 서버의 자격 증명 정보와 일치하는지 확인하여 인증 절차를 통과한 시스템에 대해 액세스 제어를 제공합니다.
인증 유형
인증에는 여러 가지 유형이 있습니다. 자격증명 정보로서 사용자 ID와 암호만을 요구하는 방식을 SFA(단일 요소 인증)라고 합니다. SFA는 ID와 비밀번호만 알아도 쉽게 보안에 문제가 생깁니다. 그래서 최근 기업들은 로그인 시도 시 모바일 기기를 통해 사용자에게 부여하는 고유코드나 지문 등의 추가적인 인증 요소를 요구해 인증을 강화하고 있으며 이를 2FA라고 합니다.
2FA 유형에서 조금 더 보안을 강화하기 위해 사용자 ID 및 비밀번호, 생체 서명뿐만 아니라 사용자가 직접 답변해야 하는 질문을 자격증명 정보에 추가하여 3개 이상의 신원 확인 요소가 인증에 사용하며 이를 MFA라고 합니다.
인증 절차에는 acess token과 암호화 저장등 다양한 내용들이 있는데, 나중에 알아보도록 하겠습니다.
2. 인가(Authorization)
인가는 사용자에게 특정 리소스 또는 기능에 대한 액세스 권한을 부여하는 프로세스이며, 종종 액세스 제어 또는 클라이언트 권한과 같은 의미로 사용됩니다.
누군가에게 서버의 특정 파일을 다운로드할 수 있는 권한을 부여하거나 개별 사용자에게 애플리케이션에 대한 관리 액세스 권한을 제공하는 것 등이 인가의 예로 들 수 있습니다.
사용자에게 권한을 부여하기 위해서는 항상 인증 절차를 따라야 합니다. 사용자는 조직의 관리자가 요청된 리소스에 대한 액세스 권한을 부여하기 전에 먼저 사용자의 자격 증명을 확인해야 합니다.
'코딩 개발' 카테고리의 다른 글
암호화의 종류 (0) | 2022.11.07 |
---|---|
Session & Token (0) | 2022.11.07 |
API Documentation (0) | 2022.11.06 |
MYSQL - query 문은 어려워 (table 1칸에 여러개의 값) (0) | 2022.11.04 |
MySQL - table 작성 (0) | 2022.11.01 |