기타/Open Source
Apache Superset에서 권한 설정
MJ.Lee
2023. 2. 6. 10:22
권한 설정
권한 설정에 대한 공식 문서는 아래 페이지 참조
https://superset.apache.org/docs/security/
권한 설정이 있어서, Admin용과 View용 권한을 따로 설정할 수 있다.
우측 상단의 Settings > List Roles를 선택하면, 아래와 같이 Role을 관리할 수 있다.
기본적으로 제공하는 권한은 Admin, Public, Alpha, Gamma, sql_lab 이다.
- Admin
- 관리자 권한 모든 권한을 가지고 있다.
- Alpha
- Dashboard, Charts, Datasets 메뉴를 이용할 수 있다. SQL Lab은 사용 불가능하다.
- 모든 Datasource에 접근 가능하다.
- 본인이 만든 Dashboard, Chart, Dataset은 보기, 수정, 삭제 가능하다.
- 다른 사람이 만든Dashboard, Chart, Dataset은 보기 가능하다. 삭제, 수정은 불가능 하다. 다른 이름으로 저장할 수 있다.
- 다른 유저에게 Role을 부여하거나 회수할 수 없다.
- Gamma
- 접근이 허용된 Datasource에 관해서 Dashboards, Charts, Datasets 조회 가능하다.
- 본인이 만든 Dashboard, Chart는 보기, 수정, 삭제 가능하다. Dataset은 생성이 불가능하다.
- 기본적으로 접근이 허용되는 Datasource가 없기 때문에, Role에서 아래와 같이 접근 허용할 datasource에 관한 Permission을 추가해줘야 한다.
- Datasource에 접근 권한이 없다면, Dataset, Chart, Dashboard에 대한 접근 권한이 있더라도 해당 Datasource로 만든 모든 결과물들은 조회되지 않는다. 아래와 같이 Datasource에 관한 접근 권한을 추가해줘야 한다.
- Public
- Dashboard, Chart 등을 외부로 공유할 때 Public 권한으로 접근하게 된다.
- superset_config.py file에 있는 PUBLIC_ROLE_LIKE 값을 설정함으로써 Public Role에 어떤 Role을 사용할 지 설정할 수 있다.
- 예를 들어, Gamma Role을 Public Role에 부여하고 싶으면, PUBLIC_ROLE_LIKE = "Gamma" 로 설정할 수 있다.
- sql_lab
- SQL LAB에 대한 권한만 있다.
참고 문서
- Reaonly만 되는 권한 생성 방법
https://stackoverflow.com/questions/64709056/give-readonly-access-to-dashboard-in-superset
- iframe에 superst의 chart를 embd할 때, Superset Login을 하지 않는 방법. (Public 설정 관련)