שילוב של Google Forms עם Google SecOps

במאמר הזה מוסבר איך לשלב את Google Forms עם Google Security Operations ‏ (Google SecOps).

לפני שמתחילים

לפני שמגדירים את השילוב של Google Forms ב-Google SecOps, צריך לוודא שהסביבות של Google Cloud ו-Google Workspace מוכנות לגישה ל-API ולהתחזות.

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

  1. חשבון שירות: משמש כגשר בין המערכות.

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

  3. הרשאות: ההיקפים והתפקידים שמגדירים מה מותר לזהות לעשות.

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

מבצעים את השלבים המקדימים הבאים:

  1. יוצרים חשבון שירות.
  2. יוצרים מפתח JSON.
  3. מפעילים את ממשקי ה-API הנדרשים בפרויקט.
  4. אופציונלי: יצירת תפקיד בהתאמה אישית לשילוב.
  5. אופציונלי: מקצים את התפקיד בהתאמה אישית למשתמש.
  6. הקצאת הרשאה ברמת הדומיין לחשבון השירות.

יצירה של חשבון שירות

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

  1. נכנסים לדף Credentials במסוף Google Cloud .

    כניסה לדף Credentials

  2. לוחצים על add_2Create credentials > Service account.

  3. בקטע Service account details, מזינים שם בשדה Service account name.

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

  5. לוחצים על סיום.

יצירת מפתח JSON

כדי לאמת את הזהות של חשבון השירות וליצור חיבור מאובטח, Google SecOps דורש קובץ מפתח JSON.

  1. בוחרים את חשבון השירות ועוברים אל Keys.

  2. לוחצים על Add key > Create new key.

  3. בוחרים באפשרות JSON בתור סוג המפתח ולוחצים על Create. תיבת הדו-שיח Private key saved to your computer מופיעה, ועותק של המפתח הפרטי יורד למחשב.

הפעלת ממשקי ה-API הנדרשים בפרויקט

צריך להפעיל את ממשקי ה-API הספציפיים של Google Cloud שמאפשרים לשלב בין Google Forms לבין הספרייה של Google Workspace.

  1. במסוף Google Cloud , נכנסים לדף APIs & Services.

    כניסה אל APIs & Services

  2. לוחצים על addEnable APIs and Services.

  3. מפעילים את ממשקי ה-API הבאים בפרויקט:

    • Admin SDK API

    • Google Forms API

אופציונלי: יצירת תפקיד בהתאמה אישית לשילוב

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

  • יחידות ארגוניות

  • משתמשים

  • קבוצות Google

  1. במסוף Google Admin, נכנסים אל חשבון > תפקידי אדמין.

  2. לוחצים על תפקיד חדש.

  3. נותנים שם לתפקיד החדש בהתאמה אישית ולוחצים על המשך.

  4. בקטע בחירת הרשאות, מאתרים את הקטע הרשאות Admin API.

  5. מסמנים את התיבות של יחידות ארגוניות, משתמשים וקבוצות.

  6. לוחצים על Continue > Create Role.

אופציונלי: הקצאת התפקיד בהתאמה אישית למשתמש

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

  1. במסוף Google Admin, נכנסים אל ספרייה > משתמשים.

  2. בוחרים את המשתמש שרוצים להשתמש בו לשילוב (אדמין קיים או משתמש ייעודי חדש).

  3. פותחים את ההגדרות של המשתמש ולוחצים על תפקידי אדמין והרשאות > עריכה עריכה.

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

  5. לוחצים על Save.

הענקת גישה ברמת הדומיין לחשבון השירות

הענקת גישה ברמת הדומיין מאפשרת לחשבון השירות לגשת לנתונים בכל הדומיין שלכם ב-Google Workspace, על ידי התחזות למשתמש המורשה.

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

  2. בחלונית Domain wide delegation, בוחרים באפשרות Manage Domain Wide Delegation.

  3. לוחצים על הוספה.

  4. בשדה מזהה לקוח, מזינים את מזהה הלקוח של חשבון השירות שנוצר בשלב הראשון.

  5. בשדה OAuth Scopes, מזינים את הרשימה הבאה של היקפי ההרשאות הנדרשים, מופרדים בפסיקים:

    https://mail.google.com/,
    https://www.googleapis.com/auth/admin.directory.customer.readonly,
    https://www.googleapis.com/auth/admin.directory.domain.readonly,
    https://www.googleapis.com/auth/admin.directory.group,
    https://www.googleapis.com/auth/admin.directory.group.member,
    https://www.googleapis.com/auth/admin.directory.orgunit,
    https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly,
    https://www.googleapis.com/auth/admin.directory.user,
    https://www.googleapis.com/auth/admin.directory.user.alias,
    https://www.googleapis.com/auth/apps.groups.settings,
    https://www.googleapis.com/auth/cloud-platform,
    https://www.googleapis.com/auth/forms.body.readonly,
    https://www.googleapis.com/auth/forms.responses.readonly
    
  6. לוחצים על Authorize.

פרמטרים של שילוב

השילוב של Google Forms דורש את הפרמטרים הבאים:

פרמטר תיאור
Delegated Email חובה

כתובת אימייל שתשמש להתחזות ולבקרת גישה.

Service Account JSON חובה

התוכן של קובץ ה-JSON של מפתח חשבון השירות.

Verify SSL חובה

