역할 기반 액세스 제어(RBAC)란 무엇인가요?

작성자

Gregg Lindemulder

Staff Writer

IBM Think

Matt Kosinski

Writer

역할 기반 액세스 제어(RBAC)란 무엇인가요?

역할 기반 액세스 제어(RBAC)는 사용자의 사전 정의된 역할에 따라 시스템, 애플리케이션 및 데이터에 대한 최종 사용자 액세스 권한을 부여하는 모델입니다. 예를 들어, 보안 분석가는 방화벽을 구성할 수 있지만 고객 데이터를 볼 수는 없는 반면, 영업 담당자는 고객 계정을 볼 수 있지만 방화벽 설정을 건드릴 수는 없습니다.

RBAC 시스템에서 관리자는 각 개별 사용자에게 하나 이상의 역할을 할당합니다. 각각의 새 역할은 사용자에 대한 권한 집합을 나타냅니다.

재무 역할은 사용자에게 구매를 하거나, 예측 소프트웨어를 실행하거나, 공급망 시스템에 대한 액세스 권한을 부여할 수 있습니다. 인사 역할은 사용자에게 인사 파일을 보고 직원 복리후생 시스템을 관리할 수 있는 권한을 부여할 수 있습니다.

많은 직원을 보유한 대규모 조직에서는 종종 RBAC를 사용하여 액세스 관리를 간소화하고 디지털 리소스의 정보 보안을 유지합니다. 일부 기업은 RBAC를 사용하여 건물, 사무실 및 데이터 센터의 전자 잠금 장치와 같은 물리적 자산에 대한 보안 허가를 부여하기도 합니다.

RBAC는 사용자의 역할에 필요한 리소스에 대한 액세스를 제한함으로써 악의적인 내부자, 부주의한 직원 및 외부 위협 행위자를 방어하는 데 도움을 줄 수 있습니다.

귀사의 팀은 다음 제로데이를 제때 포착할 수 있을까요?

Think 뉴스레터를 통해 AI, 사이버 보안, 데이터 및 자동화에 대한 선별된 뉴스를 제공하는 보안 리더들과 함께하세요. 받은 편지함으로 직접 제공되는 전문가 튜토리얼과 설명서를 통해 빠르게 배울 수 있습니다. IBM 개인정보 보호정책을 참고하세요.

구독한 뉴스레터는 영어로 제공됩니다. 모든 뉴스레터에는 구독 취소 링크가 있습니다. 여기에서 구독을 관리하거나 취소할 수 있습니다. 자세한 정보는 IBM 개인정보 보호정책 을 참조하세요.

https://www.ibm.com/kr-ko/privacy

RBAC가 왜 중요할까요?

역할 기반 액세스 제어 시스템을 통해 조직은 권한 부여 프로세스 및 액세스 제어 정책을 간소화하는 동시에 ID 및 액세스 관리(IAM)에 대한 세분화된 접근 방식을 취할 수 있습니다. 특히 RBAC는 조직이 다음을 수행할 수 있도록 지원합니다.

  • 보다 효과적인 권한 할당
  • 규정 준수 유지
  • 민감한 데이터 보호

보다 효과적인 권한 할당

RBAC를 사용하면 각 개별 사용자에게 맞춤형 사용자 권한 세트를 제공할 필요가 없습니다. 대신 정의된 RBAC 역할에 따라 액세스 권한이 결정됩니다. 이 프로세스를 통해 조직은 직원을 온보딩 또는 오프보딩하고, 직무 기능을 업데이트하고, 비즈니스 운영을 혁신할 수 있습니다.

RBAC의 이점에는 계약자, 공급업체 및 기타 타사 사용자에 대한 액세스 권한을 빠르게 추가할 수 있는 기능도 포함됩니다. 예를 들어, 공동 마케팅 역할 할당은 외부 비즈니스 파트너에게 제품 관련 데이터베이스에 대한 애플리케이션 프로그래밍 인터페이스(API) 액세스 권한을 부여할 수 있습니다. 이렇게 하면 사용자는 필요한 정보에 액세스할 수 있지만 회사의 기밀 리소스는 노출되지 않습니다.

규정 준수 유지

