OAC 에서 Role Based Filter 설정을 통해 동일 워크북에서 사용자의 Application Role 별 필터링된 정보만 표현되도록 하는 방법을 알아보도록 하겠습니다.
About Role based filter
Role based filter 는 OAC(Oracle Analytics Cloud)에서 애플리케이션 역할에 대한 필터를 생성하여 작동합니다. 사전 정의된 Appliction Role 을 사용하거나 관리자에게 보다 복잡한 사용 사례에 필요할 수 있는 Custom Role 을 생성하도록 요청할 수 있습니다.
- 예를들어 영업 담당 임원은 관련 영업에 전체 데이터를 볼수 있도록 하고, 특정 영역에 영업팀원은 자신의 영역에 대한 영업 데이터만 조회하도록 제한 가능합니다.
참조 메뉴얼 : https://docs.oracle.com/en/cloud/paas/analytics-cloud/tutorial-role-based-filters/
1. 사전작업
계정 생성 및 권한 확인
- 아래와 같은 Application Role 및 계정 사용
- jaexxxxxx@xxxx.com , Application Roles ( OAC Admin ) < -- BI Service Administrator
- danxxxxx@xxxx.net , Application Roles ( Sales_VP_Americas ) <-- Direct Membership (DVContentAuthor)
- guyxxxxx@xxxx.com , Application Roles ( Sales_VP_Europe ) <-- Direct Membership (DVContentAuthor)
- coolxxxx@xxxx.com , Application Roles ( Sales_VVP ) <-- Direct Membership ( Sales_VP_Americas, Sales_VP_Europe )
* Sales_VVP 는 DVContentAuthor Role 을 직접 부여하지 않았지만, Sales_VP_Americas, Sales_VP_Europe Role 의 권한을 Direct membership 으로 상속 받았기 때문에 결국에는 DVContentAuthor Role 을 갖게 됨
* 참조 권한
2. 데이터 셋 작업
2.1 OAC Admin 으로 Oracle DB 에 기본 스키마인 SH 스키마를 이용하여 데이터 셋을 생성
- SH 스키마의 테이블을 중복 선택하여 우측으로 드레그 하면 아래와 같이 자동으로 Join 관계 생성됨
- 데이터 셋 저장 ( SH_Filtered)
2.2 OAC Admin 으로 Oracle DB 에 기본 스키마인 SH 스키마를 이용하여 데이터 셋을 생성
- 우상단에 Filter 아이콘 클릭
- 적용할 Application Filter 선택 : Sales_VP_America
- Filter 내용 작성 : COUNTRY_NAME = 'Americas'
동일하게 Sales_VP_Europe 에 대해서도 추가 합니다.
- 적용할 Application Filter 추가 선택 : Sales_VP_Europe
- Filter 내용 작성 : COUNTRY_REGION = ' Europe'
* 여기까지 작업하면 Sales_VP_Europe 및 Sales_VP_America 는 데이터를 볼 수 없습니다. 해당 데이터를 Access 하는 권한이 없기 때문입니다.(현재 작업 유저는 위 그룹소속이 아닙니다.) 따라서, 아래와 같이 해당 데이터에 해당 Role 이 Access 할 수 있는 권한 설정이 필요합니다.
위와 같이 셋팅하면, Sales_VP_Europe 및 Sales_VP_America 만 데이터에 해당 필터된 내용만을 볼 수 있습니다.
--> 주의 ! 단순하게 위에 접근롤을 DVContents Author 로 주면, 해당 Role 을 상속받은 모든 Role 및 User 가 해당 데이터에 접근하게 됩니다.
3. 워크북 생성 및 공유
3.1. 시나리오 #1 : OAC Admin Role 으로 워크북을 생성하고 해당 워크북 공유
- 데이터 셋의 Owner User 의 Role 에 대해서도 반드시 Filter 에 추가가 되어 있어야 해당 데이터를 볼 수 있습니다. (데이터 Access 권한 and 필터 권한 모두 필요 )
- 따라서 현재 작업자의 Appliction Role 을 아래와 같이 필터로 추가합니다.
* 필터에 1:1 을 주면, 모든 데이를 볼 수 있습니다. (해당 유저는 유럽이나 아메리카 뿐아닌, 모든 영역을 볼 수 있습니다)
- 이제 SH_Filtered 를 사용하여, WorkBook 을 작성 합니다.
- 워크북을 공유 폴더에 저장 합니다. (공유 폴더의 Access 권한이 기본적으로 상속됩니다)
* 워크북 저장시 아래와 같은 세부 옵션을 사용 할 수 있습니다. Share 와 Access 의 추가 삭제는 동기화 되어 있습니다.
(Ex, Access 에서 특정 Role 을 삭제하면 Share 에서도 해당 Role 은 삭제됩니다. 추가도 동일)
- 다른 유저로 해당 워크북에 접근 해 보겠습니다. ( Sales_VP_Europe )
- 다른 유저로 해당 워크북에 접근 해 보겠습니다. ( Sales_VVP )
3.2. 시나리오#2 : Sales_VP_Europe Role 으로 워크북을 생성하고 해당 워크북을 공유 폴더로 공유
- SH_Filtered 를 사용하여, WorkBook 을 작성 합니다.
* 워크북 작성 시에도 필터된 데이터만 보여지게 됩니다.
위 설정을 참고하여, OAC 의 User 사용 현황 및 성능에 대해서 관리하고 분석 할 수 있습니다.
참조 블로그 및 동영상
- https://www.youtube.com/watch?v=0WLtYK9RZNI
위의 단순한 필터 외, 좀더 복잡한 필터 조건은 아래 블로그 참조 하시기 바랍니다.
감사합니다
작성자: 장재석(coolguy81@gmail.com) / Cloud Architect
개인 시간을 투자하여 작성된 글로서, 글의 내용에 오류가 있을 수 있으며, 글 속의 의견은 개인적인 의견입니다
'4. 데이터분석' 카테고리의 다른 글
OAC:Advanced Configuration - Start/Stop using OCI CLI (0) | 2024.05.28 |
---|---|
Oracle Analytics Cloud (OAC) :사용자 및 관리자 계정 생성 및 권한 관리 - Advanced (0) | 2024.05.20 |
Oracle Analytics Cloud(OAC) :Advanced Configuration - Mail Settings (0) | 2024.04.15 |
Oracle Analytics Cloud(OAC) :Advanced Configuration - Track Usage (0) | 2024.04.12 |
Oracle Analytics Cloud (OAC) :사용자 및 관리자 계정 생성 및 권한 관리 - BASIC (0) | 2024.03.11 |
댓글