Power BI Desktop을 사용하는 행 수준 보안(RLS)은 지정된 사용자에 데이터 액세스를 제한하는 데 사용됩니다. 행 수준에서 데이터 제한을 필터링합니다. 역할 내에서 필터를 정의할 수 있습니다.

참고:

RLS는 Pro 기능입니다. Pro 콘텐츠가 무엇인지에 대해 자세히 읽어볼 수 있습니다.

이제 Power BI Desktop으로 Power BI로 가져온 데이터 모델에 대한 RLS를 구성할 수 있습니다. SQL Server와 같은 DirectQuery를 사용하는 데이터 집합에서 RLS를 구성할 수도 있습니다. 이전에는 Power BI 외부의 온-프레미스 Analysis Services 모델 내에서 RLS를 구현할 수만 있었습니다. Analysis Services 라이브 연결의 경우 온-프레미스 모델에서 행 수준 보안을 구성합니다. 라이브 연결 데이터 집합에 보안 옵션이 표시되지 않습니다.

중요:

Power BI 서비스 내에서 역할/규칙을 정의한 경우 Power BI Desktop 내에서 해당 역할을 다시 만든 다음 보고서를 서비스에 게시해야 합니다.

Power BI 서비스 내에서 RLS에 대해 자세히 알아보세요.

Power BI Desktop 내에서 역할 및 규칙 정의

Power BI Desktop 내에서 역할 및 규칙을 정의할 수 있습니다. Power BI에 게시할 때 역할 정의도 게시됩니다.

동적 보안을 활용하려는 경우 미리 보기 스위치를 사용하여 DirectQuery에 대해 양방향 교차 필터링을 활성화해야 합니다. 이렇게 하면 교차 필터링할 수 있고 양방향으로 보안 필터를 적용할 수 있습니다.

보안 역할을 정의하기 위해 다음을 수행할 수 있습니다.

  1. Power BI Desktop 보고서에 데이터를 가져 오거나 DirectQuery 연결을 구성합니다.

    참고:

    Analysis Services 라이브 연결을 위해 Power BI Desktop 내에서 역할을 정의할 수 없습니다. Analysis Services 모델 내에서 이를 수행해야 합니다.

  2. 모델링 탭을 선택합니다.

  3. 역할 관리를 선택합니다.

  4. 만들기를 선택합니다.

  5. 역할의 이름을 입력합니다.

  6. DAX 규칙을 적용하려는 표를 선택합니다.

  7. DAX 식을 입력합니다. 이 식은 true 또는 false를 반환해야 합니다. 예: [엔터티 ID] = "Value"입니다.

    참고:

    이 식에 *username()*을 사용할 수 있습니다. *username()*은 Power BI Desktop 내에서 *도메인\사용자 이름*의 형식을 취합니다. Power BI 서비스 내에서는 사용자의 UPN 형식이 됩니다.

  8. DAX 식을 만든 후 식의 유효성을 검사하기 위해 식 상자 위에 확인란을 선택할 수 있습니다.

  9. 저장을 선택합니다.

Power BI Desktop 내에서는 사용자를 역할에 할당할 수 없습니다. 이 작업은 Power BI 서비스 내에서 수행됩니다. username() DAX 함수를 사용하고 적절한 관계를 구성하여 Power BI Desktop 내에서 동적 보안을 사용할 수 있습니다.

Power BI Desktop 내에서 역할 유효성 검사

사용자의 역할을 만든 후에 Power BI Desktop 내에서 역할의 결과를 테스트할 수 있습니다. 이를 수행하려면 역할로 보기를 선택합니다.

역할로 보기 대화 상자를 사용하여 해당 특정 사용자 또는 역할에 대해 표시되는 보기를 변경할 수 있습니다. 만든 역할을 볼 수 있습니다.

만든 역할을 선택한 다음 확인을 선택하여 보고 있는 내용에 해당 역할 내용을 적용합니다. 보고서는 해당 역할과 관련된 데이터만 렌더링합니다.

또한 다른 사용자를 선택하고 지정된 사용자를 제공할 수 있습니다. Power BI 서비스가 사용할 기능으로서 UPN(사용자 계정 이름)을 제공하는 것이 좋습니다. 확인을 선택하면 보고서는 사용자가 볼 수 있는 내용에 따라 렌더링합니다.

참고:

Power BI Desktop 내에서 DAX 식을 기반으로 하는 동적 보안을 사용하는 경우 서로 다른 결과만 표시됩니다.

제한 사항

다음은 클라우드 모델의 행 수준 보안에 대한 현재 제한 목록입니다.

  • 이전에 Power BI 서비스 내에서 역할/규칙을 정의한 경우 Power BI Desktop 내에서 이를 다시 생성해야 합니다.
  • Power BI Desktop 클라이언트를 사용하여 만든 데이터 집합에서만 RLS를 정의할 수 있습니다. Excel로 만든 데이터 집합에 RLS를 사용하려는 경우 먼저 파일을 PBIX 파일로 변환해야 합니다. 자세히 알아보기
  • ETL 및 DirectQuery 연결만이 지원됩니다. Analysis Services에 대한 라이브 연결은 온-프레미스 모델에서 처리됩니다.
  • 이 때 질문 및 답변과 Cortana는 RLS로 지원되지 않습니다. 모든 모델에서 RLS이 구성되어 있는 경우 대시보드에 대한 질문 및 답변 입력 상자가 표시되지 않습니다. 이는 로드맵 상에 있지만, 타임라인은 사용할 수 없습니다.
  • 현재 외부 공유는 RLS를 사용하는 데이터 집합으로 지원되지 않습니다.

알려진 문제

보고서가 이전에 게시된 경우 Power BI Desktop으로부터 게시하려 할 때 오류 메시지가 나타나는 문제가 있습니다. 시나리오는 다음과 같습니다.

  1. Anna에게는 Power BI 서비스에 게시된 데이터 집합과 구성된 RLS가 있습니다.

  2. Anna는 Power BI Desktop에서 보고서를 업데이트하고 다시 게시합니다.

  3. Anna에게 오류가 나타납니다.

해결 방법: 이 문제가 해결될 때까지 Power BI 서비스로부터 Power BI Desktop 파일을 다시 게시합니다. 데이터 파일 > 가져오기를 선택하여 이를 수행할 수 있습니다.

FAQ

질문: 이전에 Power BI 서비스의 데이터 집합에 대해 역할/규칙을 만든 경우 어떻게 됩니까? 아무 작업도 수행하지 않아도 계속 작동합니까? 응답: 아니요. 시각적 개체가 제대로 렌더링되지 않습니다. Power BI Desktop 내 역할/규칙을 다시 만든 다음, Power BI 서비스에 게시해야 합니다.

질문: Analysis Services 데이터 소스에 대해 이러한 역할을 만들 수 있습니까? 답변: 데이터를 Power BI Desktop으로 가져온 경우 사용할 수 있습니다. 라이브 연결을 사용하는 경우 Power BI 서비스 내에서 RLS를 구성할 수 없습니다. 이것은 Analysis Services 모델 온-프레미스 내에서 정의됩니다.

참고 항목

Power BI 서비스를 사용하는 행 수준 보안(RLS)
궁금한 점이 더 있나요? Power BI 커뮤니티를 이용하세요.