הטמעה חתומה

הטמעה חתומה היא דרך להציג למשתמשים טבלאות Look, תרשימים להמחשה, Explore, מרכזי בקרה או מרכזי שליטה של LookML פרטיים ומוטמעים, בלי שהם יצטרכו להתחבר בנפרד ל-Looker. במקום זאת, המשתמשים יאומתו דרך האפליקציה שלכם.

כדי להטמיע חתימה, צריך ליצור כתובת URL מיוחדת של Looker ולהשתמש בה ב-iframe. כתובת ה-URL מכילה את המידע שאתם רוצים לשתף, את מזהה המשתמש במערכת שלכם ואת ההרשאות שאתם רוצים לתת למשתמש. לאחר מכן, חותמים על כתובת ה-URL באמצעות מפתח סודי שסופק על ידי Looker.

כדי להטמיע באופן ציבורי, עיינו בקטע הטמעה ציבורית עם תגי iframe בדף התיעוד שיתוף, ייבוא והטמעה של Looks באופן ציבורי.

כדי להשתמש בהטמעה חתומה במופע של Looker, אדמין ב-Looker צריך להפעיל את ההטמעה החתומה בחלונית Admin ב-Looker וליצור מפתח סודי להטמעה. הוראות מפורטות זמינות בדף התיעוד תחילת העבודה עם הטמעה – הפעלת הטמעה חתומה.

אירוח מתאים להטמעה חתומה

בדפדפנים מסוימים, כמו Safari או דפדפנים שמותקנים בהם תוספים שחוסמים מודעות או קובצי Cookie למעקב, מדיניות ברירת המחדל חוסמת קובצי Cookie של צד שלישי. כשהתכונה הטמעה ללא קובצי Cookie מופעלת, דפדפנים שחוסמים קובצי Cookie של צד שלישי יכולים לאמת משתמשים ב-iframe המוטמע בדומיינים שונים. כדי להטמיע אימות ללא קובצי Cookie, צריך להגדיר את האימות בצד השרת. דוגמאות להגדרה מופיעות בדף התיעוד הטמעה ללא קובצי Cookie.

אם התכונה הטמעה ללא קובצי Cookie לא מופעלת, Looker משתמש בקובצי Cookie לאימות משתמשים. במקרה כזה, אי אפשר לאמת את ה-iframe המוטמע בדומיינים שונים בדפדפנים שחוסמים קובצי Cookie של צד שלישי (אלא אם המשתמש משנה את הגדרות הפרטיות של קובצי ה-Cookie בדפדפן). לדוגמה, אם רוצים להטמיע מידע ב-https://mycompany.com, צריך לוודא ש-Looker משתף את אותו דומיין, כמו https://analytics.mycompany.com. במקרה כזה, אם Looker מארח את המכונה שלכם, פנו לתמיכה של Looker כדי להגדיר את ה-DNS הנדרש להפעלת השימוש בדומיין מותאם אישית. כך Looker יוכל לשתף את אותו דומיין כמו האפליקציה המוטמעת ולהשתמש בקובצי Cookie מהדומיין הנוכחי, שמתקבלים כברירת מחדל בכל הדפדפנים.

אם יש לכם מופע של Looker שמתארח בצד הלקוח, ודאו שהאפליקציה שתשתמש בהטמעה חתומה משתמשת באותו דומיין כמו המופע של Looker.

שליטה בחשיפה של הלקוחות באמצעות מערכת סגורה

בהגדרת הטמעה חתומה, משתמשי Looker בדרך כלל מציגים נתונים ללקוחות שלהם, אבל יש להם לקוחות מחברות או מקבוצות שונות שלא אמורים לדעת זה על זה. בתרחיש כזה, כדי להגן על המידע הפרטי של הלקוחות, מומלץ מאוד להגדיר את Looker כמערכת סגורה, שנקראת גם התקנה של ריבוי דיירים. במערכת סגורה, התוכן מופרד כדי למנוע ממשתמשים מקבוצות שונות לדעת על קיומן של קבוצות אחרות. לכן, מומלץ להפעיל את האפשרות מערכת סגורה לפני שנותנים למשתמשים חיצוניים גישה למכונה.

למידע נוסף, קראו את דפי התיעוד תכנון והגדרה של מערכת רמות גישה ושיטות מומלצות לאבטחה של ניתוח נתונים מוטמע.

יצירת כתובת ה-URL החתומה להטמעה

יש כמה דרכים ליצור את כתובת ה-URL החתומה להטמעה. אפשר להשתמש באחת מהשיטות הבאות:

קידוד ידני של כתובת ה-URL החתומה להטמעה

כדי לכתוב את הקוד של כתובת ה-URL החתומה להטמעה, קודם צריך לאסוף את המידע הנדרש מ-Looker ואז ליצור את כתובת ה-URL החתומה להטמעה.

איסוף המידע הנדרש על Looker

