보안 레이블 및 계약에 대한 모범 사례
보안 레이블이 구성되어 있는 시스템의 경우 다음과 같은 모범 사례를 고려하십시오.
• 중요한 정보를 포함하지 않은 객체에 대해 널 보안 레이블 값을 설정합니다. 또한 정보용임을 표시하기 위해 널이 아닌 값도 설정할 수 있습니다. Null 보안 레이블 값과 정보용임을 표시하기 위해 Null이 아닌 값이 지정된 객체는 액세스가 제한되지 않으므로, Windchill 시스템에서 사용자가 승인된 참여자인지 확인할 필요가 없습니다.
• 하나 이상의 값이 객체에 대한 액세스를 제한하는 경우에만 보안 레이블을 사용합니다. 그렇지 않으면 정보용임을 표시하기 위해 객체에 Null이 아닌 값을 지정하는 대신 글로벌 속성을 사용합니다. 정보용임을 표시하기 위해서만 사용한 보안 레이블은 글로벌 속성을 대체하지 못합니다.
• 중요한 정보가 들어 있는 객체에 대해서는 참여자가 제한된 시간 동안만 액세스해야 하는 경우가 아니면 레이블 값의 승인된 참여자 그룹에 해당 참여자를 추가합니다. 계약은 보안 레이블 값 제한에 대한 예외로만 사용되어야 합니다. 계약을 활성화할 수 있는 시간 제한은 없지만, 많은 사용자에게 보안 레이블이 있는 객체에 대한 액세스 권한을 부여하기 위한 주요 수단으로 계약을 사용해서는 안 됩니다.
• 비즈니스 객체에 적용되는 모든 이름/값 쌍은 크기 제한(4000)이 있는 단일 데이터베이스 열에 함께 저장됩니다. 표준 보안 레이블의 경우
SecurityLabel 요소의
name 속성과
SecurityLabelValue 요소의
name 속성을 최대한 짧게 유지하십시오. 이러한 값은 일반적으로 사용자 인터페이스에 표시되지 않습니다. 자세한 내용은
보안 레이블 구성 파일 편집을 참조하십시오. 사용자 정의 보안 레이블의 경우
CustomSecurityLabel 요소의
name 속성과 내부 사용자 정의 보안 레이블 값을 최대한 짧게 유지하십시오. 사용자 정의 변환자를 사용하여 데이터베이스에 저장된 내부 값의 크기를 줄일 수 있습니다. 자세한 내용은
사용자 정의 변환자 클래스 작성을 참조하십시오.
• 보안 레이블 값이나 계약에 대해 승인된 참여자를 지정할 경우 주의를 기울이십시오. 승인된 참여자로 그룹이나 조직을 지정할 경우 해당 그룹이나 조직에는 보안 레이블 값이나 계약에 따라 승인되는 사용자를 제어할 수 있는 그룹 또는 조직 멤버 자격 변경 권한이 제공됩니다. 적용된 보안 레이블 값이나 계약과 연관된 값을 기반으로 객체 액세스 권한을 확장하도록 허용된 관리자를 통해서만 멤버 자격을 수정할 수 있는 그룹 및 조직을 선택해야 합니다. 예를 들어, 계약에 대한 승인된 참여자로 컨텍스트 팀 역할이 연관되어 있는 시스템 그룹을 선택할 경우 기본적으로 컨텍스트 관리자는 팀 멤버 자격을 변경할 수 있으며 따라서 해당 계약에 대한 승인된 참여자도 변경할 수 있습니다. 컨텍스트 관리자가 동시에 계약 관리자인 경우가 아니면 팀 멤버 자격 변경으로 인한 결과를 알 수 없습니다.
• 계약을 작성하거나 편집할 때 승인된 관련 변경 내용 선택 단계를 수행하면 계약에서 승인된 객체를 관리하는 데 도움이 됩니다. 그러나 큰 변경 객체를 관련 변경 객체로 계약에 포함하면 Windchill 성능이 저하될 수 있습니다.
• 기본적으로 모든 보안 레이블은 보안 레이블 편집 창의 객체 목록 테이블에서 열로 사용할 수 있습니다. 표시되는 보안 레이블 열을 제한하기 위해 객체 목록에 대해 사용자 정의 테이블 보기를 설정할 수 있습니다. 테이블에서 속성 값 편집 작업이 실행되면 사용 가능한 보안 레이블에 대한 열만 창에 표시됩니다. 사용자 정의 테이블을 작성하여 사용자와 공유하려는 경우 의도하지 않은 값 수정 권한을 방지하기 위해 사용자가 시스템을 사용할 수 있기 전에 해당 보기를 작성하고 공유해야 합니다.
• 사용자 정의 평가자 및 변환자 클래스를 구현할 때 사용자 정의 클래스의 메소드가 Windchill에서 자주 호출되므로 성능에 영향을 줄 수 있습니다. 예를 들어, 외부 시스템에 대한 호출을 설정할 경우 반환 값을 캐싱하여 후속 메소드 호출 시 성능을 높일 수 있습니다.
• 사용자 정의 보안 레이블을 사용할 경우 사용자 정의 보안 레이블을 구성할 때 기본적으로 제공되는 텍스트 필드 등을 사용하여 수동으로 값을 입력할 수 있는 경우 사용자 인터페이스에 대한 유효성 검사를 추가하는 것이 좋습니다. 사용자 인터페이스에 잘못된 값을 입력하거나 가져오기 파일에서 잘못된 값을 지정한 경우 예기치 못한 값이 데이터베이스에 저장되는 것을 방지하려면 사용자 정의 변환자 클래스에서 값을 검증하는 것이 좋습니다.
• 사용자 액세스를 제한하는 값을 사용자가 실수로 설정하여 값을 수정하는 데 도움이 필요한 경우 관리자는 표준 또는 사용자 정의 보안 레이블 값을 수정할 수 있어야 합니다.