이전 항목: 기본 액세스 권한 보기다음 항목: 네거티브 액세스 제어 목록 사용


조건부 액세스 제어 목록 사용

파일 액세스에 사용되는 프로그램에서 파일 액세스 권한을 조건부로 만들 수 있습니다. 이 방법으로 파일 액세스를 조건부로 만드는 작업을 프로그램 경로 지정이라고 합니다.

참고: 파일에 액세스하도록 지정된 프로그램이 셸 스크립트인 경우 셸 스크립트의 첫 줄에는 #!/bin/sh가 있어야 합니다. 셸 스크립트가 #!/bin/sh 줄을 주석으로 간주하여 처리하지 않으므로 # 뒤의 셸 스크립트를 실행하지 마십시오. /home/test/test.sh 또는 # sh /home/test/test.sh.

다음 코드는 암호 변경 프로그램 /bin/passwd를 제어하는 /etc/passwd 파일을 임의의 프로세스로 업데이트할 수 있는 예제입니다. /bin/passwd에서 시작되지 않은 /etc/passwd 파일에 대한 모든 액세스 시도가 차단됩니다.

newres FILE /etc/passwd owner(nobody) defaccess(R)
authorize FILE /etc/passwd gid(users) access(U) via(pgm(/bin/passwd))

newres 명령은 /etc/passwd 파일을 CA ControlMinder에 정의하고 파일 소유자를 포함한 모든 사용자가 파일을 읽을 수 있도록 허용합니다. /bin/passwd 프로그램에서 액세스된 경우 authorize 명령을 통해 모든 사용자가 파일에 액세스할 수 있습니다. 암호 파일을 이러한 방식으로 보호하면, 사용자가 /bin/passwd 프로그램을 사용하지 않는 경우 /etc/passwd 파일에 항목을 삽입하는 트로이 목마나 "users" 그룹의 사용자에 의한 암호 파일 업데이트가 차단됩니다.

조건부 액세스 목록은 DBMS(데이터베이스 관리 시스템)의 파일에 대한 액세스를 제어하는 데도 유용합니다. 일반적으로 사용자가 데이터베이스 공급업체에서 제공한 프로그램과 유틸리티를 통해서만 해당 파일에 액세스할 수 있게 허용해야 합니다. 다음 명령을 생각해 봅시다.

authorize FILE /usr/dbms/xyz uid(*) via(pgm(/usr/dbms/bin/pgm1)) access(U)
authorize FILE /usr/dbms/xyz uid(*) via(pgm(/usr/dbms/bin/pgm2)) access(U)

DBMS 바이너리 디렉터리에 속한 프로그램 pgm1이나 pgm2에 의해 액세스하는 경우 이러한 authorize 명령 집합을 통해 모든 CA ControlMinder 사용자는 DBMS 시스템의 xyz 파일에 액세스할 수 있습니다. 사용자 피연산자에 별표를 사용할 때는 주의하십시오. 별표는 CA ControlMinder에 정의된 모든 사용자를 지정합니다. 기본 액세스 권한이 CA ControlMinder에 정의되지 않은 사용자에게도 적용된다는 점을 제외하면 별표의 사용은 개념적인 면에서 기본 액세스 권한과 유사합니다. CA ControlMinder 데이터베이스에 정의되지 않은 사용자에 대해서는 _undefined 그룹을 사용할 수 있습니다.

Unicenter TNG 달력 ACL 속성을 사용하여 Unicenter TNG calendar 상태에 따라 특정 사용자 및 그룹에 대한 액세스를 허용하거나 거부할 수도 있습니다. Unicenter TNG calendar에 대한 두 가지 유형의 ACL 속성에는 regular 및 restrictive가 있습니다.

예를 들어, 다음 명령은 george라는 사용자를 basecalendar라는 일반 달력의 조건부 액세스 제어 목록에 추가합니다.

auth file file1 uid(george) calendar(basecalendar) access(rw)

또한 다음 명령은 Unicenter TNG calendar에서 george라는 사용자를 제거합니다.

auth- file file2 uid(george) calendar(basecalendar)