파일이 여러 가지 레이블과 부주의하게 혼합되는 것을 방지하기 위하여 Trusted Solaris 환경은 다중 레벨 디렉토리 및 단일 레벨 디렉토리라는 두 개의 특수 디렉토리 유형을 제공합니다.
다중 레벨 디렉토리(MLD)는 파일 및 디렉토리를 다른 민감도 레이블과 함께 투명하게 저장하는 기능을 가진 디렉토리입니다.
다중 레벨 디렉토리는 디렉토리 이름의 시작에 첨부되어 있는 숨겨진 문자열인 ".MLD." (장식이라 함)를 가지고 있습니다. 장식은 표준 UNIX 명령으로는 볼 수 없으며 특수 장식 명령(표 1-3 참조)으로 볼 수 있습니다.
단일 레벨 디렉토리(SLD)는 숨겨져 있는 디렉토리로서 동일한 민감도 레이블만을 가진 파일과 디렉토리를 저장합니다. 파일이나 디렉토리를 다중 레벨 디렉토리로 생성하거나 이동하면 새로운 파일이나 디렉토리는 민감도 레이블에 해당하는 단일 레벨 디렉토리에 자동으로 저장됩니다. 민감도 레이블에 해당하는 단일 레벨 디렉토리가 존재하지 않는 경우, 환경이 자동으로 단일 레벨 디렉토리를 생성합니다.
단일 레벨 디렉토리의 장식은 ".SLD."라는 문자열입니다. 단일 레벨 디렉토리는 .SLD.0, SLD.1 등으로 생성 순서에 의해 이름이 지정됩니다. 이 디렉토리를 보려면 일반적으로 표 1-3에 설명된 특수 명령을 사용해야 합니다.
사용자는 경로에 장식을 명시적으로 지정하면 숨겨진 디렉토리의 내용을 볼 수 있습니다. 예를 들어, 사용자는 TOP SECRET A B 민감도 레이블에서 작업하는 동안 ls를 입력하여 TS A B 파일과 디렉토리에 대한 단일 레벨 디렉토리 내용을 볼 수 있습니다(그림 1-7 참조). ls /.MLD.myHomeDir/.SLD.*라고 입력하면(물론 적절한 특권이 있어야 함) 사용자는 다중 레벨 디렉토리 안에 숨겨진 모든 디렉토리를 볼 수 있습니다(그림 1-8 참조). 그림의 왼쪽에는 사용자가 입력하는 명령이 있습니다. 오른쪽은 디렉토리 구조이며, 디렉토리는 타원형으로, 파일은 직사각형으로, 볼 수 있는 항목은 굵은 선으로, 그리고 숨겨진 항목은 점선 및 보통 글꼴로 나타냅니다.
Trusted Solaris 환경은 단일 레벨 및 다중 레벨 디렉토리의 장식을 보기 위한 특수 명령을 제공합니다. 다음 페이지의 테이블은 이 명령들을 설명합니다.
표 1-3 장식 명령
명령 이름 |
설명 |
---|---|
adornfc(1) 명령을 사용하면 디렉토리가 여러 단계인지 아니면 한 단계인지 식별하는 데 사용되는 문자열(.MLD. 또는 .SLD.)을 마지막 구성 요소로 사용해서 특정 디렉토리 경로 이름을 표시할 수 있습니다. |
|
getmldadorn(1) 명령을 사용하면 지정된 경로 이름이 어느 파일 시스템에 있는지 MLD를 덧붙여 표시할 수 있습니다. |
|
getsldname(1) 명령을 사용하면 경로 이름에 따른 여러 단계의 디렉토리에서 현재 프로세스의 민감도 레이블과 관계있는 한 단계 디렉토리 이름을 표시할 수 있습니다. |
|
mldpwd(1) 명령을 사용하면 덧붙인 모든 MLD와 SLD 이름을 포함하여 현재 작업 중인 디렉토리의 경로 이름을 표시할 수 있습니다. |
|
mldrealpath(1) 명령을 사용하면 덧붙인 모든 MLD과 SLD 이름을 포함하여 표준 절대 경로 이름을 표시할 수 있습니다. 이 명령은 모든 기호 연결을 확장하고 특수 문자(/.와 /..)에 대한 참조와 경로 이름을 해석하여 특수 문자, 덧붙인 이름이 없이 여러 단계로 구성된 디렉토리, 숨겨진 SLD 이름 등이 없는 경로를 표시합니다. |