כדי להתחיל ליצור את כתובת ה-URL, קודם כל צריך להחליט מה המידע שרוצים לכלול בה. מה צריך:

הטמעת כתובת URL

מאחזרים את כתובת ה-URL של ה-Look, ה-Explore, התצוגה החזותית של השאילתה או מרכז הבקרה שרוצים להטמיע. לאחר מכן, מסירים את הדומיין ומוסיפים את /embed לפני הנתיב, באופן הבא:

פריט תבנית URL רגילה הטמעת כתובת URL
טבלת Look https://instance_name.looker.com/looks/4 /embed/looks/4
שלב שני https://instance_name.looker.com/explore/my_model/my_explore /embed/explore/my_model/my_explore
המחשה חזותית של שאילתות https://instance_name.looker.com/explore/my_model/my_explore?qid=1234567890abcdefghij12

‫22 התווים האלפאנומריים שמופיעים אחרי הפרמטר qid= בכתובת ה-URL של הכלי "ניתוחים" הם Query.client_id. הערך Query.client_id הוא מחרוזת ייחודית שמייצגת את השאילתה ואת הגדרות התצוגה החזותית.

כדי להטמיע תצוגה חזותית של שאילתה, מאחזרים את הערך Query.client_id של התצוגה החזותית של השאילתה ומעתיקים את Query.client_id לכתובת ה-URL להטמעה.

אתם יכולים להשתמש בממשק המשתמש Explore של Looker כדי ליצור שאילתה עם תצוגה חזותית נתמכת ולהעתיק את הערך של Query.client_id מהפרמטר qid=, או לאחזר את Query.client_id באמצעות Looker API, למשל באמצעות השיטה Get Query.
/embed/query-visualization/Query.client_id
לוח בקרה בהגדרת המשתמש https://instance_name.looker.com/dashboards/1

כוללים את כל ערכי המסננים של מרכז הבקרה שמסתירים את ערכי המסננים, הפרמטר hide_filter בכתובת ה-URL של מרכז הבקרה.
/embed/dashboards/1
מרכז שליטה של LookML https://instance_name.looker.com/dashboards/my_model::my_dashboard /embed/dashboards/my_model::my_dashboard
ניתוח נתונים בממשק שיחה בדף השיחות: https://instance_name.looker.com/conversations

בדף הסוכנים: https://instance_name.looker.com/agents

לשיחה ספציפית: https://instance_name.looker.com/conversations/conversation_id

מידע נוסף זמין בדף התיעוד בנושא הטמעת ניתוח נתונים של שיחות.
/embed/conversations

/embed/agents

/embed/conversations/c9f370ac830b4669aeb494396422004c

הרשאות

קבוצת הרשאות מגדירה מה משתמש או קבוצה יכולים לעשות. אפשר להחיל הרשאות באחת משתי דרכים:

  • ספציפית למודל: סוג ההרשאה הזה חל רק על קבוצות המודלים שהן חלק מאותו תפקיד.
  • ברמת המכונה: סוג ההרשאה הזה חל על מכונת Looker כולה. משתמשים מוטמעים עם הרשאות ברמת המכונה יכולים לבצע פונקציות מסוימות בכל המכונה של Looker, אבל הם לא יכולים לגשת לתוכן שמבוסס על מודלים שלא נכללים בקבוצת המודלים של התפקיד שלהם.

מחליטים אילו הרשאות רוצים לתת למשתמש. ברשימה הבאה מפורטות כל ההרשאות הזמינות להטמעה חתומה. ההרשאות שלא מופיעות ברשימה הבאה לא נתמכות בהטמעה חתומה:

