액세스 제어를 위한 계층 구조 보안

계층 구조 보안 모델은 사업부, 보안 역할, 공유 및 팀을 사용하는 기존 보안 모델에 대한 확장입니다. 다른 기존 보안 모델과 함께 사용할 수 있습니다. 계층 구조 보안은 조직에 대한 레코드에 보다 세밀한 액세스를 제공하며 유지 관리 비용을 줄여줍니다.

예를 들어, 복잡한 시나리오에서 여러 사업부를 만들기 시작한 다음 계층 구조 보안을 추가할 수 있습니다. 이렇게 추가된 보안을 통해 다수의 사업부에 필요할 수 있는 유지 관리 비용이 훨씬 적게 들고 데이터에 대한 보다 세밀한 액세스가 가능해집니다.

관리지 계층 구조 및 위치 계층 구조 보안 모델

계층 구조, 관리자 계층 구조위치 계층 구조에 대한 두 가지 보안 모델을 사용할 수 있습니다. 관리자 계층 구조를 사용하면 관리자는 동일한 사업부 내에서 보고서로 또는 보고서의 사업부의 상위 사업부에서는 보고서의 데이터에 액세스할 수 있어야 합니다. 위치 계층 구조는 사업부에 대한 데이터 액세스를 허용합니다. 금융 조직인 경우 관리자가 사업부 외부의 데이터에 액세스하는 것을 방지하기 위해 관리자 계층 구조 모델을 선호할 수 있습니다. 그러나 귀하가 고객 서비스 조직의 일원이고 관리자가 다른 사업부에서 처리되는 서비스 케이스에 액세스할 수 있도록 하려는 경우 위치 계층 구조가 더 적합할 수 있습니다.

참고

계층 구조 보안 모델은 특정 수준의 데이터 액세스 수준을 제공하지만 보안 역할 같은 다른 보안 양식을 사용하여 추가 액세스를 얻을 수 있습니다.

관리자 계층 구조

관리자 계층 구조 보안 모델은 관리 체인 또는 직접 보고 구조를 기반으로 하며, 관리자와 보고서의 관계는 시스템 사용자 테이블에 있는 관리자 필드를 사용하여 설정됩니다. 이 보안 모델을 사용하면 관리자는 해당 보고서가 액세스할 수 있는 데이터에 액세스할 수 있습니다. 이들은 승인이 필요한 부하 직원 또는 액세스 정보를 대신하여 작업을 수행할 수 있습니다.

노트

관리자 계층 구조 보안 모델을 사용하여 관리자는 사용자 또는 사용자가 구성원인 팀에서 소유하고 있는 레코드 및 사용자 또는 사용자가 구성원인 팀과 직접 공유하는 레코드에 액세스할 수 있습니다. 관리 체인 외부에 있는 사용자가 읽기 전용 액세스 권한을 가진 부하 직원 사용자에게 레코드를 공유하는 경우, 부하 직원의 관리자에게는 공유 레코드에 대한 읽기 전용 액세스만 있습니다.

사업부 전반에 걸친 레코드 소유권 옵션을 사용 설정하면 관리자는 다른 사업부의 부하 직원을 담당할 수 있습니다. 다음 환경 데이터베이스 설정을 사용하여 사업부 제한을 제거할 수 있습니다.

ManagersMustBeInSameOrParentBusinessUnitAsReports

기본값 = True

false로 설정할 수 있으며 관리자의 사업부가 부하직원의 사업부와 같을 필요는 없습니다.

관리자 계층 구조 보안 모델 외에 관리자가 보고서의 데이터를 보려면 테이블에 대해 최소한 사용자 수준 읽기 권한이 있어야 합니다. 예를 들어, 관리자가 케이스 테이블에 대한 읽기 액세스 권한이 없는 경우 관리자는 해당 보고서가 액세스할 수 있는 케이스는 볼 수 없습니다.