אם בוחרים באפשרות הזו, השילוב מאמת שאישור ה-SSL לחיבור ל-Google Forms תקף.

האפשרות הזו מסומנת כברירת מחדל.

איך מגדירים שילובים ב-Google SecOps

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

פעולות

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

פינג

משתמשים בפעולה Ping כדי לבדוק את הקישוריות ל-Google Forms.

הפעולה הזו לא פועלת על ישויות של Google SecOps.

קלט של הפעולה

אין.

ערכי פלט של פעולות

הפעולה פינג מספקת את הפלטים הבאים:

סוג הפלט של הפעולה זמינות
חיבור לקיר של המארז לא זמין
קישור ללוח הפניות לא זמין
שולחן קונסולה צמוד לקיר לא זמין
טבלת העשרה לא זמין
תוצאת JSON לא זמין
הודעות פלט יש גישה
תוצאת הסקריפט יש גישה
הודעות פלט

הפעולה Ping יכולה להחזיר את הודעות הפלט הבאות:

הודעת פלט תיאור ההודעה
Successfully connected to the Google Forms server with the provided connection parameters! הפעולה בוצעה בהצלחה.
Failed to connect to the Google Forms server! Error is ERROR_REASON

הפעולה נכשלה.

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

תוצאת הסקריפט

בטבלה הבאה מפורטים הערכים של פלט הסקריפט כשמשתמשים בפעולה פינג:

שם תוצאת הסקריפט ערך
is_success True או False

מחברים

הוראות מפורטות להגדרת מחבר ב-Google SecOps מופיעות במאמר הטמעת הנתונים (מחברים).

‫Google Forms – מחבר לתגובות

משתמשים ב-Google Forms – Responses Connector כדי לשלוף תשובות מ-Google Forms.

כדי להשתמש ב-Google Forms – Responses Connector צריך להגדיר את הפרמטרים הבאים:

פרמטר תיאור
Product Field Name חובה

שם השדה שבו מאוחסן שם המוצר.

ערך ברירת המחדל הוא Product Name.

Event Field Name חובה

שם השדה שמשמש לקביעת שם האירוע (סוג המשנה).

ערך ברירת המחדל הוא event_type.

Environment Field Name אופציונלי

שם השדה שבו מאוחסן שם הסביבה.

אם השדה environment לא נמצא, הסביבה מוגדרת לסביבת ברירת המחדל.

ערך ברירת המחדל הוא "".

Environment Regex Pattern אופציונלי

תבנית של ביטוי רגולרי להפעלה על הערך שנמצא בשדה Environment Field Name. הפרמטר הזה מאפשר לשנות את שדה הסביבה באמצעות הלוגיקה של הביטוי הרגולרי.

משתמשים בערך ברירת המחדל .* כדי לאחזר את הערך הגולמי הנדרש של Environment Field Name.

אם תבנית הביטוי הרגולרי היא null או ריקה, או אם ערך הסביבה הוא null, תוצאת הסביבה הסופית היא סביבת ברירת המחדל.

Script Timeout (Seconds) חובה

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

ערך ברירת המחדל הוא 300 שניות.

Delegated Email חובה

כתובת אימייל שתשמש להתחזות ולבקרת גישה.

Service Account JSON חובה

התוכן של קובץ ה-JSON של מפתח חשבון השירות.

Form IDs To Track חובה

רשימה מופרדת בפסיקים של מזהי טפסים ב-Google Forms שרוצים לעקוב אחרי התשובות שלהם.

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

Alert Severity אופציונלי

רמת החומרה שמוקצית לכל ההתראות שהמחבר יוצר על סמך התגובה שנקלטה ב-Google Forms.

הערכים האפשריים הם:

  • Informational
  • Low
  • Medium
  • High
  • Critical

ערך ברירת המחדל הוא Low.

Max Hours Backwards חובה

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

ערך ברירת המחדל הוא שעה אחת.

Max Responses To Fetch חובה

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

המספר המקסימלי הוא 100.

Disable Overflow אופציונלי

אם בוחרים באפשרות הזו, המחבר מתעלם ממנגנון ההצפה של Google SecOps במהלך יצירת ההתראה.

האפשרות הזו לא מסומנת כברירת מחדל.

Verify SSL חובה

אם בוחרים באפשרות הזו, השילוב מאמת שאישור ה-SSL לחיבור ל-Google Forms תקף.

האפשרות הזו לא מסומנת כברירת מחדל.

Proxy Server Address אופציונלי

כתובת שרת ה-Proxy שבו רוצים להשתמש.

Proxy Username אופציונלי

שם המשתמש של שרת ה-proxy לאימות.

Proxy Password אופציונלי

הסיסמה לאימות מול שרת ה-proxy.

כללי מחברים

המחבר של Google Forms – Responses תומך בשרתי proxy.

אירועי מחברים

הדוגמה הבאה מראה את פלט ה-JSON של אירוע ב-Google SecOps שנוצר על ידי המחבר של Google Forms – Responses:

{
   "responseId": "RESPONSE_ID",
   "createTime": "2024-09-05T11:43:13.892Z",
   "lastSubmittedTime": "2024-09-05T11:43:13.892123Z",
   "event_type": "Question",
   "questionId": "78099fe3",
   "textAnswers": {
       "answers": [
           {
               "value": "Option 1"
           }
       ]
   }
}

הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.