جاسازی امضا شده با Looker

1. قبل از شروع

جاسازی امضا شده راهی برای ارائه نگاه‌ها، تجسم‌ها، کاوش‌ها یا داشبوردهای تعبیه‌شده به‌طور خصوصی به کاربران شما بدون نیاز به داشتن یک ورود به سیستم Looker جداگانه است. در عوض، کاربران از طریق برنامه شخصی شما احراز هویت می شوند.

جاسازی امضا شده با ایجاد یک URL Looker خاص که در iframe استفاده خواهید کرد، شروع می شود. URL حاوی اطلاعاتی است که می خواهید به اشتراک بگذارید، شناسه کاربر در سیستم شما و مجوزهایی که می خواهید آن کاربر داشته باشد. سپس URL را با یک کلید مخفی ارائه شده توسط Looker امضا می کنید.

پیش نیازها

  • یک نمونه Looker در حال اجرا داشته باشید
  • یک سرپرست در نمونه Looker خود باشید

چیزی که یاد خواهید گرفت

  • چگونه نمونه Looker خود را تنظیم کنید تا امکان جاسازی امضا شده را فراهم کند
  • نحوه تولید یک کلید مخفی
  • اطلاعاتی را که باید برای درج در URL جاسازی امضا شده خود جمع آوری کنید
  • چگونه یک URL جاسازی شده امضا شده ایجاد کنیم
  • چگونه آیتم تعبیه شده را به برنامه خود اضافه کنید

2. میزبانی مناسب Looker

برخی از مرورگرها به طور پیش‌فرض یک خط‌مشی امنیتی دارند که کوکی‌های شخص ثالث را مسدود می‌کند، که از کارکرد جاسازی امضا شده جلوگیری می‌کند. برای این Codelab، ساده ترین راه برای رسیدگی به این مشکل این است که به طور موقت کوکی های شخص ثالث را در مرورگر خود مجاز کنید:

در راه اندازی تولید، باید یکی از استراتژی های زیر را برای رسیدگی به کوکی های شخص ثالث انتخاب کنید:

  • هم نمونه Looker و هم برنامه(های) خود را در جایی که از جاسازی امضا شده در همان دامنه استفاده می کنید قرار دهید. برای مثال، نمونه Looker شما ممکن است در looker.mycompany.com پیدا شود در حالی که سایت جاسازی امضا شده شما در analytics.mycompany.com بود.
  • قابلیت جاسازی بدون کوکی را فعال کنید، که به مرورگرهایی که کوکی‌های شخص ثالث را مسدود می‌کنند اجازه می‌دهد در دامنه‌های مختلف احراز هویت کنند. استفاده از این گزینه نیاز به پیکربندی اضافی دارد که در صفحه مستندات جاسازی بدون کوکی Looker's توضیح داده شده است.

3. یک کلید مخفی ایجاد کنید

برای ایجاد یک URL جاسازی امضا شده، به یک کلید مخفی از Looker نیاز دارید. برای انجام این کار:

  1. به صفحه Embed در بخش Admin Looker بروید.
  2. از منوی کشویی Embed SSO Authentication گزینه Enabled را انتخاب کنید و سپس Update را انتخاب کنید.
  3. دکمه Reset Secret را در قسمت Embed Secret انتخاب کنید تا راز جاسازی شما ایجاد شود.

این راز را در یک مکان امن کپی کنید، زیرا نمی‌توانید بدون تنظیم مجدد آن را از Looker بازیابی کنید. بازنشانی کلید، جاسازی‌هایی را که از کلید قدیمی استفاده کرده‌اند، خراب می‌کند.

4. ورودی ها را به URL جاسازی امضا شده جمع آوری کنید

برای ایجاد یک URL جاسازی شده امضا شده، باید اطلاعات زیر را جمع آوری کنید.

URL داده هایی که قرار است نمایش داده شوند

URL نگاه، کاوش، تجسم پرس و جو یا داشبوردی را که می‌خواهید جاسازی کنید، بازیابی کنید. سپس دامنه را بردارید و /embed قبل از مسیر قرار دهید.

برای مثال، https://instance_name.cloud.looker.com/looks/4 به /embed/looks/4 تبدیل می‌شود.

یا، https://instance_name.cloud.looker.com/explore/my_model/my_explore به /embed/explore/my_model/my_explore تبدیل می‌شود.

مجوزهایی که می خواهید کاربر تعبیه شده داشته باشد

مجوزهایی را که می خواهید کاربر تعبیه شده داشته باشد انتخاب کنید. مجوزهای مربوطه برای جاسازی امضا شده را می توانید در صفحه مستندات جاسازی امضا شده Looker's پیدا کنید.

برای اهداف این Codelab، مجوزهای زیر احتمالاً حداقل لیست قابل اجرا هستند:

  • access_data
  • see_lookml_dashboards
  • see_looks
  • see_user_dashboards
  • explore

اگر می خواهید قابلیت جاسازی کاربران را برای مرور و ذخیره محتوا آزمایش کنید، ممکن است بخواهید موارد زیر را نیز در نظر بگیرید:

  • save_content
  • embed_browse_spaces
  • embed_save_shared_space

مدل دسترسی که می خواهید کاربر تعبیه شده داشته باشد