RBAC를 구현하면 기업이 금융 서비스 및 의료 기관을 포함한 의무 사항과 같은 데이터 보호 규정을 준수하는 데 도움이 됩니다. RBAC는 누가, 언제, 어떻게 민감한 정보에 액세스하거나 수정하는지에 대한 규제 기관에 투명성을 제공합니다.

민감한 데이터 보호

RBAC 정책은 최소 권한 원칙(PoLP)을 적용하여 사이버 보안 취약점을 해결하는 데 도움이 됩니다. PoLP에서 사용자 역할은 작업을 완료하거나 작업을 수행하는 데 필요한 최소 수준의 권한에 대한 액세스 권한을 부여합니다. 예를 들어, 주니어 개발자는 앱의 소스 코드에서 작업할 수 있는 권한이 있지만 감독자의 승인 없이는 변경 사항을 커밋할 수 없습니다.

RBAC는 민감한 데이터에 대한 액세스를 제한함으로써 우발적인 데이터 손실과 의도적인 데이터 침해를 방지하는 데 도움이 됩니다. 구체적으로, RBAC는 해커가 초기 네트워크 액세스 벡터를 사용하여 시스템 전체로 점진적으로 도달 범위를 확장하는 수평 이동을 줄이는 데 도움이 됩니다.

X-Force Threat Intelligence Index에 따르면 해커가 합법적인 사용자의 계정을 탈취하고 해당 권한을 사용하여 피해를 입히는 유효한 계정 남용이 가장 일반적인 사이버 공격 벡터입니다. RBAC는 애초에 해당 계정이 액세스할 수 있는 항목을 제한하여 해커가 사용자 계정으로 할 수 있는 피해를 완화합니다.

마찬가지로 내부자 위협은 데이터 침해의 가장 큰 비용 발생 원인 중 하나입니다. 데이터 유출 비용(CODB) 보고서에 따르면 악의적인 내부자에 의한 침해로 인한 비용은 평균 492만 달러로, 전체 평균 침해 비용인 444만 달러보다 높습니다.

RBAC는 사용자 권한을 제한함으로써 직원이 악의적이거나 부주의하게 액세스 권한을 오용하여 조직에 해를 끼치는 것을 어렵게 만듭니다.

고급 인공 지능(AI)의 사용이 증가함에 따라 시스템 접근에 대한 신중한 제한이 더욱 중요해질 것입니다. 사용자들이 허가 없이 기밀 또는 민감한 정보를 생성형 AI 툴에 제공할 때 문제가 발생할 수 있으며, 이를 위한 보호 장치가 거의 없습니다. IBM 기업가치연구소(IBV)의 연구에 따르면, 현재의 생성형 AI 프로젝트 중 24%만이 이니셔티브를 보호하는 구성 요소를 가지고 있다고 합니다.

RBAC 작동 방식

RBAC 시스템에서 조직은 먼저 구체적인 역할을 만든 다음, 해당 역할에 부여할 권한과 특권을 정의해야 합니다. 조직은 종종 역할을 관리자, 전문가 또는 전문 사용자, 최종 사용자라는 세 가지 최상위 카테고리로 구분하는 것으로 시작합니다.

특정 사용자 집합에 대해 다양한 역할을 추가로 구성하려면 권한, 책임 및 기술 수준과 같은 보다 세분화된 요소를 고려합니다. 때로는 역할이 직책과 직접 일치할 수도 있습니다. 다른 경우에는 역할이 직책에 관계없이 특정 조건을 충족하는 사용자에게 할당할 수 있는 권한 모음일 수도 있습니다.

사용자에게는 여러 역할이 할당되거나 여러 액세스 수준이 포함된 역할 그룹에 할당될 수 있습니다. 일부 역할은 계층적이며 관리자에게 완전한 권한 집합을 제공하는 반면, 그 아래의 역할은 해당 역할 권한의 하위 집합을 받습니다. 예를 들어, 감독자의 역할은 해당 사용자에게 문서에 대한 쓰기 액세스 권한을 부여하고 팀 구성원은 읽기 권한만 가질 수 있습니다.