הרשאה תלוי ב- סוג הגדרה
access_data ללא ספציפי למודל מאפשרת למשתמשים לגשת לנתונים (נדרשת כדי להציג תצוגות, לוחות בקרה או חקירות)
see_lookml_dashboards access_data ספציפי למודל מאפשרת למשתמשים לראות מרכזי שליטה של LookML. ההרשאה הזו נדרשת גם אם למשתמש יש גישת צפייה לתיקייה של מרכז הבקרה.
see_looks access_data ספציפי למודל המשתמש יכול לראות תבניות עיצוב
see_user_dashboards see_looks ספציפי למודל המשתמשים יכולים לראות מרכזי בקרה בהגדרת המשתמש ולעיין בתיקיות מהטמעה
explore see_looks ספציפי למודל המשתמש יכול לראות את דפי הניתוח
create_table_calculations explore בכל המכונה נדרשת כדי ליצור חישובים בטבלה ב-Explore
create_custom_fields explore בכל המכונה נדרשת כדי ליצור שדות בהתאמה אישית ב-Explore
can_create_forecast explore בכל המכונה מאפשרת למשתמשים ליצור או לערוך תחזיות בתצוגות חזותיות.
save_content see_looks בכל המכונה המשתמשים יכולים לבצע ולשמור שינויים בטבלאות Look ובלוחות הבקרה
send_outgoing_webhook see_looks ספציפי למודל המשתמשים יכולים לתזמן שליחת תוכן מ-Looker ל-webhook שרירותי
send_to_s3 see_looks ספציפי למודל מאפשרת למשתמש לתזמן שליחת תוכן מ-Looker לקטגוריה של Amazon S3
send_to_sftp see_looks ספציפי למודל מאפשרת למשתמש לתזמן שליחת תוכן מ-Looker לשרת SFTP
schedule_look_emails see_looks ספציפי למודל מאפשרת למשתמש לתזמן העברת תוכן של Looker לכתובת האימייל שלו (אם הוגדרה באמצעות מאפיין משתמש בשם "email") או לכתובת אימייל שנמצאת במגבלות שנקבעו על ידי רשימת ההיתרים של דומיינים של כתובות אימייל. מאפשר למשתמש עם הרשאות create_alerts לשלוח התראות לכתובת אימייל שנמצאת במגבלות שנקבעו על ידי רשימת ההיתרים של דומיינים של אימייל.
schedule_external_look_emails schedule_look_emails ספציפי למודל מאפשרת למשתמשים לתזמן העברות תוכן של Looker לכל דומיין של כתובות אימייל. משתמשים עם הרשאות create_alerts יכולים לשלוח התראות לכל דומיין של אימייל.
send_to_integration see_looks ספציפי למודל מאפשרת למשתמש להעביר תוכן של Looker אל שירותי צד שלישי שמשולבים ב-Looker דרך Looker Action Hub. ההרשאה הזו לא קשורה לפעולות בנתונים.
schedule_without_limit see_looks ספציפי למודל נוספה בגרסה 26.4 בשילוב עם הרשאה אחת לפחות שמאפשרת למשתמש להעביר תוכן של Looker, ההרשאה הזו מאפשרת למשתמשים להעביר Looks או Explores ששולחים את כל שורות הנתונים. ההרשאה הזו מאפשרת לראות את האפשרות All Results (כל התוצאות) בתזמון של Looker בשביל Looks ו-Explores.
create_alerts see_looks בכל המכונה המשתמש יכול ליצור התראות במשבצות של מרכז הבקרה כדי לקבל התראות כשמתקיימים תנאים מסוימים או כשהם חורגים מהתנאים. המשתמשים יכולים לערוך, לשכפל ולמחוק את ההתראות שלהם ואת ההתראות הציבוריות של משתמשים אחרים. אם סביבת העבודה של המשתמש ב-Slack לא מחוברת למכונה של Looker, המשתמש לא יוכל ליצור התראות ששולחות התראות ל-Slack.
download_with_limit see_looks בכל המכונה מאפשרת למשתמש להוריד את התוצאות של שאילתה עם מגבלה
download_without_limit see_looks בכל המכונה המשתמש יכול להוריד את תוצאות השאילתה ללא הגבלה
see_sql see_looks ספציפי למודל המשתמש יכול לראות את ה-SQL של השאילתות ואת כל שגיאות ה-SQL שנובעות מהרצת שאילתות
clear_cache_refresh access_data ספציפי למודל המשתמשים יכולים לנקות את המטמון ולרענן מרכזי בקרה מוטמעים, מרכזי בקרה מדור קודם, משבצות של מרכזי בקרה, תצוגות Look ותצוגות Explore.
see_drill_overlay access_data ספציפי למודל המשתמשים יכולים להציג פירוט בלי לעבור לדף "ניתוח נתונים" המלא.
manage_spaces ללא בכל המכונה הפעלת דפדפן התוכן כדי שהמשתמשים יוכלו ליצור, להעתיק, להעביר ולמחוק תיקיות. המשתמשים יצטרכו גם את הרשאת הגישה לתוכן ניהול גישה, עריכה בתיקייה, או בתיקיית ההורה אם הם יוצרים תיקייה חדשה.
embed_browse_spaces ללא בכל המכונה הפעלת דפדפן התוכן כדי שהמשתמש יוכל לעיין בתיקיות מתוך הטמעה. כל משתמש מוטמע שקיבל את ההרשאה embed_browse_spaces מקבל גישה לתיקייה מוטמעת אישית ולתיקייה Shared של הארגון, אם יש כזו.

מומלץ להעניק את ההרשאה embed_browse_spaces למשתמשים שיש להם את ההרשאה save_content, כדי שהמשתמש יוכל לעיין בתיקיות כשהוא בוחר איפה לשמור תוכן.

כדי לראות את התוכן בתיקיות, המשתמש צריך גם את ההרשאות see_looks,‏ see_user_dashboards ו-see_lookml_dashboards.

ההרשאה embed_browse_spaces נדרשת למשתמשים מוטמעים שרוצים לסמן מרכזי בקרה או Looks כמועדפים, כי סימון תוכן כמועדף דורש גישה לתיקייה מועדפים.
embed_save_shared_space ללא בכל המכונה מאפשרת למשתמש שיש לו גם את ההרשאה save_content לנווט לתיקייה Shared של הארגון, אם יש כזו, מתוך תיבת הדו-שיח Save. משתמשים שיש להם את ההרשאה save_content אבל אין להם את ההרשאה embed_save_shared_space יוכלו לשמור תוכן רק בתיקיית ההטמעה האישית שלהם.

