보안

인증(Authentication)과 인가(Authorization)의 차이점

♠디지털 모험일지♠ 2024. 12. 8. 20:39
728x90
반응형
SMALL

인증(Authentication)과 인가(Authorization)의 차이점

인증과 인가는 모두 보안 시스템에서 중요한 개념으로, 사용자가 누구인지 확인하고 그들이 특정 자원에 접근할 수 있는 권한을 가졌는지 판단하는 과정입니다. 둘은 혼동하기 쉽지만, 역할과 목적이 완전히 다릅니다.


1. 인증 (Authentication)

정의

  • 인증은 사용자가 "누구인지 확인하는 과정"입니다.
  • 시스템은 사용자가 자신이 주장하는 본인인지 확인하기 위해 비밀번호, 인증 코드, 생체 정보 등을 요구합니다.

목표

  • 신원 확인: 사용자가 시스템에 접근하기 전에 신원을 증명.
  • 웹사이트 로그인 시, 이메일과 비밀번호 입력.
  • 지문, 얼굴 인식 등 생체 인증.

방식

  • 무엇을 알고 있는가? (What you know) 비밀번호, PIN 코드와 같은 지식 기반 인증.
  • 무엇을 가지고 있는가? (What you have) OTP(일회용 비밀번호), 인증 토큰 등 소유 기반 인증.
  • 무엇인가? (What you are) 지문, 얼굴 인식, 홍채 스캔 등 생체 기반 인증.

실제 사례

  • 사용자가 이메일과 비밀번호로 로그인.
  • 지문 인식을 통해 스마트폰 잠금 해제.

용어 정리

용어 설명
OTP (One-Time Password) 한 번만 사용할 수 있는 임시 비밀번호. 모바일 앱이나 이메일로 제공됨.
생체 인증 (Biometric Authentication) 지문, 얼굴, 홍채와 같은 신체적 특징을 사용해 사용자를 확인하는 방법.
2FA (Two-Factor Authentication) 두 가지 인증 요소를 사용하는 방법. 예: 비밀번호 + OTP.

2. 인가 (Authorization)

정의

  • 인가는 사용자가 특정 "권한이 있는 작업이나 자원에 접근할 수 있는지 확인하는 과정"입니다.
  • 인증이 완료된 사용자에 대해 "무엇을 할 수 있는지" 결정합니다.

목표

  • 접근 권한 관리: 사용자가 시스템에서 허용된 작업만 수행하도록 제한.
  • 일반 사용자는 특정 페이지에 접근할 수 없지만, 관리자는 접근 가능.
  • 사용자 계정에는 읽기 전용 권한이 있지만, 관리자 계정은 쓰기 권한도 있음.

방식

  1. 역할 기반 접근 제어 (RBAC: Role-Based Access Control)
    • 사용자의 역할에 따라 접근 권한을 설정.
    • 예: "일반 사용자", "관리자", "슈퍼 관리자".
  2. 규칙 기반 접근 제어 (ABAC: Attribute-Based Access Control)
    • 사용자 속성과 요청 조건에 따라 접근 결정.
    • 예: "평일 오전 9시~오후 6시만 접근 허용".
  3. 리소스 기반 제어
    • 특정 리소스에 대해 사용자의 권한을 설정.
    • 예: 파일 읽기, 쓰기, 삭제 권한.

실제 사례

  • 인증 후, 사용자가 "읽기" 권한만 있는 경우 파일 수정 불가.
  • 관리자만 특정 데이터베이스 항목 삭제 가능.

용어 정리

용어 설명
RBAC (Role-Based Access Control) 역할 기반으로 권한을 관리하는 방식. 예: "관리자"는 모든 권한을 가짐, "사용자"는 제한된 권한만 가짐.
ABAC (Attribute-Based Access Control) 사용자 속성과 조건에 따라 권한을 관리하는 방식. 예: 특정 시간에만 작업 허용.
리소스 (Resource) 시스템이 관리하는 데이터나 파일, 서비스 등을 의미. 예: 데이터베이스, 파일, API.

3. 인증과 인가의 차이

특성 인증 (Authentication) 인가 (Authorization)
질문 "당신은 누구입니까?" "당신이 이것을 할 수 있습니까?"
목적 사용자의 신원을 확인 사용자가 특정 작업이나 자원에 접근 가능한지 결정
순서 인증이 먼저 수행됨 인증 후에 수행됨
기술 비밀번호, OTP, 생체 인증 등 RBAC, ABAC, 권한 목록 관리
예시 웹사이트 로그인, 지문 인식 관리자는 파일 삭제 가능, 일반 사용자는 읽기만 가능
결과 "이 사용자는 Alice입니다." "Alice는 이 파일에 접근할 수 없습니다."

4. 요약

  • 인증 (Authentication) : "당신이 누구인지 확인".

    • 비밀번호, OTP, 생체 인증 등으로 신원 확인.
  • 인가 (Authorization) : "당신이 무엇을 할 수 있는지 결정".

    • 역할, 속성, 리소스 기반으로 접근 권한 관리.
반응형
SMALL