RBAC의 실제 사용 예

  1. 병원의 IT 관리자는 "간호사"에 대한 RBAC 역할을 만듭니다.
  2. 관리자는 약물 확인 또는 전자 건강 기록(EHR) 시스템에 데이터 입력과 같은 간호사 역할에 대한 권한을 설정합니다.
  3. 병원의 간호 직원에게는 RBAC 간호사 역할이 할당됩니다.
  4. 간호사 역할에 할당된 사용자가 로그온하면 RBAC는 사용자에게 권한이 부여된 권한을 확인하고 해당 세션에 대한 액세스 권한을 부여합니다.
  5. 약물 처방 또는 검사 주문과 같은 다른 시스템 권한은 간호사 역할에 대한 권한이 없기 때문에 이러한 사용자에게 거부됩니다.

RBAC 및 IAM(ID 및 액세스 관리)

많은 조직에서 ID 및 액세스 관리(IAM) 솔루션을 사용하여 기업 전체에 RBAC를 구현합니다. IAM 시스템은 RBAC 체계의 인증과 권한 부여를 모두 지원할 수 있습니다.

  • 인증: IAM 시스템은 중앙 집중식 사용자 디렉터리 또는 데이터베이스를 기준으로 사용자 자격 증명을 검사하여 사용자의 ID를 확인할 수 있습니다.

  • 권한 부여: IAM 시스템은 사용자 디렉터리에서 사용자의 역할을 확인하고 조직의 RBAC 체계에서 해당 역할에 따라 적절한 권한을 부여하여 사용자에게 권한을 부여할 수 있습니다.

RBAC의 세 가지 주요 규칙

RBAC 모델을 개발한 미국 국립표준기술연구소(NIST)는 모든 RBAC 시스템에 대해 세 가지 기본 규칙을 제공합니다.

  1. 역할 할당: 사용 권한 또는 특권을 행사하려면 사용자에게 하나 이상의 활성 역할이 할당되어야 합니다.

  2. 역할 권한 부여: 사용자는 할당된 역할을 맡을 수 있는 권한이 있어야 합니다.

  3. 권한 승인: 권한 또는 권한은 역할 할당을 통해 권한이 부여된 사용자에게만 부여됩니다.

RBAC의 네 가지 모델

RBAC를 구현하기 위한 4개의 개별 모델이 있지만 각 모델은 동일한 핵심 구조로 시작합니다. 각 연속 모델은 이전 모델을 기반으로 새로운 기능을 구축합니다.

  • 코어 RBAC
  • 계층적 RBAC
  • 제한된 RBAC
  • 대칭 RBAC

코어 RBAC

플랫 RBAC라고도 하는 이 모델은 모든 RBAC 시스템에 필요한 기반으로, RBAC의 세 가지 기본 규칙을 따릅니다. 사용자에게는 역할이 할당되며, 이러한 역할은 특정 권한 및 권한 집합에 대한 액세스 권한을 부여합니다. 핵심 RBAC는 기본 액세스 제어 시스템으로 사용하거나 고급 RBAC 모델의 기반으로 사용할 수 있습니다.

계층적 RBAC

이 모델은 조직의 보고 구조를 재현하는 역할 계층을 추가합니다. 역할 계층 구조에서 각 역할은 그 아래에 있는 역할의 권한을 상속하고 새 권한을 얻습니다.

예를 들어, 역할 계층에는 임원, 관리자, 감독자 및 일선 직원이 포함될 수 있습니다. 계층 구조의 최상위에 있는 임원에게는 전체 권한 집합에 대한 권한이 부여되고 관리자, 감독자 및 일선 직원에게는 각각 해당 권한 집합의 작은 하위 집합이 연속적으로 부여됩니다.

제한된 RBAC

역할 계층 구조 외에도 이 모델은 업무 분리(SOD)를 적용하기 위한 기능을 추가합니다. 업무 분리는 두 사람이 특정 작업을 완료하도록 요구함으로써 이해 상충을 방지하는 데 도움이 됩니다.

예를 들어, 비즈니스 비용에 대한 상환을 요청하는 사용자는 해당 요청을 승인한 사람과 동일해서는 안 됩니다. 제한된 RBAC 정책은 이러한 유형의 작업에 대해 사용자 권한이 분리되도록 합니다.

대칭 RBAC

이 모델은 RBAC의 가장 진보되고 유연하며 포괄적인 버전입니다. 이전 모델의 기능 외에도 기업 전체의 권한에 대한 심층적인 가시성을 추가합니다.