مدل‌های Looker را که می‌خواهید کاربر تعبیه‌شده به آن دسترسی داشته باشد، انتخاب کنید. حداقل، کاربر باید به مدلی که زیربنای Look، Explore، تجسم پرس و جو یا داشبوردی که برای نمایش انتخاب کرده اید دسترسی داشته باشد.

ویژگی های کاربری که می خواهید کاربر تعبیه شده داشته باشد

ویژگی های کاربر Looker را که می خواهید کاربر جاسازی شده داشته باشد، در صورت وجود، انتخاب کنید. برای این Codelab ممکن است نیازی به افزودن هیچ ویژگی کاربری نباشد.

گروه هایی که می خواهید کاربر تعبیه شده داشته باشد

تعیین کنید که در صورت وجود، کاربر باید به کدام شناسه گروه (نه نام گروه) تعلق داشته باشد. برای این Codelab ممکن است نیازی به افزودن هیچ گروهی نباشد.

شناسه کاربری و گروه شرکت شما

نشانی‌های اینترنتی جاسازی شده با امضای Looker از شما می‌خواهند که یک شناسه منحصر به فرد برای هر کاربر در برنامه خود ارائه دهید که یک عنصر Looker جاسازی شده را مشاهده می‌کند. Looker این را "شناسه کاربری خارجی" می نامد و ممکن است هر رشته ای باشد.

در صورت لزوم، می توانید یک "شناسه گروه خارجی" نیز ارائه دهید. این یک شناسه منحصر به فرد برای گروهی است که کاربر در برنامه شما به آن تعلق دارد.

5. اسکریپت تولید URL خود را انتخاب کنید

برای ساختن یک URL جاسازی شده با امضای مناسب، باید از کد استفاده کنید تا بتوانید URL را با کلید مخفی خود به درستی رمزگذاری کنید و سایر موارد مرتبط با امنیت را ایجاد کنید.

خوشبختانه، چندین نمونه اسکریپت به زبان های برنامه نویسی مختلف در مخزن Looker_embed_sso_examples Github Looker موجود است. اسکریپت مربوط به خود را انتخاب کنید و آن را در محیط توسعه خود کپی کنید.

6. داده ها را پر کنید و اسکریپت را اجرا کنید

اسکریپت تولید URL که انتخاب کردید دارای متغیرها یا شیئی خواهد بود که می توانید تمام اطلاعات جمع آوری شده قبلی خود را همراه با مثال هایی برای نحوه ارائه آن اطلاعات در آن قرار دهید:

نام اسکریپت

Apx ردیف هایی برای ورودی شما

LookerEmbedClientExample.java

15 - 28

csharp_example.cs

18 - 35

go_example.go

193 - 202

node_example.js

87 - 104

python_example.py

103 - 111

ruby_example.rb

88 - 101

sso_embed.php

14 - 27

پس از جایگزینی نمونه‌ها با داده‌هایی که جمع‌آوری کرده‌اید، اسکریپت را اجرا کنید تا URL جاسازی شده امضاشده شما ایجاد شود. URL را برای مرحله بعدی یادداشت کنید.

7. URL را تست کنید

برای آزمایش URL نهایی خود، آن را در Embed URI Validator در صفحه Embed در بخش مدیریت Looker's قرار دهید. در حالی که این ویژگی نمی تواند تعیین کند که داده ها و مجوزهایی که شما تصور می کنید به درستی تنظیم شده اند یا خیر، می تواند تأیید کند که احراز هویت شما به درستی کار می کند.

8. URL را در iframe جاسازی کنید

در نهایت، با افزودن URL ایجاد شده به ویژگی src یک iframe ، Look، Explore، تجسم پرس و جو یا داشبورد خود را در برنامه خود جاسازی کنید. آن iframe را در محیط برنامه یا آزمایش خود قرار دهید.

در صورت تمایل، می‌توانید با استفاده از جاوا اسکریپت با استفاده از رویدادهای جاسازی‌شده Looker's Embedded JavaScript با iframe تعامل کنید.

9. اطلاعات تکمیلی

ویژگی جاسازی امضا شده Looker باید به دقت پیکربندی شود تا اطمینان حاصل شود که کاربران جاسازی شده به قابلیت مشاهده داده ها و مجوزهای مورد نظر شما محدود می شوند. لطفا موارد زیر را در نظر بگیرید:

  • صفحه مستندات جاسازی امضا شده Looker's جزئیات عمیقی در مورد نحوه ایجاد یک URL جاسازی امضا شده به همراه تمام گزینه های پیکربندی موجود ارائه می دهد.
  • بهترین شیوه‌های امنیتی Looker's Security برای صفحه اسناد تجزیه و تحلیل جاسازی شده راهنمایی برای پیکربندی ایمن جاسازی امضا شده ارائه می‌کند.
  • جاسازی امضا شده اغلب توسط مشتریان Looker برای ارائه داده ها به مشتریان خود استفاده می شود، در حالی که مستلزم آن است که مشتریان از شرکت ها یا گروه های مختلف از یکدیگر اطلاعی نداشته باشند. در این سناریو ما قویاً توصیه می کنیم که Looker را به عنوان یک سیستم بسته پیکربندی کنید که گاهی اوقات "نصب چندگانه" نامیده می شود.
  • قابلیت جاسازی امضا شده از طریق Looker's API در دسترس است.