ההרשאה embed_save_shared_space לא מבטלת את הרשאות הגישה לתוכן. לדוגמה, כדי שמשתמש יוכל לשמור בתיקייה Shared, עדיין צריכה להיות לו גישת ניהול גישה, עריכה לתיקייה Shared. בנוסף, אם למשתמש אין את ההרשאה embed_save_shared_space, אבל יש לו את ההרשאה save_content ואת הרשאת הגישה ניהול גישה, עריכה לתיקייה Shared, הוא עדיין יכול לשמור שם תוכן אם יש לו דרך חלופית לנווט לתיקייה Shared, למשל באמצעות האפשרות Explore from here ממרכז בקרה מוטמע.
gemini_in_looker ללא ספציפי למודל ההרשאה הזו היא היחידה שכלולה בתפקיד ברירת המחדל של Gemini.

ההרשאה הזו מאפשרת למשתמשים לבצע את המשימות שמשויכות לכל אחת מהתכונות של Gemini ב-Looker שמופעלות מהדף Gemini ב-Looker בחלונית Admin. יכול להיות שתידרש הרשאה נוספת למשימות מסוימות.
chat_with_agent gemini_in_looker ספציפי למודל נוסף בגרסה 25.18 משתמשי "ניתוח נתונים בשיחה" יכולים להתכתב בצ'אט עם סוכני נתונים שמבוססים על נתונים של עד חמישה חקירות ב-Looker, או עם סוכני נתונים של מרכזי בקרה. כדי להתכתב בצ'אט עם סוכני נתונים של מרכז הבקרה, נדרשות הרשאות נוספות.
chat_with_explore chat_with_agent ספציפי למודל נוסף בגרסה 25.18 משתמשים של ניתוח נתונים בשיחה יכולים להתכתב בצ'אט עם Looker Explore אם יש להם גם הרשאות נדרשות נוספות.
save_agents chat_with_explore ספציפי למודל נוסף בגרסה 25.18 משתמשים ב-Conversational Analytics יכולים ליצור, לערוך, למחוק ולשתף סוכני נתונים במרכזי בקרה או ב-Explores. כדי לערוך, למחוק או לשתף סוכן נתונים שנוצר על ידי משתמש אחר, המשתמשים צריכים לקבל תפקיד שכולל את ההרשאה הזו בכל מודל שבו הסוכן משתמש, וגם הרשאות נדרשות נוספות וגישה מסוג ניהול גישה, עריכה לסוכן.
admin_agents gemini_in_looker ספציפי למודל נוסף בגרסה 25.18 משתמשים יכולים ליצור, לערוך, לשתף ולמחוק סוכני נתונים לשימוש עם Conversational Analytics API ועם Conversational Analytics מוטמע. כשמשתמש יוצר סוכן נתונים, הוא מקבל באופן אוטומטי גישה לסוכן הנתונים ברמת ניהול הגישה, עריכה. עם ההרשאה הזו, המשתמש לא צריך לקבל גישה לתוכן של סוכן הנתונים כדי לערוך, למחוק או לשתף סוכן נתונים שנוצר על ידי משתמש אחר.

גישה למודלים

קובעים לאילו מודלים של LookML תהיה למשתמש גישה. זו תהיה רשימה של שמות מודלים.

מאפייני המשתמשים

קובעים אילו מאפייני משתמש צריכים להיות למשתמש, אם בכלל. תצטרכו את השם של מאפיין המשתמש מ-Looker, וגם את הערך שצריך להיות למשתמש במאפיין הזה.

קבוצות

מחליטים לאילו קבוצות המשתמש צריך להשתייך, אם בכלל. תצטרכו את מזהי הקבוצות, ולא את שמות הקבוצות. הוספת משתמש מוטמע חתום לקבוצת Looker מאפשרת לכם לנהל את הגישה של המשתמש הזה לתיקיות Looker. למשתמשים מוטמעים מחוברים תהיה גישה לכל התיקיות שמשותפות עם חברים בקבוצות Looker שלהם.

אפשר גם להשתמש בפרמטר external_group_id כדי ליצור קבוצה חיצונית לקבוצות הרגילות של Looker. במקרה כזה, למשתמשים מוטמעים חתומים עם אותו external_group_id תהיה גישה לתיקייה משותפת בשם "קבוצה", שהיא ייחודית לקבוצה החיצונית.

תפקידים מוטמעים

