용도
access_filter: {
field: full_Scope_field
user_attribute: user_attribute_name
}
}
계층 구조
access_filter |
기본값
없음결제 가능
LookML 필드 이름 및 연결된 사용자 속성특수 규칙
동일한 탐색에서 여러 access_filter 매개변수를 적용할 수 있습니다.
|
정의
access_filter
를 사용하면 사용자별 데이터 제한을 적용할 수 있습니다. 대부분의 LookML 매개변수와 달리 제대로 작동하려면 Looker의 다른 설정과 함께 사용해야 합니다. access_filter
매개변수는 단일 탐색에만 사용할 수 있으므로 제한사항이 필요한 각 탐색에 access_filter
매개변수를 적용해야 합니다.
access_filter
가 필요한 모든 탐색에 추가하는 것을 잊지 마세요.access_filter
를 추가해야 하는 탐색에 추가하는 것을 잊어버리면 데이터가 제한되지 않으며 사용자는 해당 탐색 분석의 모든 데이터를 볼 수 있습니다.
access_filter
의 동작은 사용자와 함께 앉아서 사용자가 쿼리를 실행하기 전에 탐색 UI에서 하나 이상의 필터를 적용해야 하는 것과 비슷합니다. 예를 들어 사용자가 일부 고객만 다룰 수 있으므로 해당 사용자에게 고객 이름 필터를 적용해야 합니다.
액세스 필터를 구현하려면 다음 단계를 따르세요.
- 제한이 필요한 필드를 결정합니다. 위의 예에서 사용자는 이름이라는 측정기준과 함께 고객 탐색 분석을 사용할 수 있습니다. 이 필드는
customer.name
으로 참조합니다. - 해당 탐색 분석과 상호작용하려면 모든 사용자에게 액세스 필터 값이 필요합니다. 이 예에서는 모든 사용자에게 표시될 수 있는 고객 이름 목록이 필요합니다. Looker의 사용자 속성 기능을 활용하여 각 사용자 또는 사용자 그룹에 이 값을 적용합니다. Looker의 사용자 속성 기능은 사용자 속성 문서 페이지에서 자세히 알아볼 수 있습니다. allowed_customers 사용자 속성을 만든다고 가정해 보겠습니다.
- 마지막으로 만든 사용자 속성을 필터로 사용해야 하는 필드에 연결합니다. 이 예에서는 다음과 같이 allowed_customers 사용자 속성을
customer.name
필드에 연결하려고 합니다.
explore: customer {
access_filter: {
field: customer.name
user_attribute: allowed_customers
}
}
Examples
사용자가 판매 지역에 대한 정보를 보도록 제한하기:
explore: customer {
access_filter: {
field: sales.region
user_attribute: sales_region
}
}
사용자가 고객 내 특정 부서에 대한 정보만 보도록 제한하기:
explore: customer {
access_filter: {
field: customer.name
user_attribute: allowed_customers
}
access_filter: {
field: product.department
user_attribute: allowed_departments
}
}
일반 과제
access_filter
에는 전체 범위의 필드 이름이 필요합니다.
뷰 이름 없이 필드 이름을 작성하는 경우 Looker의 대부분 매개변수는 매개변수가 사용된 위치를 기반으로 뷰 이름을 가정합니다. 그러나 access_filter
는 이러한 방식으로 작동하지 않으므로 뷰 이름과 필드 이름을 모두 써야 합니다.
예를 들어 정상적으로 작동하고 name
가 고객 이름으로 해석될 수 있습니다.
explore: customer {
access_filter: {
field: name
user_attribute: allowed_customers
}
}
하지만 실제로는 그렇지 않으며 오류 메시지가 표시됩니다. 대신 다음과 같이 작성해야 합니다.
explore: customer {
access_filter: {
field: customer.name
user_attribute: allowed_customers
}
}
관리자가 UI에서 필터 값을 설정해야 함
access_filter
를 사용하는 탐색에 액세스하는 모든 사용자는 참조된 사용자 속성에 값이 있어야 합니다. 이는 관리자 역할이 있는 사용자에게 모든 데이터를 볼 수 있음에도 적용됩니다. 사용자 속성 값을 설정하지 않은 사용자가 탐색 분석을 보려고 할 때 오류가 발생합니다.
관리자 또는 다른 사용자에게 문자열 필드의 모든 값에 대한 액세스 권한을 부여하려면 사용자 속성 데이터 유형을 문자열 필터 (고급)로 설정하고
%, NULL
값을 사용합니다.관리자 또는 다른 사용자에게 숫자 필드의 모든 값에 대한 액세스 권한을 부여하려면 사용자 속성 데이터 유형을 숫자 필터 (고급)로 설정하고
<0, >=0, NULL
값을 사용합니다.