وقتی کتابهای کاری را با دیگران با انتشار آنها در Tableau Server یا Tableau Cloud به اشتراک میگذارید، بهطور پیشفرض، همه کاربرانی که به کتابهای کاری دسترسی دارند میتوانند همه دادههای نشاندادهشده در نماها را ببینند. میتوانید این رفتار را با اعمال نوعی فیلتر لغو کنید که به شما امکان میدهد مشخص کنید که هر شخصی که وارد سرور شده است، کدام «ردیفها» را در نما ببیند.
این رویکرد برای ایمن سازی داده ها در سطح ردیف در مورد منابع داده با اتصالات زنده و استخراج منابع داده که جداول آنها به صورت جداول چندگانه ذخیره می شود اعمال می شود. برای اطلاعات بیشتر در مورد ذخیره داده های استخراج با استفاده از چندین جدول، به تصمیم گیری در مورد نحوه ذخیره داده های استخراج مراجعه کنید.
توجه: برای کسب اطلاعات در مورد گزینه های جایگزینی که می توانید برای پیاده سازی امنیت در سطح ردیف در Tableau استفاده کنید، به مروری بر گزینه های امنیتی سطح ردیف در Tableau (پیوند در یک پنجره جدید باز می شود) در راهنمای سرور Tableau مراجعه کنید.
نحوه عملکرد فیلتر مبتنی بر کاربر
فرض کنید یک گزارش فروش فصلی برای مجموعه ای از محصولات در طی چندین سال، در مناطق جغرافیایی مختلف ایجاد کرده اید.
وقتی این گزارش را منتشر می کنید، می خواهید به هر مدیر منطقه ای اجازه دهید فقط داده های مربوط به منطقه خود را ببیند. به جای ایجاد یک نمای جداگانه برای هر مدیر، می توانید یک فیلتر کاربری اعمال کنید که دسترسی به داده ها را بر اساس ویژگی های کاربران، مانند نقش آنها، محدود می کند.
محدود کردن دسترسی به داده ها از این طریق به عنوان امنیت در سطح ردیف (RLS) نامیده می شود. Tableau رویکردهای زیر را برای امنیت در سطح ردیف ارائه می دهد:
این روش راحت است اما نگهداری بالایی دارد و امنیت می تواند آزمایشی باشد. این کار باید در هر کتاب کار انجام شود، و شما باید فیلتر را به روز کنید و منبع داده را با تغییر پایگاه کاربر خود دوباره منتشر کنید.
با استفاده از این روش، یک فیلد محاسبهشده ایجاد میکنید که فرآیند نگاشت کاربران به مقادیر دادهها را خودکار میکند. این روش مستلزم آن است که داده های اساسی شامل اطلاعات امنیتی باشد که می خواهید برای فیلتر کردن استفاده کنید.
رایج ترین راه برای انجام این کار استفاده از جدول مرجع ("جستجو"، "حقوق" یا "امنیت") است که حاوی این اطلاعات است. به عنوان مثال، اگر میخواهید یک نما را فیلتر کنید تا فقط ناظران بتوانند آن را ببینند، دادههای اساسی باید طوری تنظیم شوند که شامل نامهای کاربر باشد و نقش هر کاربر را مشخص کند.
از آنجایی که فیلترینگ در سطح داده تعریف شده و توسط فیلد محاسبه شده خودکار می شود، این روش از نگاشت کاربران به مقادیر داده به صورت دستی ایمن تر است.
افزودن فیلترهای کاربر به منابع داده
دو روش در بخش قبل روشهای افزودن فیلتر به دادههای تعبیهشده در کتابهای کاری را توضیح میدهند. اگر چندین کتاب کار به یک داده متصل میشوند، به جای فیلترهای بحث بر روی هر کتاب کار، میتوانید منبع داده را فیلتر کنید و پس از انتشار آن، کتابها را به منبع داده متصل کنید.
کتابهای کاری که به منبع داده فیلتر شده شما متصل میشوند، فقط دادههایی را نشان میدهند که کاربر وارد شده به سرور مجاز به دیدن آنهاست. علاوه بر این، همه کتابهای کار متصل، بهروزرسانیهای دادهها را در صورت وقوع نشان میدهند.
استخراج در مقابل اتصالات زنده با فیلترهای کاربر
به طور کلی، هنگام استفاده از یکی از روشهایی که در بالا توضیح داده شد، RLS با استخراج سریعتر ایجاد میشود و عملکرد بهتری نسبت به RLS با منابع دادهای که از اتصالات زنده استفاده میکنند، دارند.
الزامات برای RLS با منابع داده استخراج
همانطور که قبلا ذکر شد، اولین نیاز برای استفاده از RLS با عصاره ها این است که داده های موجود در عصاره باید با استفاده از چندین جدول فیزیکی ذخیره شوند. میتوانید عصاره خود را به گونهای پیکربندی کنید که دادههای آن با استفاده از چندین جدول فیزیکی ذخیره شود، با دنبال کردن «تصمیم بگیرید که چگونه دادههای استخراج باید ذخیره شوند».
علاوه بر الزام فوق، اگر قصد دارید از RLS همراه با عصاره خود استفاده کنید، ملاحظات دیگری نیز وجود دارد. از آنجایی که استخراج دادههای ذخیره شده با استفاده از چندین جدول از فیلترهای استخراج و برخی عملکردهای دیگر که به کاهش مقدار داده در استخراج کمک میکند پشتیبانی نمیکنند، ممکن است یکی از پیشنهادات زیر را در نظر بگیرید:
با استفاده از SQL سفارشی به داده ها متصل شوید
به نمای پایگاه داده ای متصل شوید که از قبل دارای سطح مناسب فیلتر است
روش های توصیه شده برای RLS با منابع داده استخراج
برای اجرای موثر RLS با عصاره ها، Tableau توصیه می کند تعداد جداول (یا نماهای پایگاه داده یا پرس و جوهای سفارشی SQL) را در عصاره های خود به دو عدد نگه دارید. به عبارت دیگر، Tableau توصیه می کند که جداول موجود در عصاره شما از انواع جداول زیر تشکیل شده باشد:
جدول داده - این جدول "شی" است که شامل تمام داده هایی است که می خواهید نشان دهید.
جدول مرجع - این جدول "جستجو" یا "حقوق" است که حاوی اطلاعات کاربر و گروه های امنیتی است که کاربران به آنها تعلق دارند.
با کوچک کردن جداول موجود در استخراج خود به این دو، اطمینان حاصل می کنید که تنها پیوندی که Tableau باید انجام دهد بین این دو جدول است و بنابراین از هر گونه تکرار داده یا "انفجار پیوستن" جلوگیری می کنید.
درباره RLS و نسخه های قبلی Tableau
قبلاً، Tableau به دلیل پیچیدگیهای مربوط به تکرار ردیف و عملکرد، قادر به پشتیبانی از گردشهای کاری RLS با عصارهها نبود. در نهایت، این پیچیدگیها از عصارهای ناشی میشوند که دادههای آن تنها میتوان به صورت یک جدول ذخیره و جستجو کرد. با این حال، با شروع Tableau 2018. 3، میتوانید انتخاب کنید که دادهها را با استفاده از چندین جدول در عصاره ذخیره کنید و بنابراین یک گردش کار را برای RLS با عصارهها فعال کنید، همانطور که قبلاً با منابع داده با اتصالات زنده انجام دادهاید.
برای یک بحث جامع در مورد RLS با عصاره ها در Tableau، وبلاگی را بخوانید که توسط مشاور فروش Tableau که تجربه زیادی در این زمینه دارد، نگهداری می شود.
سلب مسئولیت: با کلیک بر روی این پیوندها شما را از Tableau. com دور می کند. اگرچه ما تمام تلاش خود را برای اطمینان از دقیق و مرتبط بودن پیوندهای وبسایتهای خارجی انجام میدهیم، Tableau نمیتواند مسئولیت یا پشتیبانی از محتوای خارجی را بر عهده بگیرد.