במקום להקצות גישה באמצעות פרטי הכניסה של הבעלים, או לדרוש מצופים בודדים בדוחות לקבל גישה לנתונים באמצעות פרטי הכניסה של הצופה, Data Studio יכול להשתמש בחשבון שירות כדי לגשת לנתונים. חשבון שירות הוא סוג מיוחד של חשבון Google שמייצג משתמש לא אנושי, שצריך לאמת ולאשר כדי לתת לו גישה לנתונים ב-Google APIs ובמוצרים של Google.
היתרונות של שימוש בחשבון שירות עם Data Studio
שימוש בחשבון שירות במקום בפרטי הכניסה של משתמש בודד מספק את היתרונות הבאים:
- מקורות נתונים שמשתמשים בפרטי כניסה של חשבון שירות לא ייפגעו אם היוצר יעזוב את החברה.
- פרטי כניסה לחשבון שירות תומכים בגישה לנתונים שנמצאים מאחורי גבולות גזרה של VPC Service Controls שמשתמשים במדיניות מכשירים.
- תכונות אוטומטיות כמו הודעות אימייל מתוזמנות, התראות באימייל ומיצוי נתונים מתוזמן פועלות עם מקורות נתונים שנמצאים מאחורי גבולות גזרה של VPC Service Controls. (בקטע הערות ומגבלות מופיע מידע חשוב).
- אתם יכולים ליצור כללים לתעבורת נתונים נכנסת ויוצאת כדי לאפשר לחשבון השירות גישה למשאבים וללקוחות שמוגנים על ידי גבולות גזרה לשירות, וגישה מהם.
התפקידים הנדרשים
אלה התפקידים שצריך להקצות לחשבון שירות כדי להגדיר אותו ל-Data Studio:
לאדמינים
- כדי לקבל את סוכן השירות של Data Studio, אתם צריכים להיות משתמשים ב-Google Workspace או ב-Cloud Identity.
- כדי להגדיר חשבון שירות, צריך לקבל את התפקיד אדמין של חשבון שירות (
roles/iam.serviceAccountAdmin) או יצירת חשבונות שירות (roles/iam.serviceAccountCreator) בפרויקט Google Cloud . מידע נוסף על תפקידים בחשבונות שירות - כדי להגדיר את חשבון השירות כך שתהיה לו גישה לטבלה או למערך נתונים ב-BigQuery, צריך להיות לכם תפקיד BigQuery Data Owner (הבעלים של נתוני BigQuery) (
roles/bigquery.dataOwner) בטבלה או במערך הנתונים, או תפקיד אחר שמעניק לכם את ההרשאהbigquery.datasets.setIamPolicy.
לחשבון השירות
- לכל הפחות, צריך להקצות לחשבון השירות את התפקיד BigQuery Data Viewer (צפייה בנתוני BigQuery) (
roles/bigquery.dataViewer) בטבלאות או במערכי הנתונים הספציפיים שהוא צריך לגשת אליהם. - שאילתות בהתאמה אישית: אם מקור הנתונים משתמש בשאילתה בהתאמה אישית, צריך להעניק לחשבון השירות גם את התפקיד BigQuery Job User (
roles/bigquery.jobUser) בפרויקט Google Cloud שמכיל את הנתונים.
הוראות להגדרה
כדי להגדיר חשבון שירות שמעניק גישה לנתוני BigQuery, פועלים לפי השלבים הבאים:
- קבלת סוכן השירות של Data Studio בשלב הזה, מעתיקים את כתובת האימייל של סוכן השירות כדי להשתמש בה בשלב הבא. הכתובת הזו נוצרת בשבילכם באופן אוטומטי על ידי Data Studio.
- יוצרים חשבון שירות ל-Data Studio. בשלב הזה יוצרים את המשתמש הלא-אנושי שיקבל גישה לנתונים.
- מתן גישה לחשבון השירות לסוכן השירות של Data Studio. בשלב הזה, מעניקים לסוכן השירות את התפקיד הנדרש בחשבון השירות.
- הקצאת תפקידי משתמשים. בשלב הזה, תעניקו למשתמשים את התפקיד הנדרש כדי שהם יוכלו ליצור מקורות נתונים שמשתמשים בפרטי הכניסה של חשבון שירות.
- הענקת גישה לחשבון השירות לנתוני BigQuery. בשלב הזה, תעניקו לחשבון השירות את התפקיד הנדרש כדי שיוכל לגשת לטבלה ב-BigQuery או למערך נתונים.
שלב 1: קבלת סוכן השירות של Data Studio
כדי לאפשר לחשבון השירות לגשת לנתונים שלכם, תצטרכו לספק את סוכן השירות של Data Studio לארגון שלכם. אפשר למצוא את סוכן השירות בדף עזרה ב-Data Studio:
- עוברים אל דף העזרה של סוכן השירות של Data Studio.
- מעתיקים את כתובת האימייל של סוכן השירות שמופיעה בדף.
שלב 2: יצירת חשבון שירות ל-Data Studio
הוראות ליצירת חשבון שירות מופיעות בGoogle Cloud מסמכי ה-IAM. אפשר להשתמש במסוף Google Cloud או בשורת הפקודה של Cloud Shell כדי ליצור את חשבון השירות.
המסוף
- נכנסים לדף יצירת חשבון שירות במסוף Google Cloud .
- בוחרים פרויקט.
- נותנים לחשבון השירות שם שיוצג במסוף Google Cloud .
המסוף Google Cloud יוצר מזהה לחשבון השירות על סמך השם הזה. עורכים את המזהה במקרה הצורך. אי אפשר לשנות את המזהה בשלב מאוחר יותר.
- אופציונלי: מזינים תיאור של חשבון השירות.
- לוחצים על יצירה והמשך.
- בקטע הרשאות, נותנים לחשבון השירות את תפקיד ה-IAM BigQuery Job User בפרויקט שמכיל את הנתונים שאליהם רוצים להתחבר ב-Data Studio. שימו לב: יכול להיות שהפרויקט הזה יהיה שונה מהפרויקט שבו יצרתם את חשבון השירות.
- לוחצים על Continue.
- בשדה Service account users role, מוסיפים את המשתמשים שיכולים להשתמש בחשבון השירות הזה כדי לספק פרטי כניסה למקורות הנתונים שלהם. אם אינכם מוכנים להוסיף משתמשים עכשיו, תוכלו לעשות זאת מאוחר יותר לפי ההוראות במאמר הקצאת תפקידי משתמשים.
- לוחצים על DONE כדי לשמור את חשבון השירות ולחזור לדף הרשימה של חשבונות השירות בפרויקט.
gcloud
פועלים לפי השלבים הכלליים שמפורטים בקטע Cloud Shell במאמר יצירה וניהול של חשבונות שירות.
- פותחים את Cloud Shell.
- בוחרים פרויקט, אם צריך.
- כדי ליצור את חשבון השירות, מריצים את הפקודה gcloud iam service-accounts create. אתם יכולים להשתמש בכל שם חשבון, תיאור ושם מוצג שתבחרו.
לדוגמה:
gcloud iam service-accounts create looker-studio-service-account \ --description="Use for Data Studio access to BigQuery" \ --display-name="LS_BQ"
-
כדי לגשת לנתוני BigQuery ב Google Cloud פרויקט שבו רוצים להשתמש עם Data Studio, צריך לתת לחשבון השירות את ההרשאה
bigquery.jobs.createבפרויקט הזה. כדי לתת את ההרשאה הזו, אפשר להקצות את תפקיד ה-IAM BigQuery Job User.בנוסף, צריך לתת לחשבון השירות
bigquery.tables.getDataולמשתמשbigquery.tables.getהרשאות בפרויקט או במערך הנתונים שרוצים להשתמש בהם ב-Data Studio. כדי להעניק את ההרשאות האלה, אפשר להקצות את התפקיד BigQuery Data Viewer (roles/bigquery.dataViewer).כדי להקצות את התפקידים האלה, מריצים את הפקודה gcloud projects add-iam-policy-binding. בדוגמאות הבאות, מחליפים את PROJECT_ID במזהה הפרויקט.
דוגמה: הקצאת התפקיד BigQuery Job User
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:looker-studio-service-account@PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/bigquery.jobUser"
דוגמה: הענקת התפקיד BigQuery Data Viewer
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:looker-studio-service-account@PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/bigquery.dataViewer"
שלב 3: מתן גישה לחשבון השירות של סוכן השירות של Data Studio
כדי לאפשר לסוכן השירות של Data Studio לגשת לנתונים באמצעות חשבון השירות, צריך להקצות לסוכן השירות את התפקיד יצירת אסימונים בחשבון שירות (roles/iam.serviceAccountTokenCreator).
המסוף
- חוזרים לGoogle Cloud רשימת חשבונות השירות במסוף.
- לוחצים על חשבון השירות של Data Studio שיצרתם כדי לבחור אותו מהרשימה.
- לוחצים על Principals with access.
- לוחצים על person_addמתן גישה.
- בתיבה New principals (חשבונות משתמשים חדשים) שבקטע Add principals to
PROJECT_ID(הוספת חשבונות משתמשים אלPROJECT_ID), מדביקים את כתובת האימייל של סוכן השירות של Data Studio (שהעתקתם בשלב 1). כתובת האימייל של סוכן השירות תיראה כך: מחליפים את ORG-ID במזהה Google Cloud הארגון.service-org-ORG-ID@gcp-sa-datastudio.iam.gserviceaccount.com - בוחרים תפקיד שנותן לסוכן השירות את
iam.serviceAccounts.getAccessTokenההרשאה. לדוגמה, אפשר להשתמש בתפקיד יצירת אסימונים בחשבון שירות, אבל אפשר גם להשתמש בכל תפקיד מותאם אישית שמעניק את ההרשאה הזו. - לוחצים על SAVE.
gcloud
מריצים את הפקודה gcloud iam service-accounts add-iam-policy-binding. בדוגמה הבאה, מחליפים את ORG_ID במזהה הארגון.
לדוגמה:
gcloud iam service-accounts add-iam-policy-binding looker-studio-service-account@PROJECT_ID.iam.gserviceaccount.com \ --member="serviceAccount:service-org-ORG_ID@gcp-sa-datastudio.iam.gserviceaccount.com" \ --role="roles/iam.serviceAccountTokenCreator"
שלב 4: הקצאת תפקידי משתמש
משתמשי Data Studio שייצרו או יערוכו מקורות נתונים צריכים לקבל תפקיד שכולל את ההרשאה iam.serviceAccounts.actAs, כמו התפקיד משתמש בחשבון שירות (roles/iam.serviceAccountUser). אפשר להעניק את התפקיד הזה בפרויקט או בחשבון שירות ספציפי, אבל מומלץ להעניק את התפקיד רק בחשבון השירות. למידע נוסף, עיינו במאמר ניהול התחזות לחשבון שירות.
אנחנו ממליצים לא להקצות למשתמשים שאינם סוכני שירות את התפקיד יצירת אסימונים בחשבון שירות – הוא לא נדרש ל-Data Studio.
המסוף
- עוברים אל רשימת חשבונות השירות במסוף.
- לוחצים על חשבון השירות של Data Studio ברשימה כדי לבחור אותו.
- לוחצים על Principals with access.
- לוחצים על person_add GRANT ACCESS.
- בתיבה New principals (חשבונות משתמשים חדשים) שבקטע Add principals and roles for Service Account (הוספת חשבונות משתמשים ותפקידים לחשבון שירות), מזינים את כתובות האימייל של המשתמשים.
- בוחרים בתפקיד משתמש בחשבון שירות.
- לוחצים על SAVE.
gcloud
כדי להעניק את התפקיד משתמש חשבון שירות, מריצים את הפקודה gcloud projects add-iam-policy-binding. בדוגמאות הבאות, מחליפים את PROJECT_ID במזהה הפרויקט ואת USER_EMAIL בכתובת אימייל תקינה אחת או יותר (אם מזינים כמה כתובות, צריך להפריד ביניהן בפסיקים).
לדוגמה:
gcloud iam service-accounts add-iam-policy-binding looker-studio-service-account@PROJECT_ID.iam.gserviceaccount.com \ --member="user:USER_EMAIL" \ --role="roles/iam.serviceAccountUser"
שלב 5: נותנים לחשבון השירות גישה לנתוני BigQuery
כדי לאפשר ל-Data Studio לגשת לנתונים, צריך להעניק לחשבון השירות את התפקיד BigQuery Data Viewer ברמת הטבלה או קבוצת הנתונים. לא מומלץ להעניק גישה לחשבון שירות ברמת הפרויקט.
כדי לבצע את השלב הזה, מעתיקים את כתובת האימייל בחשבון השירות ב-Data Studio, כמו שמתואר למעלה בשלב 2. יוצרים חשבון שירות של Data Studio כדי שתוכלו להדביק אותו בתיבת הדו-שיח הוספת חשבון משתמש כשתתבקשו לעשות זאת.
המסוף
כדי להעניק גישה לטבלה:
- מעתיקים את חשבון השירות של Data Studio, כמו שמתואר למעלה בשלב 2: יצירת חשבון שירות ל-Data Studio.
- עוברים אל BigQuery ובוחרים פרויקט.
- לוחצים על dataset Datasets (קבוצת נתונים קבוצות נתונים) ואז בוחרים קבוצת נתונים.
- בוחרים טבלה.
- בסרגל הכלים, לוחצים על התפריט person_add שיתוף ואז על שיתוף.
- בחלונית Share permissions, לוחצים על person_add ADD PRINCIPAL.
- בתיבה New principals, מדביקים את כתובת האימייל בחשבון השירות של Data Studio.
- בוחרים בתפקיד BigQuery Data Viewer (צפייה בנתוני BigQuery).
- לוחצים על SAVE.
כדי להעניק גישה למערך נתונים:
- מעתיקים את חשבון השירות של Data Studio, כמו שמתואר למעלה בשלב 2: יצירת חשבון שירות ל-Data Studio.
- עוברים אל BigQuery ובוחרים פרויקט.
- לוחצים על קבוצת נתונים קבוצות נתונים ואז בוחרים קבוצת נתונים.
- לוחצים על more_vert פעולות chevron_forward שיתוף chevron_forward ניהול הרשאות.
- בחלונית Share permissions, לוחצים על person_add ADD PRINCIPAL.
- בתיבה New principals, מדביקים את כתובת האימייל בחשבון השירות של Data Studio.
- בוחרים בתפקיד BigQuery Data Viewer (צפייה בנתוני BigQuery).
- לוחצים על SAVE.
gcloud
מומלץ להשתמש בהוראות Google Cloud במסוף כדי להעניק גישה לנתונים. כדי להעניק גישה לנתונים באמצעות כלי שורת הפקודה bq, אפשר לעיין במאמר
שליטה בגישה לקבוצות נתונים במסמכי BigQuery.
מספקים למשתמשי Data Studio את חשבונות השירות של Data Studio
משתמשי Data Studio צריכים לדעת באיזה חשבון שירות להשתמש כשהם יוצרים מקורות נתונים. אין אפשרות לראות את רשימת חשבונות השירות הזמינים מתוך Data Studio, ולכן צריך לפרסם את המידע הזה באמצעות התיעוד של הארגון, אתר פנימי או אימייל.
יצירת מקור נתונים שמשתמש בפרטי כניסה של חשבון שירות
כדי ליצור מקורות נתונים שמשתמשים בפרטי כניסה של חשבון שירות, משתמשי Data Studio יכולים לפעול לפי אותם שלבים בסיסיים כמו עבור סוגים אחרים של פרטי כניסה לנתונים:
- יצירה או עריכה של מקור נתונים ב-BigQuery
- בסרגל הכלים, לוחצים על Data Credentials (פרטי גישה לנתונים).
- בוחרים באפשרות Service Account Credentials.
- מזינים את כתובת האימייל של חשבון השירות בתיבה.
- לוחצים על עדכון.
עריכה של מקור נתונים שמשתמש בפרטי כניסה של חשבון שירות
כשמישהו עורך מקור נתונים שמשתמש בפרטי כניסה של חשבון שירות, מערכת Data Studio בודקת אם יש לו הרשאה להשתמש בחשבון השירות. אם לא, מקור הנתונים יעבור לשימוש בפרטי הכניסה של אותו אדם.
איך בודקים מי משתמש בחשבון השירות כדי לגשת לנתונים
אפשר לבדוק את יומני הביקורת של חשבונות שירות במסוף Google Cloud . כדי לקבל יומני ביקורת לחשבונות שירות, צריך להפעיל את יומני הביקורת של IAM עבור פעילות של גישה לנתונים.
תרחיש לדוגמה של חשבון שירות
נניח שאתם רוצים לוודא שלמשתמשי Data Studio בחברה שלכם יש גישה רק לנתונים של חברת הבת במדינה שלהם. פתרון אפשרי הוא ליצור חשבון שירות לכל מדינה, ולהעניק למשתמשי Data Studio במדינה הזו הרשאה לפעול בתור חשבון השירות.
הגדרה לדוגמה
בדוגמה הזו, תיצרו שלושה חשבונות שירות: אחד לבריטניה, אחד לצרפת ואחד לגרמניה. לאחר מכן, תקצו כגורמים ראשיים את סוכן השירות ואת כל המשתמשים שאתם רוצים שתהיה להם אפשרות ליצור מקורות נתונים שמשתמשים בחשבון השירות. תצטרכו גם להקצות לכל אחד מהם את התפקידים המתאימים.
חשבון שירות בבריטניה
service-account-1@example-org-uk-example-project.iam.gserviceaccount.com
מנהלי בתי ספר בבריטניה
| חשבונות משתמשים | תפקידים |
|
זה סוכן השירות. |
Service Account Token Creator |
| משתמש 1 | Service Account User |
| משתמש 2 | Service Account User |
חשבון שירות בצרפת
service-account-1@example-org-fr-example-project.iam.gserviceaccount.com
עקרונות לצרפת
| חשבונות משתמשים | תפקידים |
|
זה סוכן השירות. |
Service Account Token Creator |
| משתמש 3 | Service Account User |
| משתמש 4 | Service Account User |
חשבון שירות בגרמניה
service-account-1@example-org-de-example-project.iam.gserviceaccount.com
חשבונות משתמשים בגרמניה
| חשבונות משתמשים | תפקידים |
|
זה סוכן השירות. |
Service Account Token Creator |
| משתמש 5 | Service Account User |
| משתמש 6 | Service Account User |
שגיאות
בקטע הזה מוסברות השגיאות שיוצרי מקורות נתונים וצופים בדוחות ב-Data Studio עשויים לראות כשהם מנסים להשתמש בחשבון שירות. ברוב המקרים, השגיאות האלה נובעות מאותו גורם: הגדרה שגויה או לא מלאה של חשבון השירות.
חסר תפקיד של סוכן שירות
Messages
|
מטרהלא הוקצה לסוכן השירות התפקיד Service Account Token Creator (או תפקיד אחר שכולל את ההרשאה |
פתרוןמקצים לסוכן השירות את התפקיד יצירת אסימונים בחשבון שירות . |
אין גישה לנתונים
הודעהלחשבון השירות הזה אין גישה למערך הנתונים הבסיסי. |
למען הקהילה
|
פתרון
|
חסר תפקיד משתמש
הודעהאין לך הרשאה להשתמש בחשבון השירות הזה. |
מטרההמשתמש לא נוסף כחשבון ראשי לחשבון השירות עם התפקיד Service Account User. |
פתרוןנותנים למשתמש את התפקיד משתמש בחשבון שירות בחשבון השירות. |
סוכן שירות לא זמין לחשבון
Messages
|
מטרההמשתמש מנסה להשתמש בחשבון Google רגיל (חשבון פרטי) כדי לגשת לנתונים שמנוהלים על ידי חשבון שירות. |
פתרוןמשתמשים בחשבון Google Workspace או Cloud Identity כדי לגשת לנתונים. |
אי אפשר להשתמש בסוכן שירות בתיבת הדו-שיח של פרטי הכניסה
הודעהאי אפשר להשתמש בסוכנים של שירות Data Studio כדי להתחבר ישירות לנתונים. במקום זאת, משתמשים בחשבון שירות. |
פתרוןסוכני שירות שונים מחשבונות שירות. מזינים חשבון שירות בתיבת הדו-שיח של פרטי הכניסה. אפשר למצוא את רשימת חשבונות השירות הזמינים באמצעות מסוף Google Cloud או Cloud Shell: המסוף
gcloud
לדוגמה: |
הערות ומגבלות לגבי פרטי כניסה לחשבון שירות
- פרטי הכניסה של חשבון השירות זמינים רק למקורות נתונים של BigQuery. המגבלות של IAM חלות על חשבונות שירות.
- יכול להיות שיחלפו כמה דקות עד שהשינויים בהרשאות של חשבון השירות יתעדכנו ב-Data Studio.
- מכיוון ש-Data Studio פועל בתשתית שמנוהלת על ידי Google עם כתובות IP דינמיות והקצאות פרויקטים, אי אפשר להגדיר VPC Service Controls באמצעות רשימות היתרים של כתובות IP סטטיות או כללי פרויקט. כדי לאפשר גישה ל-Data Studio דרך אזור של VPC Service Controls, צריך להוסיף חשבון שירות כגורם ראשי ברמות הגישה או בכללי התעבורה הנכנסת והיוצאת.
מקורות מידע שקשורים לנושא
- הסבר על חשבונות שירות
- כללים לתעבורת נתונים נכנסת ויוצאת
- חיבור ל-BigQuery: תמיכה ב-VPC Service Controls
- הפעלת Cloud Shell