הפרמטרים permissions ו-models יוצרים תפקיד למשתמש המוטמע. התפקיד הזה מופיע בתור "תפקיד מוטמע" בדף Users בקטע Admin ב-Looker. אם הפרמטרים permissions,‏ models ו-group_ids צוינו בכתובת ה-URL להטמעה, התפקיד המוטמע מתווסף לכל התפקידים שכבר הוקצו לקבוצות שמופיעות בפרמטר group_ids. זהה לתפקידים רגילים, כי כל התפקידים ב-Looker הם מצטברים.

לדוגמה, נניח שיש לכם קבוצה קיימת ב-Looker עם מזהה הקבוצה 1, ולקבוצה הזו כבר יש את ההרשאה explore למודל בשם model_one, ואתם יוצרים כתובת URL להטמעה עם הפרמטרים הבאים:

  • ‫group_ids = ["1"]
  • ‫permissions = ["access_data","see_looks"]
  • ‫models = ["model_two"]

במקרה כזה, המשתמש המוטמע יקבל בירושה את היכולת להציג ולחקור את הנתונים ב-model_one, והתפקיד המוטמע שנוצר עם הפרמטרים הקודמים יעניק גם את היכולת להציג את הנתונים ב-model_two.

יצירת כתובת ה-URL להטמעה

כתובת URL חתומה להטמעה היא בפורמט הבא:

https://HOST/login/embed/EMBED URL?PARAMETERS&signature=SIGNATURE

מארח

המארח הוא המיקום שבו מתארח המופע של Looker. לדוגמה, analytics.mycompany.com. חשוב לכלול את מספר היציאה אם לא הפעלתם העברה ליציאה אחרת, למשל analytics.mycompany.com:9999.

הטמעת כתובת URL

כתובת ה-URL להטמעה נקבעה קודם. הפורמט שלו יהיה דומה לזה:

  • /embed/looks/4
  • /embed/explore/my_model/my_explore
  • /embed/query-visualization/Query.client_id
  • /embed/dashboards/1 או /embed/dashboards-legacy/1
  • /embed/dashboards/my_model::my_dashboard או /embed/dashboards-legacy/my_model::my_dashboard

זה אומר שהתבנית /embed//embed/ תופיע בכתובת ה-URL הסופית, וזה תקין.

אם אתם משתמשים באירועי JavaScript מוטמעים, הקפידו להוסיף את הפרמטר embed_domain (הדומיין שבו נעשה שימוש ב-iframe) לסוף כתובת ה-URL להטמעה, באופן הבא:

/embed/looks/4
⇨
/embed/looks/4?embed_domain=https://mywebsite.com

הפרמטר embed_domain מתווסף לכתובת ה-URL להטמעה לפני קידוד כתובת ה-URL. אם כתובת ה-URL להטמעה כבר מכילה פרמטרים של שאילתת תוכן (כמו ערכי סינון), מוסיפים את הפרמטר embed_domain באמצעות אמפרסנד (&):

/embed/looks/4?filter_name=value
⇨
/embed/looks/4?filter_name=value&embed_domain=https://mywebsite.com

אם אתם משתמשים ב-Embed SDK, הקפידו להוסיף את הפרמטר embed_domain וגם את sdk=2 בסוף כתובת ה-URL להטמעה, כך:

/embed/looks/4
⇨
/embed/looks/4?embed_domain=https://mywebsite.com&sdk=2

הפרמטר sdk=2 מאפשר ל-Looker לזהות שערכת ה-SDK קיימת, ולהשתמש בתכונות נוספות שערכת ה-SDK מספקת. ה-SDK לא יכול להוסיף את הפרמטר הזה בעצמו כי הוא חלק מכתובת ה-URL החתומה.

פרמטרים

הפרמטרים הבאים של כתובת ה-URL משמשים לציון המידע הדרוש להטמעה החתומה:

פרמטר ערך ברירת המחדל תיאור סוג הנתונים דוגמה
nonce חובה להזין ערך כל מחרוזת אקראית שרוצים, אבל אי אפשר לחזור עליה בתוך שעה והיא צריכה להיות קצרה מ-255 תווים.

כך אפשר למנוע מתוקפים לשלוח מחדש כתובת URL של משתמש לגיטימי כדי לאסוף מידע שהם לא אמורים לקבל.
מחרוזת JSON "22b1ee700ef3dc2f500fb7"
time חובה להזין ערך השעה הנוכחית כחותמת זמן של UNIX. מספר שלם 1407876784
session_length חובה להזין ערך מספר השניות שהמשתמש צריך להישאר מחובר ל-Looker, בין 0 ל-2,592,000 שניות (30 ימים). מספר שלם 86400
external_user_id חובה להזין ערך מזהה לכל משתמש באפליקציה שבה מוטמע Looker. ‫Looker משתמש ב-external_user_id כדי להבדיל בין משתמשים מוטמעים חתומים, ולכן לכל משתמש צריך להיות מזהה ייחודי.

אפשר ליצור external_user_id למשתמש עם כל מחרוזת שרוצים, כל עוד היא ייחודית לאותו משתמש. כל מזהה משויך לקבוצה של הרשאות, מאפייני משתמשים ומודלים. דפדפן אחד יכול לתמוך רק בexternal_user_id אחד, או בסשן משתמש אחד, בכל פעם. אי אפשר לשנות את ההרשאות או את מאפייני המשתמש באמצע הסשן.

