הטמעה עם חתימה היא דרך להציג למשתמשים תצוגות, ויזואליזציות, ניתוחים, מרכזי בקרה או מרכזי בקרה של LookML מוטמעים פרטיים, בלי שהם יצטרכו להתחבר ל-Looker בנפרד. במקום זאת, המשתמשים יאומתו דרך האפליקציה שלכם.
הטמעה חתומה פועלת על ידי יצירת כתובת URL מיוחדת של Looker שבה תשתמשו ב-iframe. כתובת ה-URL מכילה את המידע שרוצים לשתף, את המזהה של המשתמש במערכת שלכם ואת ההרשאות שאתם רוצים לתת למשתמש. לאחר מכן, תחתמו על כתובת ה-URL באמצעות מפתח סודי שסופק על ידי Looker.
למידע על הטמעה ציבורית, אפשר לעיין בקטע הטמעה ציבורית באמצעות תגי iframe בדף התיעוד שיתוף ציבורי, ייבוא והטמעה של תצוגות.
כדי להשתמש בהטמעה חתומה במופע Looker, אדמין ב-Looker צריך להפעיל הטמעה חתומה בלוח הניהול של Looker וליצור מפתח סודי להטמעה. הוראות מפורטות זמינות בדף התיעוד תחילת העבודה עם הטמעה – הפעלת הטמעה עם חתימה.
אירוח מתאים להטמעה עם חתימה
בחלק מהדפדפנים – למשל, Safari, או דפדפנים שמותקנים בהם תוספים שחוסמים מודעות או קובצי Cookie למעקב – מדיניות ברירת המחדל לגבי קובצי Cookie היא חסימה של קובצי Cookie של צד שלישי. כשמפעילים את התכונה הטמעה ללא קובצי Cookie, דפדפנים שחוסמים קובצי Cookie של צד שלישי יכולים לאמת משתמשים ב-iframe המוטמע בדומיינים שונים. אימות הטמעה ללא קובצי Cookie דורש הגדרה בצד השרת. דוגמאות להגדרה מופיעות בדף התיעוד בנושא הטמעה ללא קובצי Cookie.
אם התכונה Cookieless Embed לא מופעלת, 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 להטמעה בתפריט לוח הבקרה (סמל האפשרויות הנוספות, 3 נקודות) של לוח בקרה, או בתפריט הפעולות של התכונה 'ניתוח נתונים' (סמל גלגל השיניים) של ניתוח נתונים או של Look.
משתמשים בנקודת הקצה Looker API Create Signed Embed Url, כפי שמתואר בהמשך המאמר הזה.
משתמשים ב-Looker Embed SDK.
קידוד כתובת ה-URL החתומה להטמעה. כדי ליצור את כתובת ה-URL הנכונה, תצטרכו לכתוב קוד כדי לקודד את כתובת ה-URL באמצעות המפתח הסודי וליצור פריטים אחרים שקשורים לאבטחה. אפשר למצוא כמה סקריפטים לדוגמה במאגר GitHub של דוגמאות להטמעה ב-Looker. בקטעים הבאים מוסבר איזה מידע צריך לספק לסקריפטים האלה, וגם איך ליצור כתובת URL חתומה להטמעה בלי להשתמש בסקריפט.
קידוד ידני של כתובת ה-URL החתומה להטמעה
כדי לקודד את כתובת ה-URL של ההטמעה החתומה, קודם אוספים את המידע הנדרש מ-Looker, ואז יוצרים את כתובת ה-URL של ההטמעה החתומה.
איסוף המידע הנדרש מ-Looker
כנקודת התחלה לבניית כתובת ה-URL, כדאי קודם לקבוע את כל המידע שצריך לכלול בה. תצטרכו:
כתובת URL להטמעה
מאחזרים את כתובת ה-URL של ה-Look, הניתוח, ההדמיה של השאילתה או מרכז הבקרה שרוצים להטמיע. לאחר מכן מסירים את הדומיין ומוסיפים את /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=1234567890abcdefghij1222 התווים האלפאנומריים שמופיעים אחרי הפרמטר qid= בכתובת ה-URL של הדוח ב-Explore הם Query.client_id. הערך Query.client_id הוא מחרוזת ייחודית שמייצגת את השאילתה ואת הגדרות הוויזואליזציה.כדי להטמיע תרשים של שאילתה, מאחזרים את הערך של Query.client_id ומוסיפים אותו לכתובת ה-URL להטמעה.Query.client_idאתם יכולים להשתמש בממשק המשתמש של Looker Explore כדי ליצור שאילתה עם תרשים נתמך, ולהעתיק את הערך Query.client_id מהפרמטר qid=. לחלופין, אתם יכולים לאחזר את הערך Query.client_id באמצעות Looker API, למשל באמצעות השיטה Get Query. |
/embed/query-visualization/Query.client_id |
| לוח בקרה בהגדרת המשתמש | https://instance_name.looker.com/dashboards/1כוללים את כל ערכי הסינון של לוח הבקרה hiding filter values, הפרמטר hide_filter בכתובת ה-URL של לוח הבקרה. |
|
| מרכז שליטה של 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 |
ללא | ספציפי למודל | מאפשר למשתמש לגשת לנתונים (נדרש לצפייה ב-Looks, במרכזי בקרה או ב-Explores) |
see_lookml_dashboards |
access_data |
ספציפי למודל | מאפשר למשתמש לראות מרכזי שליטה של LookML. ההרשאה הזו נדרשת גם אם למשתמש יש גישת צפייה לתיקייה של לוח הבקרה. |
see_looks |
access_data |
ספציפי למודל | המשתמשים יכולים לראות תצוגות Look |
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 לכתובת האימייל שלהם (אם ההגדרה מתבצעת באמצעות מאפיין משתמש בשם 'אימייל') או לכתובת אימייל שנמצאת בתוך המגבלות שמוגדרות ברשימת ההיתרים של דומיינים של כתובות אימייל. מאפשר למשתמש עם הרשאות 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, ההרשאה הזו מאפשרת למשתמשים להעביר תצוגות או ניתוחים ששולחים את כל שורות הנתונים. ההרשאה הזו מאפשרת לראות את האפשרות 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 |
ספציפי למודל | המשתמשים יכולים לנקות את המטמון ולרענן לוחות בקרה מוטמעים, לוחות בקרה מדור קודם, משבצות של לוחות בקרה, Looks ו-Explores. |
see_drill_overlay |
access_data |
ספציפי למודל | מאפשר למשתמשים לבצע התעמקות בנתונים בלי לעבור לדף המלא של התכונה 'Explore'. |
manage_spaces |
ללא | ברמת המכונה | ההגדרה הזו מפעילה את דפדפן התוכן כדי שהמשתמשים יוכלו ליצור, להעתיק, להעביר ולמחוק תיקיות. בנוסף, המשתמשים צריכים את הרשאת הגישה לתוכן ניהול גישה, עריכה לתיקייה, או לתיקיית ההורה במקרה של יצירת תיקייה חדשה. |
embed_browse_spaces |
ללא | ברמת המכונה |
מאפשרת את דפדפן התוכן כדי שמשתמש יוכל לעיין בתיקיות מהטמעה. כל משתמש בהטמעה שמקבל הרשאת embed_browse_spaces מקבל גישה לתיקיית הטמעה אישית ולתיקייה משותפת של הארגון, אם קיימת כזו.
מומלץ להעניק את ההרשאה embed_browse_spaces למשתמשים שיש להם את ההרשאה save_content, כדי שהם יוכלו לעיין בתיקיות כשהם בוחרים איפה לשמור תוכן.
כדי לראות את התוכן בתיקיות, המשתמש צריך גם את ההרשאות see_looks, see_user_dashboards ו-see_lookml_dashboards.
משתמשים שרוצים להטמיע לוחות בקרה או תצוגות צריכים את ההרשאה embed_browse_spaces כדי לסמן אותם כמועדפים, כי כדי לסמן תוכן כמועדף צריך גישה לתיקייה Favorites.
|
embed_save_shared_space |
ללא | ברמת המכונה |
מאפשר למשתמש שיש לו גם הרשאת save_content לנווט לתיקייה משותפת של הארגון, אם יש כזו, מתוך תיבת הדו-שיח שמירה. משתמשים שיש להם הרשאת save_content אבל לא הרשאת embed_save_shared_space, יוכלו לשמור תוכן רק בתיקיית ההטמעה האישית שלהם.
ההרשאה embed_save_shared_space לא מבטלת את הרשאות הגישה לתוכן. לדוגמה, כדי לאפשר למשתמש לשמור בתיקייה משותפת, הוא עדיין צריך גישת ניהול גישה, עריכה לתיקייה משותפת. בנוסף, היעדר ההרשאה embed_save_shared_space לא מונע ממשתמש שיש לו את ההרשאה save_content וגישת ניהול גישה, עריכה לתיקייה משותפת לשמור בה תוכן אם יש לו דרך חלופית לנווט לתיקייה משותפת, למשל באמצעות האפשרות חקירה מכאן מלוח בקרה מוטמע.
|
gemini_in_looker |
ללא | ספציפי למודל |
ההרשאה הזו היא ההרשאה היחידה שכלולה בתפקיד ברירת המחדל של Gemini.
ההרשאה הזו מאפשרת למשתמשים לבצע את המשימות הבאות:
|
chat_with_agent |
gemini_in_looker |
ספציפי למודל |
נוסף בתאריך 25.1.18
כדי להשתמש ב-Conversational Analytics API וב-Conversational Analytics מוטמע (בגרסת Preview), משתמשים יכולים לנהל שיחה עם סוכן נתונים שמשתמש ב-Looker Explore, אם יש להם גם תפקיד שכולל את ההרשאה access_data בכל מודל שמשמש בבסיס של ה-Explores שבהם סוכן הנתונים משתמש. למשתמש צריכה להיות גם גישת צפייה בתוכן לסוכן הנתונים. |
chat_with_explore |
chat_with_agent |
ספציפי למודל |
נוספה גרסה 25.18
כדי להשתמש ב-Conversational Analytics API ובניתוח נתונים בשיחה שמוטמע (גרסת Preview), משתמשים יכולים לנהל שיחה עם Looker Explore אם יש להם הרשאת access_data במודל שעליו מבוסס ה-Explore. |
save_agents |
chat_with_explore |
ספציפי למודל | נוספה ב-25.18 כדי להשתמש ב-API של ניתוח נתונים בשיחה ובניתוח נתונים בשיחה בהטמעה (גרסת Preview), משתמשים יכולים ליצור, לערוך, לשתף ולמחוק סוכני נתונים שמשתמשים ב-Looker Explores. כשמשתמש יוצר סוכן נתונים, הוא מקבל באופן אוטומטי גישה לסוכן הנתונים עם ההרשאות ניהול גישה, עריכה. עם זאת, אם הוא רוצה לערוך, למחוק או לשתף סוכן נתונים שנוצר על ידי משתמש אחר, יוצר הסוכן צריך להעניק לו גישה לסוכן הנתונים עם ההרשאות ניהול גישה, עריכה. |
admin_agents |
gemini_in_looker |
ספציפי למודל | נוספה גרסה 25.18 כדי להשתמש ב-Conversational Analytics API ובניתוח שיחות מוטמע (גרסת Preview), משתמשים יכולים ליצור, לערוך, לשתף ולמחוק סוכני נתונים. כשמשתמש יוצר סוכן נתונים, הוא מקבל באופן אוטומטי גישה לסוכן הנתונים עם ההרשאות ניהול גישה, עריכה. ההרשאה הזו מאפשרת למשתמש לערוך, למחוק או לשתף סוכן נתונים שנוצר על ידי משתמש אחר, בלי שתינתן לו גישה לתוכן של סוכן הנתונים. |
גישה למודלים
קובעים לאילו מודלים של LookML תהיה למשתמש גישה. זו תהיה רשימה של שמות מודלים.
מאפייני המשתמשים
קובעים אילו מאפייני משתמש צריכים להיות למשתמש, אם בכלל. תצטרכו את השם של מאפיין המשתמש מ-Looker, וגם את הערך שצריך להיות למשתמש במאפיין הזה.
קבוצות
קובעים לאילו קבוצות המשתמש צריך להשתייך, אם בכלל. תצטרכו את מזהי הקבוצות ולא את שמות הקבוצות. הוספה של משתמש בהטמעה חתומה לקבוצה ב-Looker מאפשרת לכם לנהל את הגישה של המשתמש הזה לתיקיות ב-Looker. למשתמשים עם הטמעה חתומה תהיה גישה לכל התיקיות שמשותפות עם חברים בקבוצות שלהם ב-Looker.
אפשר גם להשתמש בפרמטר external_group_id כדי ליצור קבוצה שהיא חיצונית לקבוצות הרגילות ב-Looker. במקרה כזה, למשתמשים מוטמעים עם חתימה שכוללים את אותו external_group_id תהיה גישה לתיקייה משותפת בשם 'קבוצה', שהיא ייחודית לקבוצה החיצונית.
תפקידים מוטמעים
הפרמטרים permissions ו-models יוצרים תפקיד למשתמש שמוטמע. התפקיד הזה מופיע כ-Embedded Role (תפקיד מוטמע) בדף 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 להטמעה ולפני פרמטרים כלשהם. לכן, אם יש לכם פרמטרים קיימים, כמו nonce=626, הוספת הפרמטר embed_domain תיראה כך:
/embed/looks/4?nonce=626
/embed/looks/4?embed_domain=https://mywebsite.com?nonce=626
אם אתם משתמשים ב-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 שנקראת Group. הפרמטר 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" } תגרום להטמעה לטעון את השפה הצרפתית. |
גיבוב (hash) של מחרוזות | { "vendor_id" : "17", "company" : "xactness"} |
access_filters |
חובה לציין ערך | ב-Looker 3.10 הפרמטר הזה הוסר, אבל הוא עדיין נדרש בכתובת ה-URL. משתמשים ב-access_filters עם placeholder ריק, לדוגמה access_filters={}. |
פלייסהולדר ריק | {} |
first_name |
"" | השם הפרטי של המשתמש. אם משאירים את השדה ריק, first_name ישמור את הערך מהבקשה האחרונה, או יקבל את הערך Embed אם לא הוגדר שם פרטי. |
מחרוזת JSON | "Alice" |
last_name |
"" | שם המשפחה של המשתמש. אם משאירים את השדה ריק, last_name ישמור את הערך מהבקשה האחרונה, או יקבל את הערך Embed אם אף שם משפחה לא הוגדר. |
מחרוזת JSON | "Jones" |
user_timezone |
"" | אם הפעלתם את האפשרות אזורי זמן ספציפיים למשתמש, הערך של האפשרות אזור זמן של הצופה בתפריט הנפתח אזור זמן בלוח הבקרה או בדוח Look המוטמעים מוגדר. הפרמטר הזה לא משנה ישירות את אזור הזמן שבו התוכן מוצג. המשתמש יצטרך לבחור אזור זמן מהתפריט הנפתח.ערכים תקינים מפורטים בדף התיעוד הפניה לאזור זמן של הטמעה חתומה.טיפ מצוות Chat: אם רוצים שברירת המחדל של התוכן המוטמע תהיה אזור הזמן של הצופה, אפשר להשתמש באחת מהשיטות הבאות:?query_timezone=user_timezone לכתובת ה-URL להטמעה. לדוגמה:/embed/dashboards/1?query_timezone=user_timezone |
מחרוזת JSON או ערך null | "US/Pacific"- או -null |
force_logout_login |
חובה לציין ערך | אם משתמש רגיל ב-Looker כבר מחובר ל-Looker, והוא צופה בפריט מוטמע עם חתימה, אתם יכולים לבחור אם:1) הם צריכים לצפות בפריט באמצעות פרטי הכניסה הנוכחיים שלהםאו2) הם צריכים לצאת מהחשבון ולהיכנס אליו מחדש באמצעות פרטי הכניסה של ההטמעה החתומה. | ערך בוליאני (true או false) | true |
חתימה
Looker משתמש בחתימה כדי לוודא שהסוד הנכון להטמעה שימש ליצירת החתימה בכתובת ה-URL להטמעה, ושהפרמטרים בכתובת ה-URL להטמעה לא השתנו. אם הסוד להטמעה או פרמטרים של כתובת ה-URL שונים או השתנו, החתימה לא תהיה זהה והאימות יידחה.
כתוצאה מכך, החתימה בכתובת ה-URL להטמעה מספקת הוכחה חזקה מבחינה קריפטוגרפית לכך שכתובת ה-URL להטמעה לא שונתה במהלך ההעברה, ושהיא נוצרה על ידי גורם מהימן שמחזיק במפתח הסודי להטמעה.
כדי ליצור את החתימה, צריך לפעול לפי השלבים הבאים.
- אוספים את ערכי הפרמטרים הבאים לפי הסדר הזה:
- מארח, ואחריו
login/embed/(לדוגמה,analytics.mycompany.com/login/embed/) - כתובת URL להטמעה
- צופן חד-פעמי (nonce)
- השעה הנוכחית
- משך הסשן
- מזהה משתמש חיצוני
- הרשאות
- מודלים
- מזהי קבוצות
- מזהה קבוצה חיצוני
- מאפייני משתמש
- מסנני גישה (נדרש placeholder ריק)
- מארח, ואחריו
- עיצוב כל הערכים מלבד Host ו-Embed URL כ-JSON
- שרשור הערכים עם מעברי שורה (
\n) - חתימה באמצעות 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={}&
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
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 חתומה, צריך להעתיק אותה בדיוק כמו שהיא, ואפשר להשתמש בה רק פעם אחת – אחרת היא לא תפעל. בנוסף, כדאי להשתמש ב-APIs Explorer כדי ליצור כתובת URL חתומה ולהשוות אותה לכתובת URL חתומה שנוצרה באופן ידני, לצורך פתרון בעיות.
מידע נוסף על Looker API זמין בדף התיעוד תחילת העבודה עם Looker API.
בדיקת כתובת ה-URL להטמעה
כדי לבדוק את כתובת ה-URL הסופית, מדביקים אותה ב-Embed URI Validator (כלי לאימות של URI להטמעה) בדף Embed (הטמעה) בקטע Admin (אדמין) ב-Looker. האפשרות הזו לא יכולה להגיד לכם אם ההרשאות והנתונים שהגדרתם הוגדרו בצורה נכונה, אבל היא יכולה לאמת שהאימות שלכם פועל בצורה תקינה.