Bitaholic

ACL(Access control list) 접근 제어 목록 본문

Computer/프로그래밍일반

ACL(Access control list) 접근 제어 목록

Bitaholic 2006. 8. 16. 20:48

ACL[에이씨엘]은 개개의 사용자들이디렉토리파일과 같은 특정 시스템 개체에 접근할 수 있는 권한을 컴퓨터의운영체계에 알리기 위해 설정해 놓은 표라고 할 수 있다.각 개체는 접근제어목록을 식별할 수 있는 보안 속성을 가지며, 그 목록은 접근권한을 가진 각 시스템 사용자들을 위한 엔트리를 가진다. 가장 일반적인 권한은 1개의 파일이나 또는 한 개의 디렉토리 안에 있는 모든 파일들을 읽을 수 있고(Read), 기록할 수 있으며(Write), 그리고 만약 그것이 실행가능한 파일이나프로그램인 경우라면 실행시킬 수 있는(Execute) 권한 등을 포함한다.


ACL을 사용하는 대표적인 운영체계들로는,윈도우NT, 노벨네트웨어, 디지털의OpenVMS, 그리고유닉스기반의 시스템들을 들 수 있지만, 각 운영체계마다 이러한 ACL은 각각 다르게 구현된다. 윈도우NT에서 ACL은 각 시스템 개체로 구성되어 있다.


각 ACL은 사용자의 이름이나 사용자 그룹으로 이루어지는 하나 또는 그 이상의 접근통제엔트리(ACE)를 가진다. 사용자는프로그래머, 테스터 등과 같이 그 역할을 지칭하는 이름이 될 수도 있다.이렇게, 사용자들이나 그룹 또는 각자의 역할에 따라 액세스 마스크(access mask)라고 불리우는 비트 스트링에 접근권한이 적히게 있다. 일반적으로 시스템관리자나 해당 개체의 소유자가 그 개체에 대한 ACL을 생성한다.


한 예로서, 한명은 프로그래머, 다른 한명은 프로그램 테스터, 그리고 세 번째는 시스템 그 자체로 3명의 사용자를 가지는 운영체계를 가정해 보자. 이때, 주어진 프로그램 개체에 대한 ACL은 다음과 같이 될수 있다.


프로그래머    read    write    execute

테스트          read               execute

시스템                               execute

이렇게 3개의 엔트리를 갖는 ACL에서 이 프로그램 개체를 읽거나, 쓰거나 또는 실행하기 전에 시스템은 접근제어목록을 참조하여 사용자에게 부여된 접근권한에 따라 작업을 허용할 것인지의 여부를 결정하게 된다.
Comments