조직은 각 권한이 시스템의 각 역할 및 각 사용자에게 어떻게 매핑되는지 검토할 수 있습니다. 또한 비즈니스 프로세스와 직원 책임이 발전함에 따라 역할과 연결된 권한을 조정하고 업데이트할 수 있습니다.

이러한 기능은 모든 역할과 모든 사용자가 작업을 수행하는 데 필요한 최소한의 액세스 권한을 갖도록 해야 하는 대규모 조직에 특히 유용합니다.

RBAC와 기타 액세스 제어 프레임워크 비교

조직에서 RBAC의 대안으로 사용할 수 있는 다른 액세스 제어 프레임워크가 있습니다. 일부 사용 사례에서 조직은 RBAC를 다른 권한 부여 모델과 결합하여 사용자 권한을 관리합니다. 일반적으로 사용되는 액세스 제어 프레임워크는 다음과 같습니다.

  • 필수 액세스 제어(MAC)
  • 임의 액세스 제어(DAC)
  • 속성 기반 액세스 제어(ABAC)
  • 액세스 제어 목록(ACL)

필수 액세스 제어(MAC)

MAC 시스템은 모든 사용자에게 중앙에서 정의된 액세스 제어 정책을 적용합니다. MAC 시스템은 RBAC보다 덜 세분화되어 있으며, 액세스는 일반적으로 설정된 인가 수준 또는 신뢰 점수를 기반으로 합니다. 많은 운영 체제는 MAC을 사용하여 중요한 시스템 리소스에 대한 프로그램 액세스를 제어합니다.

임의 액세스 제어(DAC)

DAC 시스템을 사용하면 리소스 소유자가 해당 리소스에 대한 자체 액세스 제어 규칙을 설정할 수 있습니다. DAC는 MAC의 포괄적인 정책보다 유연하고 RBAC의 구조화된 접근 방식보다 덜 제한적입니다.

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

ABAC는 사용자, 개체 및 작업의 속성(예: 사용자 이름, 리소스 유형, 시간)을 분석하여 액세스 권한 부여 여부를 결정합니다. RBAC는 각 개별 사용자의 특성이 아닌 조직 역할을 사용하여 액세스 권한을 부여하기 때문에 RBAC보다 구현하기 쉬울 수 있습니다.

RBAC와 ABAC의 차이점은 ABAC는 여러 요인에 따라 즉시 액세스 권한을 동적으로 결정하는 반면, RBAC는 사용자의 미리 정의된 역할만을 기반으로 액세스 권한을 결정한다는 것입니다.

액세스 제어 목록(ACL)

ACL은 사용자 및 규칙 목록을 참조하여 시스템 또는 리소스에 액세스할 수 있는 사용자와 수행할 수 있는 작업을 결정하는 기본 액세스 제어 시스템입니다.

ACL과 RBAC의 차이점은 ACL이 각 사용자에 대한 규칙을 개별적으로 정의하는 반면, RBAC 시스템은 역할에 따라 액세스 권한을 할당한다는 것입니다.

대규모 조직의 경우 RBAC는 ACL보다 확장성이 뛰어나고 관리가 쉽기 때문에 액세스 제어에 더 적합한 옵션으로 간주됩니다.

주문과 재고에 관련된 다양한 도표와 그래프를 보여주는 대시보드 스크린샷
관련 솔루션
IBM® Verify 적응형 액세스

사용자, 디바이스, 활동 및 행동을 분석하여 신뢰와 위험을 평가하는 AI 기반 위험 중심 인증으로 사용자와 자산을 선제적으로 보호합니다.

IBM® Verify 적응형 액세스 살펴보기
보안 솔루션

데이터, 신원 및 위협에 대한 지능적이고 자동화된 보호를 통해 하이브리드 클라우드 및 AI 환경을 보호하세요.

보안 솔루션 살펴보기
신원 및 액세스 관리 서비스

하이브리드 클라우드 환경 전반에서 자동화된 신원 제어 및 위험 기반 거버넌스를 통해 사용자 액세스를 보호하고 관리하세요.

    IAM 서비스 살펴보기
    다음 단계 안내

    적응형 액세스가 AI 기반 위험 중심 인증을 사용하여 신뢰와 보안의 균형을 지능적으로 유지하고 사용자와 자산을 실시간으로 보호하는 방법을 알아보세요.

    IBM® Verify 적응형 액세스 살펴보기 보안 솔루션 살펴보기