티스토리 뷰

 

페이지 수준 보안 (1)

 

수준 보안으로 보는 사람에 따라 데이터가 다르게 표시할 수 있는데, 이제는 페이지 수준의 요구사항까지 생기는 것 같습니다.

커뮤니티에도 최근 관련 질문이 올라왔고, 관련 아이디어가 Ideas (powerbi.com) 사이트에서도 2위에 올라와 있습니다.

 

 

조만간 지원이 될 수도 있지만 2가지 방법에 걸쳐 처리해보겠습니다. 첫 번째 방법은 RLS(행 수준 보안)을 이용하여 처리 가능합니다. 위의 그림과 같은 인터페이스를 통해 처리합니다.

저는 Overview, Sales Details, Manager 3개의 페이지를 가지고 있고 Overview 페이지만 보이게 하고 다른 페이지들은 숨김처리되어 있습니다. 오른쪽 상단에 페이지로 이동할 수 있는 탐색 부분을 추가했습니다.

 

페이지를 볼 수 있는 권한 테이블은 아래와 같이 구성되어 있습니다. 이 테이블의 페이지 이름을 탐색 슬라이서에 데이터 바인딩했습니다.

 

 

Go 버튼을 클릭하면 이동하도록 아래와 같이 측정값을 추가하고, Go 버튼의 작업에 Target으로 연결합니다. 다른 페이지에는 뒤로 버튼을 추가합니다.

TargetPage = SELECTEDVALUE(PageUser[Page])

 

행 수준 보안을 위해 역할을 생성하여 페이지를 볼 수 있는 권한 테이블을 UserPrincipalName()을 통해 필터링합니다.

 

보고서를 게시하고 Power BI 서비스에서 행 수준 보안의 구성원을 추가합니다.

사용자로 로그온하여 결과를 테스트해보겠습니다. Manager 페이지는 나오지 않습니다.

 

 행 수준 보안을 통해 페이지 수준의 보안을 구현해보았습니다. 하지만 보고서 URL로 직접 액세스할 수도 있으므로, 필요하다면 측정값에서 LOOKUPVALUE를 통해 데이터가 보이지 않도록 제어는 필요합니다. 측정값과 시각화에 작업을 해주어야 하기 때문에 손이 많이 갑니다. 다음 글에서는 다른 방법으로 페이지 수준 보안을 구현해보겠습니다.

댓글