관리자의 동일한 관리 체인에 있는 비 직접 보고서의 경우 관리자는 비 직접 보고서 데이터에 대한 읽기 전용 액세스 권한을 갖습니다. 부하 직원의 경우 관리자는 부하 직원의 데이터에 대한 읽기, 쓰기, 업데이트, 추가, 다른 레코드에 추가 액세스 권한을 갖습니다. 관리자 계층 구조 보안 모델을 보여주기 위해 아래의 다이어그램을 살펴 보겠습니다. CEO는 영업 VP 데이터 및 서비스 VP 데이터를 읽거나 업데이트할 수 있습니다. 그러나 CEO는 영업 관리자 데이터와 서비스 관리자 데이터는 물론 영업 및 지원 데이터만 읽을 수 있습니다. 깊이를 사용하여 관리자가 액세스할 수 있는 데이터의 양을 추가로 제한할 수 있습니다. 깊이는 관리자가 해당 보고서의 데이터에 읽기 전용 액세스할 수 있는 수준 수를 제한하는 데 사용됩니다. 예를 들어, 깊이가 2로 설정된 경우 CEO는 영업 VP, 서비스 VP 및 영업과 서비스 관리자의 데이터를 볼 수 있습니다. 그러나 CEO는 영업 데이터 또는 지원 데이터는 볼 수 없습니다.

관리자 계층 구조를 보여주는 스크린샷. 이 계층 구조에는 CEO, 영업 부사장, 서비스 부사장, 영업 관리자, 서비스 관리자, 영업 및 지원이 포함됩니다.

직접 보고서에 관리자보다 테이블에 대한 깊이 있는 보안 액세스가 있는 경우 관리자는 직접 보고서가 액세스하는 모든 레코드를 확인하지 못할 수 있다는 것을 아는 것이 중요합니다. 다음 예제에서는 이 항목을 보여줍니다.

  • 단일 사업부에는 세 가지 사용자, 사용자 1, 사용자 2 및 사용자 3이 있습니다.

  • 사용자 2는 사용자 1에 대한 직접 보고서입니다.

  • 사용자 1 및 사용자 3에는 계정 테이블에 대한 사용자 수준 읽기 액세스 권한이 있습니다. 이 액세스 수준은 사용자가 담당하는 레코드, 사용자와 공유하는 레코드, 사용자가 구성원으로 속한 팀과 공유하는 레코드에 대한 액세스를 사용자에게 부여합니다.

  • 사용자 2에는 계정 테이블에 대한 사업부 읽기 액세스 권한이 있습니다. 이 액세스를 통해 사용자 2는 사용자 1과 사용자 3이 소유한 모든 계정을 포함하여 사업부의 모든 계정을 볼 수 있습니다.

  • 사용자 1은 사용자 2의 직속 관리자로서 다른 사용자 2 팀과 공유하거나 소유한 계정을 포함하여 사용자 2가 소유하거나 공유하는 계정에 액세스할 수 있습니다. 그러나 사용자 1은 사용자 3의 계정에 액세스할 수 있지만 사용자 3의 계정에는 액세스할 수 없습니다.

위치 계층 구조

위치 계층 구조는 관리자 계층 구조처럼 직접 보고 구조를 기반으로 하지 않습니다. 사용자는 다른 사용자의 실제 관리자가 사용자 데이터에 액세스할 필요가 없습니다. 관리자는 조직에서 다양한 작업 위치를 정의하고 위치 계층 구조에 정렬합니다. 그런 다음 지정된 위치에 사용자를 추가하거나 사용자에게 특정 위치를 가진 태그를 추가합니다. 사용자는 지정된 계층 구조에 있는 한 위치에만 태그 지정될 수 있지만 위치는 여러 사용자에 사용할 수 있습니다. 계층 구조에서 더 높은 위치에 있는 사용자는 직접 상위 경로에서 더 낮은 위치에 있는 사용자의 데이터에 액세스할 수 있습니다. 직접 더 높은 위치는 직접 상위 경로에 있는 더 낮은 위치의 데이터에 대해 읽기, 쓰기, 업데이트, 추가, 다른 레코드에 추가 액세스 권한을 갖습니다. 비직접 더 높은 위치는 직접 상위 경로에 있는 더 낮은 위치의 데이터에 대해 읽기 전용 액세스 권한을 갖습니다.

직접 상위 경로에 대한 개념을 설명하기 위해 다음 다이어그램을 살펴 보겠습니다. 영업 관리자 위치는 영업 데이터에 액세스할 수 있지만 다른 상위 경로에 있는 지원 데이터는 액세스할 수 없습니다. 서비스 관리자 위치의 경우에도 마찬가지입니다. 영업 경로에 있는 영업 데이터에는 액세스할 수 없습니다. 관리자 계층 구조와 마찬가지로 깊이를 사용하여 더 높은 위치로 액세스할 수 있는 데이터의 양을 제한할 수 있습니다. 깊이는 더 높은 위치에서 직접 상위 경로에 있는 더 낮은 위치의 데이터에 읽기 전용 액세스 권한을 가질 수 있는 수준 수를 제한합니다. 예를 들어, 깊이가 3으로 설정된 경우 CEO 위치는 영업 VP 및 서비스 VP 위치부터 영업과 지원 위치까지 모든 데이터를 볼 수 있습니다.

