InfoGrab Docs

고급 권한: 백엔드 인프라

Mattermost의 권한을 위한 백엔드 서버 인프라를 설명합니다.

이 문서는 Mattermost의 권한을 위한 백엔드 서버 인프라를 설명하며, 설치를 수정하려는 기술적인 관리자나 개발자에게만 권장됩니다. 엔터티 정의 # 권한 # 권한 은 객체에 대해 수행될 수 있는 허용된 작업을 설명합니다. 이는 역할이 부여된 컨텍스트에서 권한을 부여하는 역할이 할당된 사용자가 수행할 수 있는 작업을 설명합니다. 역할 # 역할 은 권한이 부여되는 대상으로, 컨텍스트에서 사용자에게 할당되어 해당 컨텍스트에서 할당된 권한을 부여합니다. 한 사용자는 서로 다른 컨텍스트에서 서로 다른 역할이 부여한 서로 다른 권한 집합을 가질 수 있습니다. 범위 # 권한은 주어진 범위 내에 있습니다. Mattermost 시스템에는 시스템, 팀, 채널의 세 가지 범위가 있습니다. 권한은 적용되는 컨텍스트로부터 범위를 따라 계단식으로 내려갑니다. 예를 들어, "채널" 범위 권한이 "팀" 컨텍스트에 적용되면, 해당 권한은 해당 팀 내의 모든 채널에 적용됩니다. 권한은 다음과 같이 고려됩니다: 시스템 레벨에서만 의미가 있는 경우 시스템 범위 . 예: manage_oauth . 팀 레벨과 시스템 레벨에서 의미가 있는 경우 팀 범위 . 예: create_public_channel . 채널, 팀, 시스템 레벨에서 의미가 있는 경우 채널 범위 . 예: manage_public_channel_properties . 컨텍스트 # 컨텍스트 는 범위의 인스턴스입니다. 예를 들어 "Developers Hangout"이라는 채널은 채널 범위의 인스턴스입니다. 컨텍스트는 범위의 계층적 순서를 반영하는 계층적 관계를 가집니다. 각 컨텍스트는 하나의 부모를 가지며, 여러 하위를 가질 수 있으며, 궁극적인 부모 컨텍스트는 시스템 컨텍스트입니다: 채널 컨텍스트는 부모 팀 컨텍스트를 가지며, 그 부모는 시스템 컨텍스트입니다. 예를 들어 "Developers Hangout" 채널은 채널 컨텍스트이며, 부모 팀 컨텍스트는 "Contributors Team", 부모는 시스템 컨텍스트입니다. 팀 컨텍스트는 부모 시스템 컨텍스트와 하위 채널 컨텍스트를 가집니다. 예를 들어 "Contributors Team"은 팀 컨텍스트이며, 부모는 시스템 컨텍스트이고, 하위 채널 컨텍스트는 "Developers Hangout", "Reception", "Marketing" 등이 있습니다. 특정 컨텍스트에서 사용자가 특정 작업을 수행할 수 있는지 여부를 결정할 때, 현재 컨텍스트와 그 부모 컨텍스트에서 해당 사용자에게 할당된 모든 역할의 권한의 합집합이 계산됩니다. 이를 통해 권한이 범위 계층 구조를 따라 계단식으로 내려갈 수 있습니다. 예를 들어, 사용자가 시스템 컨텍스트의 역할에서 manage_public_channel_properties 권한을 부여받으면, 사용자는 자신이 멤버인 모든 팀의 모든 채널에서 공개 채널 속성을 관리할 수 있는 권한을 가집니다. 스키마 # 스키마는 컨텍스트 및 모든 하위 컨텍스트에서 사용자에게 적용되는 기본 역할을 설명합니다. 스키마는 특정 컨텍스트에 대해 특별히 정의