역할 기반 액세스 제어(RBAC)란?

역할 기반 액세스 제어(RBAC)를 이용하면 조직 내에서의 사용자의 역할만을 기반으로 데이터에 대한 사용자 액세스를 허용하거나 제한할 수 있습니다.

학습 목표

이 글을 읽은 후에 다음을 할 수 있습니다:

  • 역할 기반 액세스 제어(RBAC)의 작동 방식을 알아보세요
  • RBAC와 속성 기반 액세스 제어, 규칙 기반 액세스 제어 등 다른 유형의 액세스 제어와의 비교

관련 콘텐츠


계속 알아보시겠어요?

인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!

Cloudflare가 개인 데이터를 수집하고 처리하는 방법은 Cloudflare의 개인정보 취급방침을 참조하세요.

글 링크 복사

역할 기반 액세스 제어(RBAC)란?

역할 기반 액세스 제어(RBAC)는 회사의 IT 시스템 내에서 사용자가 수행할 수 있는 작업을 제어하는 방법입니다. RBAC는 각 사용자에게 하나 이상의 "역할"을 할당하고 각 역할에 서로 다른 권한을 부여하여 이를 수행합니다. RBAC는 단일 소프트웨어 애플리케이션 또는 여러 애플리케이션에 적용할 수 있습니다.

역할 기반 액세스 제어의 예

여러 사람이 사는 집을 생각해보세요. 각 거주자는 현관문을 여는 열쇠의 복제본을 받습니다. 그들이 받는 현관문을 여는 열쇠는 다르게 설계된 것이 아닙니다. 뒷마당에 있는 창고와 같이 재산의 다른 부분에 접근해야 하는 경우 두 번째 열쇠를 받을 수 있습니다. 어떤 거주자도 창고 전용 열쇠나 창고와 현관문을 모두 여는 특수 열쇠를 받지 않습니다.

RBAC에서 역할은 위의 예에서 집 열쇠처럼 고정적입니다. 누구에게나 동일하며 더 많은 액세스 권한이 필요한 사람에게는 사용자 지정 권한을 받는 대신 추가 역할(또는 두 번째 열쇠)이 할당됩니다.

이론적으로 액세스 제어에 대한 이 역할 기반 접근 방식을 사용하면 권한이 개별 사용자에 맞추어 조정되지 않기 때문에 사용자 권한을 비교적 간단하게 관리할 수 있습니다. 그러나 많은 역할과 많은 애플리케이션이 있는 대기업에서는 RBAC가 때로 복잡해지고 추적하기 어려워지며 그에 따라 사용자에게 필요한 것보다 더 많은 권한이 부여될 수 있습니다.

액세스 제어란 무엇인가요?

사이버 보안에서 액세스 제어는 사용자가 수행할 수 있는 작업과 볼 수 있는 데이터를 제한하고 제어하는 도구를 지칭합니다. 스마트폰 잠금을 해제하기 위해 비밀번호를 입력하는 것도 액세스 제어의 기본적인 예입니다. 비밀번호호를 아는 사람만 전화기의 파일과 애플리케이션에 액세스할 수 있습니다.

역할이란?

회사에서 자신의 위치를 "역할"이라고 할 수 있습니다. 그러나 RBAC에서는 역할에 대한 보다 기술적인 정의가 있습니다. 즉, 역할은 회사 시스템 내에서 사용하기 위해 명확하게 정의된 기능 또는 권한의 집합입니다. 각 내부 사용자에게는 적어도 하나의 역할이 할당되며 일부는 여러 역할을 가질 수 있습니다.

역할은 일반적이며 조직 내 직원 한 명에게 맞춰져 있지 않습니다. 예를 들어 영업 사원은 자신의 사용자 계정에 대해 특별히 설정된 권한을 받지 못합니다. 대신 "영업 사원" 역할과 고객 계정 데이터베이스를 보고 편집하는 기능처럼 그 역할에 수반되는 모든 권한이 할당됩니다. 팀의 다른 영업 사원에게도 같은 역할이 할당됩니다. 특정 영업 사원에게 확장된 권한이 필요한 경우 추가 역할이 할당됩니다.

이 접근 방식을 사용하면 사용자를 비교적 간단하게 추가하거나 제거할 수 있습니다. 개별 사용자에 대한 권한을 편집하는 대신 관리자가 단순히 역할을 변경하면 되니까요.

사용자 권한이란?

액세스 제어의 맥락에서 권한은 작업을 수행할 수 있는 능력입니다. 한 가지 예는 회사 데이터베이스에 파일을 업로드하는 기능일 수 있습니다. 신뢰할 수 있는 사용자(예: 내부 직원)에게는 파일 업로드 권한이 있는 반면, 외부 계약자에게는 이 권한이 없을 수 있습니다. RBAC에서는 가능한 모든 역할에 권한 집합이 있습니다.

속성 기반 액세스 제어(ABAC)란?

속성 기반 액세스 제어(ABAC)는 조직 내에서 액세스를 제어하는 대체 방법입니다. ABAC는 RBAC와 다소 유사하지만 더 세분화됩니다. ABAC의 권한은 사용자 역할이 아니라 사용자 속성을 기반으로 합니다. 속성은 거의 모든 것이 될 수 있습니다. 사용자의 특정 특성(예: 직위 또는 보안 인가), 수행 중인 작업의 속성, 또는 현재 시간 또는 액세스되는 데이터의 물리적 위치와 같은 "실제" 속성까지도 포함됩니다.

RBAC와 ABAC의 비교

RBAC와 ABAC는 모두 사용자의 특성을 고려합니다. 그러나 ABAC는 수행 중인 작업 및 사용자가 액세스하는 데이터 또는 시스템의 속성과 같은 더 많은 양의 컨텍스트를 고려할 수 있지만, RBAC는 사용자의 역할만 고려합니다. 따라서 ABAC는 RBAC보다 더 동적이지만, 효과적으로 관리하기가 더 복잡해집니다.

규칙 기반 액세스 제어란?

역할 기반 액세스 제어는 규칙 기반 액세스 제어와 다릅니다.규칙 기반 액세스 제어는 규칙 집합을 기반으로 하는 반면, 역할 기반 액세스 제어는 사용자를 기반으로 합니다.규칙 기반 컨트롤러는 요청이 어디에서 왔는지와 관계없이 포트, IP 주소, 데이터 입력 유형 등 특정 작업을 차단합니다.방화벽은 규칙 기반 액세스 제어를 구현하는 데 사용되는 경우가 많습니다.

Cloudflare는 기업에서 액세스 제어 정책을 시행하는 데 어떻게 도움이 될까요?

Cloudflare Zero Trust는 기업에서 Cloudflare의 모든 도메인, 앱, 경로에 대한 사용자 액세스를 보호, 인증, 모니터링하고 허용 또는 거부할 수 있도록 지원합니다. Cloudflare Zero Trust는 기업의 내부 리소스에 애플리케이션 수준의 사용자 권한을 신속하게 적용하고 사용자가 액세스하는 모든 리소스의 로그도 보관합니다.