위치 계층 구조를 보여주는 스크린샷. 이 계층 구조에는 CEO, 영업 부사장, 서비스 부사장, 영업 관리자, 서비스 관리자, 영업 및 지원이 포함됩니다.

참고

위치 계층 구조 보안 모델을 사용하여 더 높은 위치에 있는 사용자는 더 낮은 사용자 또는 사용자가 구성원인 팀에서 소유하고 있는 레코드 및 사용자 또는 사용자가 구성원인 팀과 직접 공유하는 레코드에 액세스할 수 있습니다.

위치 계층 구조 보안 모델 외에 더 높은 수준에 있는 사용자는 테이블에 대해 최소한 사용자 수준 읽기 권한을 갖고 있어야 더 낮은 위치의 사용자가 액세스할 수 있는 레코드를 볼 수 있습니다. 예를 들어, 더 높은 수준의 사용자가 케이스 테이블에 대한 읽기 액세스 권한이 없는 경우 해당 사용자는 더 낮은 위치에 있는 사용자가 액세스할 수 있는 케이스는 볼 수 없습니다.

계층 구조 보안 설정

계층 보안을 설정하려면 설정을 업데이트할 수 있는 시스템 관리자 권한이 있는지 확인하십시오.

  • 사용자 프로필 보기의 단계를 따르십시오.
  • 올바른 권한이 없습니까? 시스템 관리자에게 문의하세요.

계층 구조 보안은 기본적으로 사용되지 않습니다. 계층 구조 보안을 활성화하려면 다음 단계를 완료하십시오.

  1. 환경을 선택하고 설정>사용자 + 권한>계층 구조 보안으로 이동합니다.

  2. 계층 구조 모델에서 요구 사항에 따라 관리자 계층 구조 모델 활성화 또는 위치 계층 구조 모델 활성화를 선택합니다.

    중요

    계층 구조 보안을 변경하려면 계층 구조 보안 설정 변경 권한이 있어야 합니다.

    계층 구조 테이블 관리 영역에서는 기본적으로 모든 시스템 테이블에 계층 구조 보안이 활성화되어 있지만, 계층 구조에서 선택적으로 테이블을 제외할 수 있습니다. 계층 구조 모델에서 특정 테이블을 제외하려면 제외할 테이블의 확인란을 선택 취소하고 변경 사항을 저장하세요.

    환경 설정의 계층 보안 페이지 스크린샷.

  3. 관리자가 해당 보고서의 데이터에 읽기 전용 액세스할 수 있는 수준 수를 제한하기 위해 깊이를 원하는 값으로 설정합니다.

    예를 들어, 깊이가 2인 경우 관리자는 자신의 계정과 두 수준 깊은 보고서의 계정에만 액세스할 수 있습니다. 이 예에서 관리자가 아닌 영업 부사장으로 고객 참여 앱에 로그인하면 다음과 같이 사용자의 활성 계정만 표시됩니다.

    영업 부사장 및 기타 직책에 대한 읽기 액세스 권한을 보여주는 스크린샷.

    참고

    계층 구조 보안은 빨간색 사각형에 있는 레코드에 영업 VP 액세스 권한을 부여하지만 영업 VP가 가진 보안 역할에 따라 추가 액세스 권한을 얻을 수 있습니다.

  4. 계층 구조 테이블 관리 섹션에서는 기본적으로 모든 시스템 테이블에 계층 구조 보안이 활성화되어 있습니다. 계층 구조 모델에서 특정 테이블을 제외하려면 테이블 이름 옆에 있는 확인 표시를 지우고 변경 사항을 저장합니다.

    새로운 최신 UI의 설정에서 계층 보안을 설정하는 위치를 보여주는 스크린샷.

    중요

    • 이는 프리뷰 기능입니다.
    • 프리뷰 기능은 생산용으로 만들어진 것이 아니므로 기능이 제한될 수 있습니다. 이런 기능은 공식 릴리스 전에 사용할 수 있으므로 고객이 조기에 액세스하고 피드백을 제공할 수 있습니다.

관리자 및 위치 계층 구조 설정

