محدودیت دسترسی به page ها در Power BI – قسمت دوم

در پست قبل با یکی از روش های محدودیت دسترسی Page آشنا شدیم. در این مقاله با روش داینامیک تر و ساده تری که پیاده سازی آن با استفاده از slicer است آشنا می شویم. همچنین در این روش از Dynamic RLS استفاده می کنیم که به مراتب مدل سازی رو برای ما آسون تر میکنه.

خروجی کار به صورت زیر خواهد شد :

جداول و ارتباط ها

برای پیاده سازی نیاز به سه جدول خواهیم داشت که به صورت زیر در رابطه خواهند بود:

جدول کاربران (Users):

جدولی که شامل اطلاعات کاربری کاربران است و در مثال ما شامل اطلاعات زیر می باشد. فقط دقت داشته باشید که UserName ها دارای DomainName می باشند که شما با نام دامین سازمان خود یا نام Machine خود جایگزین می کنید.

جدول صفحات (Pages):

جدولی شامل نام صفحات و همچنین ستونی که نشان دهنده جایگاه هر صفحه در slicer خواهد بود.

جدول دسترسی کاربران به صفحات (PagesUsers):

این جدول شامل اطلاعات کاربران و نام صفحاتی که کاربران به آن ها دسترسی دارند می باشد. رابطه این جدول با جدول User ی; رابطه “چند به یک” می باشد که در حالت Single خواهد بود.

ولی در رابطه با جدول Pages نیاز است که یک رابطه دو طرفه باشد (Both) که در صورت فیلتر شدن، صفحات مجاز برای مشاهده در slicer نشان داده شود. و همچنین برای اعمال فیلتر حتما تیک گزینه apply security filter in both directions رو بزنید.

ایجاد slicer و ناوبری

  • یک slicer ایجاد کنید و از جدول pages ستونن نام صفحات آن را پر کنید. تنها نکته ای که باید در نظر داشته باشید اینه که فیلتر رو بر روی single select قرار دهید….
  • به منظور رفتن به صفحات دیگه از یک button استفاده می کنیم. در قسمت Action حالت page navigation رو با measure زیر تکمیل می کنیم.

ایجاد دسترسی و تست

این بخش هم که مثله همیشه ایجاد یک دسترسی در قسمت manage roles هستش و به صورت زیر تکمیل میشه:

دو نکته آخر این که همه صفحات به غیر از صفحه home رو در حالت hidden قرار دهید و حتما مثله مقاله قبل دسترسی رو در RLS بخش Report Server یا Service ایجاد کنید.

در صورت تست دسترسی برای کاربریه خودم که 3 صفحه مجاز به دیدن داره خواهیم داشت:

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

Fill out this field
Fill out this field
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست