IT공부

Authentication(인증)과 Authorization(권한부여, 인가)의 차이

지식루프 2025. 2. 6. 15:18
728x90
반응형

Authentication(인증)과 Authorization(권한부여, 인가)의 차이

**Authentication(인증)**과 **Authorization(권한부여, 인가)**는 보안 시스템에서 사용자 접근을 관리하는 핵심 개념입니다.
이 둘은 종종 혼용되지만, 각각의 역할과 기능이 다릅니다.


1. Authentication(인증) – "누구인가?"

🔹 정의:

  • 사용자가 누구인지 확인하는 과정
  • 사용자가 시스템에 접근하려 할 때, 신원을 확인하는 절차

🔹 수행 방식:

  • ID와 비밀번호 입력 (예: 로그인 시 사용자명과 비밀번호 입력)
  • OTP(일회용 비밀번호), 인증 코드
  • 생체 인식 (지문, 얼굴 인식, 홍채 스캔 등)
  • 소셜 로그인 (Google, Facebook 인증 등)

🔹 예시:

  • "이 사용자는 실제 등록된 계정의 사용자인가?"
  • 로그인 시 ID/PW 입력 → 맞으면 인증 완료
  • 지문 인식을 통해 본인이 맞는지 확인

🔹 핵심 포인트:
인증(Authentication)은 사용자의 신원을 확인하는 과정이며, '누구인지'를 검증하는 단계


2. Authorization(권한부여, 인가) – "무엇을 할 수 있는가?"

🔹 정의:

  • 인증된 사용자가 특정 리소스나 기능에 접근할 수 있는 권한이 있는지를 결정하는 과정
  • 인증을 통과한 사용자에게 어떤 기능을 허용할 것인지 결정

🔹 수행 방식:

  • 역할(Role) 기반 접근 제어 (RBAC, Role-Based Access Control)
  • 권한 레벨 설정 (예: 관리자, 일반 사용자, 손님 등)
  • ACL(Access Control List, 접근 제어 목록) 기반 접근 제한

🔹 예시:

  • "이 사용자가 이 문서를 수정할 수 있는가?"
  • "이 사용자는 관리자 페이지에 접근할 수 있는가?"
  • 관리자만 삭제 권한이 있고, 일반 사용자는 읽기만 가능한 경우

🔹 핵심 포인트:
권한부여, 인가(Authorization)는 사용자가 특정 작업을 수행할 수 있는지 결정하는 과정이며, ‘무엇을 할 수 있는가’를 정의함


3. Authentication vs Authorization(권한부여, 인가) 비교

 

개념 Authentication(인증) Authorization(권한부여, 인가)
목적 사용자가 누구인지 확인 사용자가 특정 리소스에 접근할 수 있는지 결정
진행 시점 로그인 과정에서 수행됨 로그인 이후 접근할 수 있는 리소스 결정
필요 요소 ID/PW, OTP, 생체 인증 등 사용자 역할(Role), 정책, 권한 리스트
예시 로그인할 때 비밀번호 입력 관리자만 데이터 삭제 가능
관계 권한부여, 인가 전에 반드시 인증이 필요 인증이 완료된 후 적용

4. 인증(Authentication) 없이 권한부여, 인가(Authorization) 가능할까?

🚫 아니요!

  • 인증(Authentication)이 완료된 사용자에게만 권한부여, 인가(Authorization)를 적용할 수 있음.
  • 익명의 사용자는 접근 권한을 받을 수 없음.

예외적인 경우:

  • 웹사이트에서 로그인 없이 공개 자료 열람 가능 (이 경우 기본적인 읽기 권한만 부여된 상태)
  • API에서 API 키 없이 일부 공공 데이터 제공 (읽기 권한 부여)

📌 결론

Authentication(인증): 사용자가 누구인지 확인
Authorization(권한부여, 인가): 인증된 사용자가 무엇을 할 수 있는지 결정

💡 인증이 먼저 이루어지고, 이후 권한부여, 인가가 진행됨.
💡 모든 시스템에서는 인증과 권한부여, 인가를 적절히 조합하여 보안을 강화해야 함.

728x90
반응형