인증과 인가(혹은 권한 부여)는 무엇이 다를까요? 인증 단계에서는 사용자의 신원을 확인합니다. 인가 및 권한 부여 단계에서는 신원이 확인된 사용자에게 리소스에 액세스할 수 있는 권한을 부여합니다.
인증과 인가가 비슷하게 들릴 수도 있지만 IAM(Identity and Access Management) 환경에서는 명확히 구분되는 보안 프로세스입니다.
인증에 대한 정의
인증은 사용자의 신원을 검증하는 행위로서 보안 프로세스에서 첫 번째 단계입니다.
인증 프로세스는 다음과 같이 구성됩니다.
- 비밀번호. 사용자 이름과 비밀번호는 가장 많이 사용되는 인증 요소입니다. 사용자가 데이터를 올바르게 입력하면 시스템은 아이덴티티가 유효하다고 판단하고 액세스를 허용합니다.
- 일회용 핀. 단일 세션이나 트랜잭션에 한하여 액세스를 허용합니다.
- 인증 앱. 액세스를 허용하는 외부 기관을 통해 보안 코드를 생성합니다.
- 생체인식. 사용자가 시스템에 액세스하기 위해 지문이나 망막 스캔을 제출합니다.
상황에 따라 인증 요소를 2가지 이상 성공적으로 확인해야만 시스템에 액세스할 수 있는 경우도 있습니다. 이러한 다중 요소 인증(MFA) 요건이 배포되어 비밀번호의 한계를 넘어 보안을 강화하는 경우도 많습니다.
인가 (권한 부여)에 대한 정의
시스템 보안에서 인가란, 사용자에게 특정 리소스나 기능에 액세스할 수 있는 권한을 부여하는 프로세스를 말합니다. 이 용어는 흔히 액세스 제어나 클라이언트 권한을 서로 대체하여 사용되기도 합니다.
대표적으로, 서버에서 특정 파일을 다운로드할 수 있는 권한을 부여하거나, 개별 사용자에게 관리자 권한으로 애플리케이션에 액세스할 수 있는 권한을 부여하는 경우가 여기에 해당합니다.
보안 환경에서 권한 인증은 항상 인증 이후에 진행되어야 합니다. 사용자가 먼저 자신의 자격 증명을 입증하면 기업의 관리자가 해당 사용자에게 요청한 리소스에 액세스할 수 있는 권한을 부여합니다.
인증과 인가의 비교
인증과 인가는 로그인 프로세스에서 서로 다른 단계입니다. 따라서 IAM 솔루션을 성공적으로 구현하려면 이 둘의 차이점을 잘 알고 있어야 합니다.
이를 비유적