2017-03-01 3 views
0

직원에게 데이터를 필터링하는 방법을 찾고 있는데, "고객 관계로 사용자"를 만드는 것과 같은 문제입니다. 문제는 사실이며, 나는 100+보고가 있습니다. 이미 존재하고 각 하나를 편집하고 싶지 않다, 나는 Shard 데이터 소스를 사용한다. 어떻게 든 그 소스에서 RLS를 구현할 수 있을까? 또는 ssas RLS를 함께 사용할 수도 있습니다. 내 마음에 오는공유 데이터 세트의 행 수준 보안 SSRS

SQL 서버 2012 엔터프라이즈

당신에게

답변

1

하나 개의 솔루션 감사는 각 공유 데이터 집합에 도메인 사용자 이름에 따라 행을 필터링하는 부분을 추가하는 것입니다.

이가 필요합니다 (아직없는 경우)

  1. SSRS 보고서를 실행하는 사용자가 SQL 서버에 액세스해야합니다
  2. 당신은 액세스 권한을 정의하는 테이블을 구축
  3. 있을 것입니다

SQL Server 2014 이상을 실행하는 경우 기본 제공 RLS를 사용할 수 있습니다. 액세스 권한을 정의하고 액세스 제어 기능을 만들어야합니다. 그래도 각 사용자가 볼 수있는 것을 결정하는 데 도움이되는 데이터 저장소가 필요합니다 - RLS here에 대한 자세한 내용.

+0

당신은 데이터 세트 또는 소스를 의미합니까, 그들은 모두 완전히 다른 데이터 세트를 가지고 있습니다, 동일한 소스는 하나의 데이터베이스에 연결 문자열로만 존재합니다. 제 문제는 각 세트를 편집하고 싶지 않고 잠재적으로 숨김을 추가 할 수 있습니다. 매개 변수는 여전히 보고서를 유도하는 쿼리를 편집해야 할 것입니다. 피하려고하는 것이 무엇입니까 – NebNerlo

+1

2014 또는 2016으로 전환하지 않는 한 RLS를 구현할 수없는 방식으로 데이터 세트를 변경하지 않고도 쿼리를 이동할 수 있습니다. 스토어드 프로 시저에 저장하고 거기에서도 수행 할 수 있지만 여전히 변경을 피할 수는 없습니다. –