Amazon QuickSight에서 데이터세트에 RLS를 적용했지만 데이터 액세스에 문제가 있습니다.
간략한 설명
다음은 Amazon QuickSight 데이터세트에서 행 수준 보안(RLS)을 사용할 때 발생할 수 있는 일반적인 문제입니다.
- 귀하는 익명의 QuickSight 사용자를 위한 QuickSight 내장 대시보드에서 데이터를 볼 수 없습니다.
- 제한된 사용자는 여전히 모든 데이터를 볼 수 있습니다.
- 제한되지 않은 사용자는 데이터를 볼 수 없습니다.
- RLS를 적용할 때 오류 코드 DatasetRulesInvalidColType이 나타납니다.
- 분석을 생성할 때 오류 코드 DatasetRulesUserDenied가 나타납니다.
RLS에는 다음과 같은 제한 사항이 있습니다.
- RLS는 QuickSight의 Enterprise 에디션에서만 사용할 수 있습니다.
- RLS는 데이터세트 규칙 내의 필드에 대해 string, char, varchar와 같은 텍스트 데이터만 지원합니다. 현재 RLS는 날짜 또는 숫자 필드에 사용할 수 없습니다.
- 사용자마다 적용되는 전체 규칙 기록 세트는 999개를 초과할 수 없습니다. 규칙이 999개를 초과하는 데이터세트는 데이터세트에 RLS 규칙을 적용하지 못할 수도 있습니다.
- QuickSight는 null을 빈 필드 값으로 취급하므로 기본값이 null인 빈 행에는 RLS를 적용할 수 없습니다. 하지만 필드의 스페이스는 리터럴 값으로 취급되므로 데이터세트 규칙이 이러한 행에 적용됩니다.
- 데이터세트 규칙에 추가된 사용자만 정의된 규칙을 기반으로 데이터를 볼 수 있습니다. 다른 사용자는 데이터를 볼 수 없습니다.
- 데이터세트 규칙에서 여러 필드가 사용되는 경우 규칙은 AND 연산자로 작동합니다. OR 연산자는 현재 지원되지 않습니다.
- RLS 태그 기반 규칙은 GenerateEmbedUrlForAnonymousUser API를 사용하는 익명 사용자를 위한 내장된 대시보드에서만 지원됩니다. GenerateEmbedUrlForRegisteredUser API를 사용하여 등록된 사용자를 위한 대시보드를 내장한 경우 사용자 수준 규칙을 사용하세요.
해결 방법
익명의 사용자를 위한 QuickSight 내장 대시보드에서 데이터를 볼 수 없습니다
익명 내장형 대시보드에 태그 기반 규칙을 사용하는 경우 데이터를 보거나 수정할 수 없습니다. 데이터를 보려면 데이터세트에 사용자 기반 RLS 규칙을 추가해야 합니다.
다음 예제 데이터세트 규칙에서 John Stiles는 물류 부서의 데이터만 볼 수 있습니다. Martha Rivera는 데이터세트의 모든 데이터를 볼 수 있습니다.
UserName,Department JohnStiles,Logistics
MarthaRivera,
**참고:**데이터세트에 태그 기반 규칙과 사용자 기반 RLS 규칙을 모두 적용할 수 있습니다.
제한된 사용자는 여전히 모든 데이터를 볼 수 있습니다
데이터세트에 너무 많은 규칙이 포함된 경우 RLS를 성공적으로 적용했더라도 제한된 사용자는 여전히 모든 데이터를 볼 수 있습니다. 이 문제를 해결하려면 데이터세트에 포함된 규칙이 999개 이하인지 확인하세요. UserName으로 사용자를 제한하고 데이터세트 규칙에 999명이 넘는 사용자가 있는 경우 QuickSight 그룹을 생성하세요. 그룹에 사용자를 추가하고 데이터세트 규칙에서 GroupName을 UserName 대신 사용합니다.
제한되지 않은 사용자는 어떤 데이터도 볼 수 없습니다
제한되지 않은 사용자가 데이터를 볼 수 없는 이유는 다음과 같습니다.
- 사용자는 데이터세트 규칙에 존재하지 않습니다. 데이터세트 규칙을 확인하여 대상 사용자가 모두 있는지 확인하세요.
- UserName 또는 GroupName이 QuickSight의 사용자 또는 그룹과 일치하지 않습니다. 데이터세트 규칙에서 UserName 또는 GroupName을 확인하여 QuickSight의 사용자 또는 그룹과 일치하는지 확인하세요.
RLS를 적용할 때 오류 코드 DatasetRulesInvalidColType이 나타납니다
RLS를 날짜 또는 숫자 필드에 사용할 때 DatasetRulesInvalidColType 오류가 발생합니다.
데이터세트 규칙에서 RLS를 평가하는 데 사용되는 필드를 확인하여 데이터 유형이 String인지 확인하세요. 또한 QuickSight에서 데이터세트를 편집하여 숫자 필드를 문자열로 변환할 수도 있습니다.
분석을 생성할 때 DatasetRulesUserDenied 오류 코드가 나타납니다
이 DataRulesUserDenied 오류는 사용자가 데이터세트 규칙에 없을 때 발생합니다. 이 오류를 해결하려면 데이터세트 규칙에 사용자를 추가한 다음 데이터세트를 새로고침하세요.
관련 정보
사용자 기반 규칙과 함께 행 수준 보안(RLS)을 사용하여 데이터세트에 대한 액세스를 제한합니다
익명 사용자를 위한 대시보드를 내장할 때 태그 기반 규칙과 함께 행 수준 보안(RLS)을 사용하여 데이터세트에 대한 액세스를 제한합니다
AND 및 OR 연산자를 사용하여 필터 조건(그룹 필터) 추가