권한
Requirements & Systems Portal의 권한은 세분화되어 있으며, 상위 권한은 Requirements & Systems Portal 인스턴스 수준(Default)에서 시작한 다음 프로젝트로 이어지고, 각 모듈의 상위 수준 객체에서 하위 수준 객체로 흐르며 최종적으로 valis 또는 requirements까지 내려갑니다. 관리자는 어떤 수준에서든 권한을 변경할 수 있습니다. Requirements & Systems Portal 내에서 새 프로젝트가 생성되면, 기본적으로 프로젝트는 기본 권한을 상속합니다(Read & Write & Delete는 기본적으로 Everyone에 대해). 관리자는 프로젝트 모듈 내 권한 페이지에서 객체의 권한을 변경할 수 있습니다.

권한 페이지 - 프로젝트 내 모든 객체의 권한을 수정하는 인터페이스
권한 유형
권한은 누적되며, 이는 상위 권한이 항상 모든 하위 권한을 자동으로 포함한다는 뜻입니다. 예를 들어 “write” 권한이 있으면 “read” 접근 권한이 자동으로 포함됩니다. 다음 네 가지 유형이 제공됩니다(누적 순서):
READ-ONLY
Read 권한은 프로젝트와 그 안의 모든 요소(Blocks, Valis, matrices)를 볼 수 있게 해줍니다. 또한 예를 들어 Valis의 수식에서처럼 이 데이터를 다른 프로젝트에서 사용할 수도 있습니다. 하지만 “read” 접근 권한만 있는 프로젝트 내부에서는 어떤 것도 편집할 수 없습니다.
READ & WRITE
프로젝트 내부의 어떤 요소든 조작하려면 해당 프로젝트에 대한 write 권한이 있어야 합니다. “write” 권한이 있으면 프로젝트와 그 안의 모든 Blocks, Valis, matrices를 편집/삭제할 수 있습니다. 하지만 write 권한만으로는 프로젝트의 권한을 다른 사용자에게 할당할 수 없습니다.
READ & WRITE & DELETE
이 권한은 사용자에게 read 및 write 권한과 더불어 객체를 삭제할 수 있는 기능도 허용합니다.
MANAGE
프로젝트의 Manage 권한은 이 특정 프로젝트에 대해 다른 사용자의 권한을 추가하거나 제거할 수 있는 기능을 제공합니다. 프로젝트를 생성하면 자동으로 manage 권한을 받습니다. 또한 슈퍼유저가 사용자에게 manage 권한을 부여하거나 제거할 수도 있습니다.
특수 권한
프로젝트 권한 외에도 사용자 수준에서 할당되는 몇 가지 특수 권한이 있습니다:
-
태그 생성/편집
-
유형 생성/편집
위 항목은 기본적으로 모두 부여되지만, 관리자는 관리자 패널의 “Users”에서 해당 User Id를 선택해 회수할 수 있습니다.
공개 프로젝트
공개 프로젝트에서는 모든 사용자에게 “write” 권한이 자동으로 부여됩니다. 프로젝트는 기본적으로 공개이며, 권한 관리가 필요하다면 비공개로 전환해야 합니다.
관리자 권한
관리자는 정의상 항상 사용 가능한 모든 권한을 가집니다.
권한 설정하기
Requirements & Systems Portal에서 모듈 내 객체에 사용자 지정 권한을 추가할 수 있습니다. 사용자 지정 권한이 설정되지 않으면, 객체는 Default > Project > Blocks / Specifications > Sub-Blocks / Groups > Valis / Requirements 순서로 상위 수준에서 권한을 상속합니다.
오른쪽 상단의 점 세 개를 클릭하고 Permissions을(를) 선택하면 새 권한을 추가할 수 있습니다.
열리는 Permissions 창에서 현재 이동해 있는 객체에 대한 권한을 설정할 수 있습니다. 창 상단에는 권한을 설정 중인 객체의 이름이 표시됩니다(아래 예시에서는 00 - Input Specifications라는 specification). 또한 사용자 지정 권한이 추가되지 않았을 때 어떤 객체로부터 권한을 상속하는지도 확인할 수 있습니다. 이 경우 00 - Input Specifications는 Valicopter_5000 프로젝트로부터 권한을 상속하고 있습니다.
사용자 지정 권한
사용자 지정 권한을 추가하려면 Permissions 창에서
버튼을 클릭합니다.
새 사용자 지정 권한을 만들 때 아래에 설명된 두 가지 선택지가 있습니다:
<Object>에서 상속
이 옵션을 사용하면 객체에 사용자 지정 권한을 설정할 수 있으며, 이는 그 아래의 모든 하위 객체에도 전파됩니다. 각 사용자의 기본 사용자 지정 권한은 상위 객체에서 상속됩니다. 또한 상위 객체에서 새 권한을 생성할 때(예: 프로젝트에 새 사용자를 추가) 현재 객체에 대한 해당 사용자의 권한은 상위에서 상속됩니다. 이는 상위 객체에서 사용자의 권한이 변경될 때도 마찬가지입니다. 사용자가 사용자 지정 read 권한을 가지고 있고 상위 객체에서는 write 권한을 가지고 있는 상황에서, 상위 권한이 manage로 변경되면 read 권한은 새 manage 권한으로 덮어써집니다.
예시 사용 사례:
-
사용자가 프로젝트 전체에는 read 접근 권한을 갖되, 특정 specification과 그 specification의 모든 requirements에는 사용자 지정 write 접근 권한을 갖게 하고 싶습니다.
-
사용자가 프로젝트 전체에는 write 접근 권한을 갖되, 특정 specification과 그 specification의 모든 requirements에는 read 접근 권한만 갖게 하고 싶습니다.
처음부터 권한 시작
이 옵션을 사용하면 상위 수준에서의 권한 전파가 모두 중단됩니다. 기본적으로 해당 객체에는 어떤 권한도 생성되지 않지만, 각 사용자에 대해 이 객체에 사용자 지정 권한을 추가할 수 있습니다. 새 사용자를 추가하더라도 상위에서 어떤 권한도 상속되지 않습니다.
예시 사용 사례:
-
일부 사용자만 읽기/쓰기할 수 있도록 specification과 그 requirements에 대한 접근을 제한하고 싶습니다. 다른 사용자는 이 specification을 볼 수 없습니다.
-
상위의 권한이 변경되더라도 상위에서 권한이 상속되지 않게 하고 싶습니다.