UML 클래스 다이어그램에서 "허가 매트릭스"를 가장 잘 시각화하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/237373

문제

단순화를 위해:

다양한 종류의 사용자 수준 및 작업이있는 권한 기반 시스템이 있습니다 (생각 : UNIX 파일 시스템 권한)

UML에서 이것을 시각화하는 가장 좋은 방법은 무엇입니까?

도움이 되었습니까?

해결책

일반적으로 사용자, 역할 및 권한을 나타내는 클래스가 있습니다. 사용자는 역할에 속하며 역할은 권한이 부여됩니다. 다른 개체에 액세스하려면 권한이 필요합니다. UML에서 나는 당신이 추상 기본 클래스로서 역할을 모델링하고 각 역할마다 하나씩 여러 가지 구현을 가지고 있다고 생각합니다.

일반적으로, 나는 읽을 수 있고 쓰기 가능한 삭제 가능한 비즈니스 엔티티 클래스 (아마도 속성 제외 또는 포함 포함)를 포함하는 객체로 권한을 모델링합니다. 각 역할은 한 번의 권한이 있습니다. 이 권한은 하나 이상의 다른 클래스에 대한 액세스를 허용하거나 거부합니다. 허가는 기본적으로 거부되며, 클래스가 요청 된 조치에 대한 해당 세트에있는 경우에만 액세스 할 수 있습니다.

다른 팁

파일 시스템 객체에 여러 표준 방법이 있다고 생각하고 있으며 각각은 관련 권한이 있습니다.

일반적으로 관심있는 9 가지 방법/권한이 있습니다 : (사용자, 그룹, 기타) * (읽기, 쓰기, 실행)의 조합. 또한 Sticky 및 Setuid와 같은 옵션이 있습니다.

파일 시스템 객체는 한 명의 사용자 및 한 그룹과 관련이 있습니다. 사용자는 여러 그룹과 관련이 있습니다.

현재 사용자는 모든 그룹과 관련이 있습니다.

위는 꽤 표준 클래스 다이어그램입니다. 파일 시스템 객체, 사용자, 그룹, 협회. 파일 시스템 객체에는 속성 더미와 9 개의 표준 방법이 있습니다.

허용 된 내용에 대한 제약에는 깔끔한 다이어그램이 없습니다. 규칙 표현 세트입니다. 첫 번째는 사용하도록 권한이있는 (사용자, 그룹 또는 기타)와 세트의 권한 (읽기, 쓰기 또는 실행)입니다.

콘크리트 객체 세트 (UNIX에는 사용자, 그룹, 기타)가있는 사용자 클래스의 클래스를 정의 할 수 있으며, 일부 콘크리트 객체 세트 (UNIX는 읽기, 쓰기, 실행)가있는 작업 클래스입니다. 그런 다음 두 개의 연관성으로 권한을 정의 할 수 있습니다 : 하나는 사용자 클래스와 하나는 운영 클래스에서.

조합 사용자 클래스 인스턴스와 작동 클래스 인스턴스를 까다 로워하는 완전한 세트 방법을 나열하는 것이 더 쉽다고 생각합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top