또 다른 고려 사항은 TERMINAL 클래스의 기본 규칙입니다. 초기 구현 단계에서 기본값은 정의되지 않은 항목을 허용하도록 설정됩니다. TERMINAL의 경우 이 설정은 하나의 결점이 될 수도 있습니다.
일단 TERMINAL 클래스의 기본값을 READ로 설정하면 root를 포함하여 모든 사용자가 데이터베이스에서 특정 TERMINAL 레코드를 가지고 있지 않은 모든 터미널로부터 로그인할 수 있습니다. 사용자는 슈퍼 사용자가 모든 터미널에서 로그인하도록 원하지는 않습니다. 그러나 TERMINAL 클래스의 기본값을 [없음]으로 설정하여 데이터베이스의 각 터미널을 강제로 정의할 수 있지만 이는 바람직하지 않습니다.
먼저 TERMINAL 클래스의 기본값을 READ로 설정하여 루트를 비롯한 모든 사용자가 데이터베이스에 특정 TERMINAL 레코드를 가지지 않는 터미널에서 로그인하도록 할 수 있습니다. 슈퍼 사용자라고 하더라도 몇몇 터미널에서는 로그인이 허용되지 않도록 할 수 있습니다. 그러나 TERMINAL 클래스의 기본값을 NONE으로 설정하여 데이터베이스에 각 터미널을 정의하도록 하는 방법도 있습니다. 이 방법은 일부 사이트에서는 비현실적일 수 있습니다.
이 문제를 해결하기 위해 CA Access Control은 TERMINAL 클래스의 _default 레코드 내에서 액세스 제어 목록 정의를 지원합니다. 다음 명령은 최소한의 노력으로 루트를 두 가지 터미널로 제한하는 방법을 보여 줍니다.
newres TERMINAL term2 defaccess(N) owner(root) newres TERMINAL _default defaccess(R) authorize TERMINAL _default uid(root) access(N) 처음 두 개의 명령은 term1 및 term2를 root가 소유한 터미널로 정의하기 때문에 슈퍼 사용자로 로그인하기에 적합합니다. newres TERMINAL _default 및 chres 명령은 기본 액세스를 READ로 설정하기 때문에 모든 사용자가 데이터베이스에서 정의되지 않은 모든 터미널에 액세스할 수 있습니다. authorize 명령은 정의되지 않은 터미널에 대한 슈퍼 사용자의 액세스를 명시적으로 거부합니다.
처음 두 명령은 루트가 소유하는 터미널로서 term1과 term2를 정의하기 때문에 슈퍼 사용자 로그인에 적합합니다. newres TERMINAL _default 및 chres 명령을 통해 기본 액세스를 READ로 설정하면 모든 사용자는 데이터베이스에 정의되지 않은 모든 터미널에 액세스할 수 있습니다. authorize 명령은 슈퍼 사용자의 정의되지 않은 터미널 액세스를 명시적으로 차단합니다.
참고: UACC 클래스가 아직 존재하며 이 클래스를 사용하여 리소스의 기본 액세스를 지정할 수 있습니다. 그러나 작업을 쉽게 하려면 _default 레코드를 사용하여 리소스의 기본 액세스를 지정하는 것이 좋습니다.
| Copyright © 2012 CA. All rights reserved. | 이 주제에 대해 CA Technologies에 전자 메일 보내기 |