home

행 수준 보안

행수준 보안(Row-Level Security, RLS)은 특정 테이블과 역할 집합에 필터를 적용하여
사용자가 조회 가능한 데이터 목록을 제한하는 기능입니다.
예를 들어, 마케팅부서의 구성원은 마케팅부서의 데이터만 볼 수 있도록 설정할 수 있습니다.

설정 방법

1.
우측 상단의 설정 ▾ → 행 수준 보안 메뉴 클릭합니다.
2.
우측 상단의 + 규칙 버튼 클릭합니다.
3.
행 수준 보안 필터 정보를 입력합니다.
a.
필터 유형 : Regular, Base 중에 선택합니다.
i.
Regular : 해당 역할에 속한 사용자에 대한 모든 쿼리에 적용됩니다. 
ii.
Base : 역할에 추가되지 않은 not 사용자의 모든 쿼리에 적용됩니다.
b.
데이터셋 : 행 수준 보안 필터를 적용할 테이블을 선택합니다.
c.
역할 : 행 수준 보안 필터를 적용할 역할을 선택합니다. 이때 RLS 적용을 위한 Role을 따로 생성하여 사용하는 것을 권장합니다.
d.
그룹 키 (선택) : 필요 시 ANDOR 조건을 적용할 수 있는 그룹을 지정하는 식별자를 입력합니다.
e.
조건 절 : 적용될 필터 조건을 입력합니다.
i.
생성한 필터는 SQL 문의 WHERE 절에 자동으로 추가됩니다.
ii.
복수의 조건을 포함하는 필터도 설정 가능합니다.
예: 부서 = "영업부" AND 팀명 = "온라인팀"
f.
저장하기 버튼을 클릭합니다.
하나의 역할에 여러 행 수준 보안 필터를 부여할 때의 참고사항
하나의 역할에 여러 규칙이 저장된 경우, SQL 쿼리문 내에서 AND 구문을 사용하여 결합됩니다.
서로 충돌하는 필터가 하나의 역할에 부여된 경우 결과가 없는 쿼리가 생성될 수 있으니 주의 바랍니다.

사용 예시

예를 들어 어떤 Viewer 사용자가 영업부온라인팀 데이터만 봐야 한다면,
RBAC(역할 기반 접근 제어)와 RLS(행 수준 보안)을 이용하여 다음과 같이 권한 부여할 수 있습니다.
1.
역할 목록 메뉴에서 RLS 적용을 위한 “역할”을 생성합니다.
HC_DataAsset_* 역할을 복사 후 편집하는 것을 권장합니다.
예: HC_DataAsset_영업부, HC_DataAsset_온라인팀
2.
행 수준 보안 메뉴에서 다음과 같이 “규칙”을 생성합니다.
영업부 영업부 데이터를 필터링하는 규칙 생성하여 역할에 HC_DataAsset_영업부 부여
온라인팀 부문 데이터를 필터링하는 규칙 생성하여 역할에 HC_DataAsset_온라인팀 부여
3.
해당하는 사용자에게 다음 3개의 역할을 부여합니다.
HC_UserType_Viewer, HC_DataAsset_영업부, HC_DataAsset_온라인팀
4.
사용자가 관련 대시보드를 조회할 때, 영업부온라인팀 데이터만 노출됩니다.
 메뉴로 돌아가기