다음 그림은 데이터에 대해 동작하는 프로세스를 포함하는 트랜잭션을 보여주고 특정 보안 속성의 소스를 나타냅니다.
다음은 그림 2-2에 대한 설명입니다.
1. 사용자가 Trusted Solaris 환경에 들어갑니다 - Trusted Solaris 환경에 들어갈 때 사용자 이름과 암호를 입력해야 합니다. 이러한 입력 항목은 passwd 및 shadow 파일에 대해 확인됩니다. 사용자가 역할을 가지면 역할에 대한 암호도 입력해야 합니다. 감사를 위해, 사용자의 감사 UID는 언제나 역할 UID가 아니라 사용자의 개인 UID로 설정됩니다.
2. Trusted Solaris는 사용자 속성을 결정합니다 - Trusted Solaris 환경에 들어갈 때 사용자는 세션 유형(단일 또는 다중 레이블)의 적절한 SL에 대한 작업 공간 설정을 제공받습니다. 사용자가 다중 레이블 세션을 선택했으면 사용자는 사용자 계정에 할당된 최소 SL에서 해당 세션에서 허용된 최대 SL까지의 어떤 SL로든지 작업 공간 SL을 변경할 수 있습니다. 사용자의 UID 및 GID는 사용자가 특권을 사용하지 않고 액세스할 수 있는 파일을 결정합니다. 계정의 프로파일은 사용자에게 허가된 일련의 응용프로그램 및 보안 속성을 결정합니다. 사용자가 역할을 가지고 있으면 다른 응용프로그램과 보안 속성을 가집니다.
3. 사용자가 트랜잭션을 시도합니다 - 사이트가 All 실행 프로파일을 모든 사용자에게 지정하면 모든 사용자가 특권 없이 모든 명령이나 동작에 액세스할 수 있습니다. All 프로파일을 지정하지 않은 제한된 사이트에서 금지된 명령을 실행하면 command not in profile이라는 오류 메시지가 나타나며, 금지된 동작 아이콘은 인터페이스에 나타나지 않습니다. 또는 아이콘이 나타나 있는 경우에는 오류 메시지가 반환됩니다. Trusted Solaris가 프로파일에서 응용프로그램을 찾을 수 없으면 트랜잭션 요청이 거부됩니다.
4. Trusted Solaris는 주체(프로세스) 속성을 결정합니다 - 사용자가 응용프로그램을 선택하면 응용프로그램의 실행 파일 보안 속성의 조합에서 계정 보안 속성이 프로세스의 기능을 결정합니다. 응용프로그램이 들어 있는 프로파일은 상속 가능한 특권, 유효 UID/GID 및 프로세스의 최대 최소 민감도 레이블 보안 속성을 정의합니다. 인증은 이 프로파일에서와 이 UID에 할당된 기타 프로파일에서 사용할 수 있습니다. 실행 파일은 허용 특권과 강제 특권을 제공합니다.
5. Trusted Solaris는 객체(파일) 속성을 얻습니다 - 데이터 파일에 대한 액세스를 보호하는 보안 속성은 소유자, 그룹, ACL, 사용 권한 및 데이터 파일 SL입니다.
6. Trusted Solaris는 속성을 비교하고 인증을 확인합니다 - Trusted Solaris는 주체(프로세스) 속성을 객체(파일) 속성과 비교하여 트랜잭션을 허가할 것인지를 결정합니다. 다음은 몇 가지 테스트입니다.
프로세스의 민감도 레이블이 해당 파일의 디렉토리 레이블에 대해 지배적입니까? 지배적이지 않다면, 프로세스에 지배적이지 않은 상태로 디렉토리를 액세스할 수 있는 file_mac_search 특권이 있습니까?
프로세스의 사용 권한으로 해당 파일의 디렉토리에 액세스할 수 있습니까? 액세스할 수 없는 경우, 적절한 사용 권한 없이 디렉토리를 액세스할 수 있는 file_dac_search 특권이 있습니까?
프로세스의 민감도 레이블이 파일의 민감도 레이블에 대해 지배적입니까? 지배적이지 않다면, 프로세스에 지배적이지 않은 상태로 파일을 액세스할 수 있는 file_mac_read 특권이 있습니까?
프로세스의 사용 권한으로 파일에 액세스할 수 있습니까? 액세스할 수 없는 경우, 적절한 사용 권한 없이 파일에 액세스할 수 있는 file_dac_read 특권이 있습니까?
프로세스에 특수한 인증이 필요합니까?