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