RBAC

1. RBAC는 무엇인가

RBAC는 Role-Based Access Control의 약자로, 미리 정의된 사용자의 역할을 기준으로 접근 권한을 제어하는 엑세스 제어 매커니즘을 말한다.

2. 엑세스 제어를 위해 또 다른 매커니즘은 어떤 것들이 있나?

1) MAC, Mandatory Access Control, 강제적 접근제어

  • 각 주체가 각 객체에 접근할 때마다 관리자에 의해 사전에 규정된 규칙과 비교하여 그 규칙을 만족하는 주체에게만 접근 권한을 부여하는 기법.

  • 각 자원마다 보안등급을 부여한다.

  • 주체가 객체에 접근할 때마다 접근자격을 체크하여 강제적으로 통제하는 방법

  • 하나의 주체, 객체 단위로 접근 권한을 설정하기 어렵다는 단점이 있다.

  • 예)

    • 파일의 보안등급이 2등급이면, 접근하려는 주체의 보안등급이 1, 2등급이면 접근할 수 있고 3등급이면 보안등급 부족으로 열리지 않는다.

2) DAC, Dicretionary Access Control, 임의적 접근통제

  • 정보의 소유자가 접근제어를 설정한다. 데이터 소유자가 다른 사용자의 식별자(ID)에 기초하여 자신의 의지대로 데이터에 대한 접근권한을 부여한다.

  • 대부분의 OS에서 채택되어 사용되고 있고, 사용자별로 접근 권리를 이전할 수 있다.

  • 사용자가 속해있는 그룹의 ID에 근거하여 객체에 대한 접근을 제한하기도 한다. 이때 접근 허가 권한을 가지고 있는 주체는 임의의 다른 주체에게 자신의 접근 권한을 넘겨줄수도 있다.

  • ex) Ubuntu Server 에서 chmod 777 [filename]

  • 단점

    • 통제의 기준이 데이터 소유자의 신분에 근거를 둔다.

    • 접근통제 매커니즘이 데이터의 의미에 대해서 아무런 지식을 가지고 있지 않는다.

    • ID 도용 등 다른 사람의 신분을 사용하여 불법적인 접근이 이루어질 수 있다. 보안상 취약하다.

    • 중앙집권적 관리가 이루어지지 않고 객체 소유자의 임의적인 판단에 의해 이루어지므로 시스템의 전체적인 보안관리가 원활하지 않다.

3) RBAC, Role Based Access Control, 역할 기반 접근 통제

  • 조직의 사용자가 수행해야하는 직무와 직무 권한 등급을 기준으로 객체에 대한 접근을 제어한다.

  • 정해진 직무와 직무별 권한 등급을 이용해 제어하므로 관리가 용이하다.

  • 사용자의 역할에 따라서 어떤 접근이 허용되는지 말해준다.

  • 부서간 직무 순환이 자주 발생되는 환경인 회사 등에서 사용하기 적합하다.

  • 권한을 직접 사용자 개인에게 부여하지 않고 역할에 부여하고 사용자에게는 적절한 역할을 부여하는 식으로 이루어진다.

4) CBAC, Context Based Access Control, 문맥 의존성 접근통제

  • 데이터의 내용에 따라서 주체의 접근을 제어한다.

  • 예를 들어 데이터 베이스에 인사평가의 내용이 있다면, 팀장만 볼수있게 한다.

참고

Last updated