이전 항목: sepmdd Daemon (UNIX)

다음 항목: UID/GID 동기화

sepmdd 작동 방법

CA Access Control 에이전트인 seagent가 sepmdd를 시작하므로 명시적으로 sepmdd를 실행할 필요가 없습니다. UNIX에서 sepmdd 데몬은 CA Access Control에 대한 논리적 사용자 ID "_seagent"와 사용자 ID root를 사용하여 실행됩니다. sepmdd를 실행할 다른 논리적 사용자를 지정할 수 없습니다.

PMDB는 공용 디렉터리에 저장됩니다. 정책 모델이 있는 스테이션에서 seos.ini 파일의 [pmd] 섹션에 있는 _pmd_directory_ 토큰을 사용하여 일반 디렉터리의 이름을 지정합니다. 각 정책 모델은 공용 디렉터리의 하위 디렉터리에 위치합니다. 정책 모델 이름은 모델이 위치하는 하위 디렉터리의 이름입니다.

sepmdd가 시작되면 구독자 데이터베이스를 업데이트해야 하는지 확인한 후 필요에 따라 데이터베이스를 업데이트합니다. 시작 프로세스 후 sepmdd는 사용자 요청을 기다리고, 이러한 사용자 요청은 정책 모델 관리 프로그램인 sepmd 및 selang 유틸리티가 seagent를 사용하여 전송합니다.

sepmdd가 요청을 수신하면 해당 요청을 PMDB에 적용하고 그 결과를 사용자에게 다시 보냅니다. 요청을 전파해야 하는 경우 sepmdd는 업데이트를 구독자 데이터베이스에 전파합니다.

sepmdd 데몬은 _QD_timeout_ 토큰에 지정된 기간 동안 구독자 데이터베이스를 업데이트하려고 시도합니다. 최대 시간이 경과하고 데몬이 구독자를 업데이트할 수 없는 경우 해당 구독자를 건너뛰고 목록의 나머지 구독자를 업데이트합니다. 구독자 목록의 최초 검사를 완료하면 sepmdd는 두번째 검사를 수행합니다. 여기서는 첫번째 검사에서 업데이트에 실패한 구독자를 업데이트하려고 시도합니다. 두번째 검사 중에는 연결 시스템 호출 시간(약 90초)이 만료될 때까지 구독자를 업데이트합니다.

참고: _QD_timeout_ 토큰은 seos.ini 파일과 pmd.ini 파일에 모두 있을 수 있습니다. 이 경우 sepmdd는 pmd.ini 파일의 값을 사용합니다.

두번째 검사 동안 구독자가 유효하지 않으면 sepmdd는 30분마다 업데이트를 전송하려고 시도합니다. 이 간격을 수정하려면 _retry_timeout_ 토큰을 설정하십시오. 업데이트를 받은 순서대로 전송해야 하므로 sepmdd는 구독자 데이터베이스가 사용 가능할 때까지 후속 업데이트를 보내지 않습니다.

구독자 데이터베이스의 seos.ini 파일에 있는 [pmd] 섹션에서 pull_option 토큰을 yes로 설정하면 구독자 데이터베이스가 즉시 업데이트됩니다. seagent는 컴퓨터의 모든 정책 모델에 대해 호스트를 사용할 수 있고 해당 구독자 PMDB가 작동되고 있음을 부모 정책 모델에 알리며, sepmdd는 즉시 업데이트를 전송합니다.

sepmdd는 구독자 데이터베이스 업데이트에 실패할 때마다 정책 모델 오류 로그에 경고 메시지를 기록합니다. 정책 모델 오류 로그에 대한 자세한 내용은 UNIX용 끝점 관리 안내서를 참조하십시오.

CA Access Control은 구독자가 정책 모델에서 추가되거나 삭제될 때 완전한 권한을 가진 구독자가 되려고 합니다.

사용할 수 없는 구독자 목록에서 구독자를 제거하려면 다음 명령을 입력합니다.

sepmd ‑r policyModel subscriber

구독자 데이터베이스가 PMDB와 다른 경우 발생할 수 있는 것처럼 구독자 데이터베이스가 업데이트를 거부하는 경우, sepmdd는 오류 메시지를 정책 모델 오류 로그에 기록한 후 계속 진행합니다.

오류 로그를 보려면 PMDB가 위치하는 호스트에 다음 명령을 입력합니다.

sepmd ‑e policyModel

일정한 비활성 기간 후에 sepmdd가 자동으로 종료되도록 설정할 수 있습니다. 그러나 sepmdd는 기본적으로 자체 종료되지 않습니다. sepmdd를 자체 종료하려면 _shutoff_time_ 토큰을 0보다 큰 값으로 설정하십시오. 이 값은 sepmdd가 자체 종료되기 전에 허용되는 비활성 시간(분)을 나타냅니다. 수동으로 sepmdd를 종료하려면 다음을 입력합니다.

sepmd ‑k policyModel

중요! sepmdd를 수동으로 종료할 때는 PMDB가 손상될 수 있으므로 UNIX 명령 kill9를 사용하지 마십시오.