관리자 계층 구조는 시스템 사용자 레코드에 대한 관리자 관계를 사용하여 쉽게 만들어집니다. 관리자(ParentsystemuserID) 조회 필드를 사용하여 사용자의 관리자를 지정합니다. 위치 계층 구조를 만든 경우 위치 계층 구조의 특정 위치로 사용자를 태그할 수도 있습니다. 다음 예제에서 영업 사원은 관리자 계층 구조에 있는 영업 관리자에게 보고하며 위치 계층 구조에서 영업 위치도 갖게 됩니다.

영업 사원 사용자 레코드를 보여주는 스크린샷.

위치 계층 구조의 특정 위치에 사용자를 추가하려면 사용자 레코드 양식에서 위치라는 조회 필드를 사용합니다.

중요

위치에 사용자를 추가하거나 사용자 위치를 변경하려면 사용자에 대한 위치 할당 권한이 있어야 합니다.

계층 구조 보안의 위치에 사용자를 추가하는 방법을 보여주는 스크린샷

사용자 레코드 양식의 위치를 변경하려면 탐색 모음에서 추가(…)를 선택하고 다른 위치를 선택합니다.

계층적 보안 내 사용자의 위치 변경

위치 계층 구조를 만들려면:

  1. 환경을 선택하고 설정>사용자 + 권한>위치로 이동합니다.

    각 위치에 대해 위치의 이름, 위치의 상위 위치 및 설명을 제공합니다. 이 위치의 사용자라는 조회 필드를 사용하여 이 위치에 사용자를 추가합니다. 다음 이미지는 활성 위치가 있는 위치 계층 구조의 예입니다.

    계층적 보안의 활성 위치

    해당 위치와 함께 활성화된 사용자의 예가 다음 이미지에 표시됩니다.

    할당된 직위가 있는 활성화된 사용자를 보여주는 스크린샷.

비활성화된 사용자 상태의 부하 직원이 소유한 레코드를 포함 또는 제외

관리자는 2024년 1월 31일 이후 계층 보안이 활성화된 환경에 대한 비활성화 상태 부하 직원의 레코드를 볼 수 있습니다. 기타 환경에서는 비활성화 상태 부하 직원의 레코드가 관리자 보기에 포함되지 않습니다.

비활성화된 상태 부하 직원의 레코드를 포함하려면 다음을 수행하십시오.

  1. OrganizationSettingsEditor 도구를 설치합니다.
  2. AuthorizationEnableHSMForDisabledUsers 설정을 true로 업데이트합니다.
  3. 계층 구조 모델링을 비활성화합니다.
  4. 다시 활성화하십시오.

비활성화된 상태 부하 직원의 레코드를 제외하려면 다음을 수행하십시오.

  1. OrganizationSettingsEditor 도구를 설치합니다.
  2. AuthorizationEnableHSMForDisabledUsers 설정을 false로 업데이트합니다.
  3. 계층 구조 모델링을 비활성화합니다.
  4. 다시 활성화하십시오.

참고

  • 계층 구조 모델링을 비활성화했다가 다시 활성화하면 시스템이 관리자 레코드 액세스를 다시 계산해야 하므로 업데이트에 시간이 걸릴 수 있습니다.
  • 시간 초과가 표시되면 관리자가 확인해야 하는 테이블만 포함하도록 계층 구조 테이블 관리 목록 아래의 테이블 수를 줄이세요. 시간 초과가 지속되면 지원 티켓을 제출하여 도움을 요청하세요.
  • 비활성화 상태 부하 직원의 레코드는 활성 상태인 다른 부하 직원과 공유되는 경우 포함됩니다. 공유를 제거하여 이러한 레코드를 제외할 수 있습니다.

성능 고려 사항

성능을 향상시키려면 다음과 같이 하는 것이 좋습니다.

  • 관리자 또는 위치 아래에 유효 계층 구조 보안을 50 사용자 미만으로 유지합니다. 계층 구조는 관리자 또는 위치 아래 50 사용자 이상이 있을 수 있지만 깊이 설정을 사용하여 읽기 전용 액세스에 대한 수준 수를 줄이고 이 제한을 사용하여 관리자 또는 위치 아래의 유효 사용자 수를 50 사용자 미만으로 줄일 수 있습니다.

  • 보다 복잡한 시나리오의 경우 다른 기존 보안 모델과 함께 계층 보안 모델을 사용합니다. 사업부를 많이 만들지 마십시오. 대신 적은 수의 사업부를 만들고 계층 구조 보안을 추가하십시오.

참조 항목

Microsoft Dataverse의 보안
계층적 데이터 쿼리 및 시각화