מטעמי אבטחה, חשוב לוודא שאתם לא משתמשים באותו external_user_id בסשנים שונים של הטמעה עבור משתמשים אינטראקטיביים שונים, וחשוב לוודא שאתם לא משתמשים באותו external_user_id עבור משתמש יחיד שיש לו הרשאות שונות, ערכי מאפייני משתמש שונים או גישה שונה למודלים.

שימוש באותו external_user_id למספר משתמשים או לאותו משתמש עם מספר הרשאות, מאפייני משתמש או קבוצות מודלים, עלול לגרום לכך שהנתונים יהיו גלויים למשתמשים שאחרת לא הייתה להם גישה אליהם.
מחרוזת JSON "user-4"
permissions חובה להזין ערך רשימת ההרשאות שצריכות להיות למשתמש.

רשימת ההרשאות המותרות מופיעה בקטע הרשאות בדף הזה.
מערך של מחרוזות [

  "access_data",

  "see_looks"

]
models חובה להזין ערך רשימת שמות המודלים שלמשתמש צריכה להיות גישה אליהם. מערך של מחרוזות [

  "model_one",

  "model_two"

]
group_ids [] רשימת הקבוצות ב-Looker שהמשתמש צריך להיות חבר בהן, אם יש כאלה. להשתמש במזהי קבוצות במקום בשמות של קבוצות. מערך של מחרוזות ["4", "3"]
external_group_id "" מזהה ייחודי של הקבוצה שאליה המשתמש משתייך באפליקציה שבה מוטמע Looker.

משתמשים שיש להם הרשאה לשמור תוכן, ומשתפים מזהה קבוצה חיצוני, יכולים לשמור ולערוך תוכן בתיקיית Looker משותפת שנקראת "קבוצה". הפרמטר external_group_id הוא השיטה היחידה שזמינה ליצירת קבוצות חיצוניות של משתמשים מוטמעים. אי אפשר להגדיר קבוצות משתמשים חיצוניות מוטמעות מתוך ממשק המשתמש של Looker.

האורך של external_group_id לא יכול להיות יותר מ-81 תווים. לכל קבוצה נוצרת תיקייה תואמת, ושמות התיקיות מוגבלים ל-100 תווים. לשם התיקייה נוספת הקידומת "Embed Shared Group ", ולכן external_group_id מוגבל ל-81 תווים כדי לא לחרוג ממגבלת התווים (100 תווים או פחות).
מחרוזת JSON "Accounting"
user_attributes {} רשימת מאפייני המשתמש שצריכים להיות למשתמש, אם יש כאלה. מכיל רשימה של שמות מאפייני משתמשים ואחריהם ערך מאפיין המשתמש.

אם מודל LookML מותאם לשוק המקומי, אפשר להשתמש במאפיין המשתמש locale בכתובת ה-URL להטמעה כדי לציין שפה להטמעה. לדוגמה, אם כוללים את הפרמטר user_attributes { "locale" : "fr_FR" }, ההטמעה תטען את השפה הצרפתית.
גיבוב של מחרוזות {

  "vendor_id" : "17",

  "company" : "xactness"

}
access_filters חובה להזין ערך ב-Looker 3.10 הפרמטר הזה הוסר, אבל עדיין צריך לכלול אותו בכתובת ה-URL. משתמשים ב-access_filters עם פלייסהולדר ריק, לדוגמה access_filters={}. פלייסהולדר ריק {}
first_name "" השם הפרטי של המשתמש. אם משאירים את השדה ריק, הערך של first_name יהיה הערך מהבקשה האחרונה, או "Embed" אם לא הוגדר שם פרטי אף פעם. מחרוזת JSON "Alice"
last_name "" שם המשפחה של המשתמש. אם משאירים את השדה ריק, הערך של last_name יישאר כמו בבקשה האחרונה, או יהיה "Embed" אם לא הוגדר שם משפחה אף פעם. מחרוזת JSON "Jones"
user_timezone "" אם הפעלתם את ההגדרה אזורי זמן ספציפיים למשתמש, הפרמטר הזה מגדיר את הערך של האפשרות Viewer Time Zone בתפריט הנפתח Time Zone ב-Look או במרכז הבקרה המוטמעים. הפרמטר הזה לא משנה באופן ישיר את אזור הזמן שבו התוכן מוצג. המשתמש יצטרך לבחור אזור זמן מהתפריט הנפתח.

אפשר לראות ערכים תקינים בדף התיעוד הפניה לאזור זמן של הטמעה חתומה.

טיפ מצוות Chat: אם אתם רוצים שהתוכן המוטמע יוגדר כברירת מחדל לאזור הזמן של הצופה, השתמשו באחת מהשיטות הבאות:

  • מוסיפים את הפרמטר ?query_timezone=user_timezone לכתובת ה-URL להטמעה. לדוגמה:

    /embed/dashboards/1?query_timezone=user_timezone
  • שומרים את מרכז הבקרה או ה-Look המוטמעים כשאזור הזמן שמוגדר כברירת מחדל הוא Viewer Time Zone. כך, אזור הזמן של המשתמש ישמש כברירת מחדל גם למשתמשים מוטמעים וגם למשתמשים לא מוטמעים.
  • מחרוזת JSON או ערך null "US/Pacific"

    - או -

    null
    force_logout_login חובה להזין ערך אם משתמש רגיל ב-Looker כבר מחובר ל-Looker, והוא צופה בפריט מוטמע חתום, אתם יכולים לבחור אם:

    ‫1) הם צריכים להציג את הפריט עם פרטי הכניסה הנוכחיים שלהם

    או

    ‫2) הם צריכים לצאת מהחשבון ולהיכנס אליו שוב עם פרטי הכניסה החתומים להטמעה.
    ערך בוליאני (true או false) true
    ca_chat true אם הפעלתם את Conversational Analytics ואת ההגדרה סוכני מרכז הבקרה, ההגדרה הזו קובעת אם חלונית השיחה של סוכן מרכז הבקרה גלויה למשתמשים מוטמעים. אם true, הסמל של Gemini Spark גלוי למשתמשים שיש להם את ההרשאות המתאימות לאינטראקציה עם סוכנים במרכז הבקרה. רלוונטי רק למרכזי בקרה מוטמעים. ערך בוליאני (true או false) true

    חתימה

    ‫Looker משתמש בחתימה כדי לוודא שהחתימה בכתובת ה-URL להטמעה נוצרה באמצעות הסוד הנכון להטמעה, ושהפרמטרים בכתובת ה-URL להטמעה לא השתנו. אם הסוד להטמעה או הפרמטרים של כתובת ה-URL שונים או השתנו, החתימה לא תתאים והאימות יידחה.

    כתוצאה מכך, החתימה בכתובת ה-URL להטמעה מספקת הוכחה קריפטוגרפית חזקה לכך שכתובת ה-URL להטמעה לא שונתה במהלך ההעברה, ושהיא נוצרה על ידי גורם מהימן שמחזיק במפתח הסודי להטמעה.

    כדי ליצור את החתימה, צריך לפעול לפי השלבים הבאים.

    1. אוספים את ערכי הפרמטרים הבאים בסדר הזה:
      • מארח, ואחריו login/embed/ (לדוגמה, analytics.mycompany.com/login/embed/)
      • הטמעת כתובת URL
      • Nonce
      • השעה הנוכחית
      • אורך הסשן
      • מזהה משתמש חיצוני
      • הרשאות
      • מודלים
      • מזהי קבוצות
      • מזהה קבוצה חיצוני
      • מאפייני משתמש
      • מסנני גישה (צריך פלייסהולדר ריק)
      • הרשאות הגישה של סוכן הנתונים בלוח הבקרה של Conversational Analytics
    2. צריך להגדיר את כל הערכים מלבד Host ו-Embed URL בפורמט JSON
    3. שרשור הערכים עם מעברי שורה (\n)
    4. חותמים על המחרוזת המשורשרת באמצעות HMAC-SHA1 עם המפתח הסודי להטמעה ב-Looker

    קידוד

    השלב האחרון הוא להוסיף קידוד לכתובת ה-URL.

    לפני שמקודדים את כתובת ה-URL, כתובת URL להטמעה בפורמט תקין שמשתמשת בכל הפרמטרים האפשריים עשויה להיראות כך:

    https://analytics.mycompany.com/login/embed//embed/dashboards/1?
    nonce="22b1ee700ef3dc2f500fb7"&
    time=1407876784&
    session_length=86400&
    external_user_id="user-4"&
    permissions=["access_data","see_user_dashboards","see_looks"]&
    models=["model_one","model_two"]&
    group_ids=[4,3]&
    external_group_id="Allegra K"&
    user_attributes={"vendor_id":"17","company":"xactness"}&
    access_filters={}&
    ca_chat=false&
    first_name="Alice"&
    last_name="Jones"&
    user_timezone="US/Pacific"&
    force_logout_login=true&
    signature=123456789ABCDEFGHIJKL
    

    כמו שציינו קודם, /embed//embed/ אמור להופיע בכתובת ה-URL.

    אחרי קידוד כתובת ה-URL, היא תיראה כך:

    https://analytics.mycompany.com/login/embed/%2embed%2Fdashboards%2F1?
    nonce=%2222b1ee700ef3dc2f500fb7&%22&
    time=1407876784&
    session_length=86400&
    external_user_id=%22user-4%22&
    permissions=%5B%22access_data%22%2C%22see_user_dashboards%22%2C%22see_looks%22%5D&
    models=%5B%22model_one%22%2C%22model_two%22%5D&
    group_ids=%5B4%2C3%5D&
    external_group_id=%22Allegra%20K%22&
    user_attributes=%7B%22vendor_id%22%3A%2217%22%2C%22company%22%3A%22xactness%22%7D&
    access_filters%7B%7D%26%0A
    ca_chat=false&
    first_name=%22Alice%22&
    last_name=%22Jones%22&
    user_timezone=%22US%2FPacific%22&
    force_logout_login=true&
    signature=123456789ABCDEFGHIJKL
    

    שימוש בנקודת קצה ל-API של Create Signed Embed Url

    ‫Looker API כולל את נקודת הקצה Create Signed Embed Url, שמקבלת קבוצה של פרמטרים להטמעה חתומה, כולל כתובת ה-URL של התוכן שרוצים להטמיע, ומחזירה כתובת URL מלאה, מקודדת וחתומה באופן קריפטוגרפי.

    כדי להשתמש בנקודת קצה ל-API זו משרת אינטרנט, השרת צריך להיות מסוגל לאמת ב-Looker API עם הרשאות אדמין. הדומיין של שרת האינטרנט צריך להופיע גם ברשימת ההיתרים של הדומיינים להטמעה.

    אפשר גם להשתמש ב-API Explorer כדי ליצור כתובת URL חתומה שמשתמשת בנקודת הקצה הזו. אתם יכולים להתקין את API Explorer במכונה של Looker מ-Looker Marketplace. אחרי שיוצרים את כתובת ה-URL החתומה, צריך להעתיק אותה בדיוק כמו שהיא. אפשר להשתמש בה רק פעם אחת, אחרת היא לא תעבוד. אפשר גם להשתמש ב-API Explorer כדי ליצור כתובת URL חתומה ולהשוות אותה לכתובת URL חתומה שנוצרה באופן ידני, לצורך פתרון בעיות.

    מידע נוסף על Looker API זמין בדף התיעוד תחילת השימוש ב-Looker API.

    בדיקת כתובת ה-URL להטמעה

    כדי לבדוק את כתובת ה-URL הסופית, מדביקים אותה ב-Embed URI Validator בדף Embed בקטע Admin ב-Looker. האפשרות הזו לא יכולה להגיד לכם אם הנתונים וההרשאות שאתם רוצים הוגדרו בצורה נכונה, אבל היא יכולה לאמת שהאימות פועל כמו שצריך.

    שיטות מומלצות להטמעת כמה רכיבי iframe באמצעות הטמעה חתומה

    כשמטמיעים כמה רכיבי iframe של Looker בדף אחד, בקשות אימות בו-זמניות לאותו external_user_id יכולות לגרום להתנגשויות בהקצאת משתמשים, לתחרות על נעילה בשרת Looker או לביטול סשנים. אם האפליקציה שלכם מטמיעה כמה רכיבי iframe, כדאי לפעול לפי השיטות המומלצות הבאות:

    • אימות רק של ה-iframe הראשון באמצעות כתובת URL חתומה: כשמשתמשים בהטמעה חתומה עם קובצי Cookie שמופעלים דרך דומיין מותאם אישית, רק ה-iframe הראשון בדף צריך לטעון כתובת URL חתומה של /login/embed/.... רכיבי iframe הבאים צריכים להמתין עד שרכיב ה-iframe הראשון יסיים את האימות, ואז לטעון כתובות URL להטמעה לא חתומות (לדוגמה, /embed/dashboards/DASHBOARD_ID) כדי שהם יקבלו בירושה את קובץ Cookie זמני מרכיב ה-iframe הראשון בלי להפעיל מחדש את הקצאת המשתמשים. ‫Looker Embed SDK‏ (@looker/embed-sdk) מטפל בזה באופן אוטומטי אחרי שהחיבור הראשון מסתיים.

    • טעינה מראש של iframe כדי ליצור את הסשן: כדי ליצור סשן של משתמש מוטמע לפני שטוענים כמה רכיבי iframe, טוענים מראש iframe באמצעות /embed/preload (או השיטה .preload() ב-Embed SDK v2) כדי ליצור את הסשן כמה שיותר מהר.

    • שימוש בניווט בתוך מסגרת במקום ליצור מחדש רכיבי iframe: כשמשתמשים ב-Embed SDK v2, אפשר לנווט בתוך iframe שכבר נוצר על ידי קריאה לשיטות כמו connection.loadDashboard(DASHBOARD_ID) או connection.loadUrl(EMBED_URL) במקום ליצור iframe חדש. מידע נוסף זמין במאמר מבוא ל-Embed SDK.

    • שיתוף של session_reference_token יחיד בהטמעה ללא קובצי Cookie: אם אתם משתמשים בהטמעה ללא קובצי Cookie עם כמה רכיבי iframe בדף, עיינו בקטע שיטות מומלצות להטמעה של כמה רכיבי iframe ללא קובצי Cookie בדף הטמעה ללא קובצי Cookie.