איסוף יומנים של הקשר משתמש ב-Okta

נתמך ב:

במאמר הזה מוסבר איך אוספים יומנים של הקשר משתמש ב-Okta על ידי הגדרת פיד של Google Security Operations באמצעות API של צד שלישי.

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

חשוב לוודא שמתקיימות דרישות הסף הבאות:

  • מופע של Google SecOps
  • גישה עם הרשאות ל-Okta tenant או למסוף Admin
  • הרשאות ליצירת טוקן API ב-Okta

הגדרת רשימת היתרים של כתובות IP

לפני שיוצרים את הפיד, צריך להוסיף לרשימת ההיתרים את טווחי כתובות ה-IP של Google SecOps בחומת האש או בהגדרות הרשת של Okta.

קבלת טווחי כתובות IP של Google SecOps

הוספת טווחי כתובות IP להקשר המשתמש ב-Okta

  1. נכנסים למסוף Admin של Okta.
  2. עוברים אל אבטחה > רשתות.
  3. בקטע הגבלות על כתובות IP, לוחצים על עריכה.
  4. מוסיפים כל טווח כתובות IP של Google SecOps בסימון CIDR לכתובות ה-IP המהימנות.
  5. לוחצים על Save.

הגדרת גישה ל-Okta User Context API

כדי לאפשר ל-Google SecOps לשלוף נתוני הקשר של משתמשים, צריך ליצור אסימון API עם הרשאות קריאה.

יצירת טוקן API

  1. נכנסים למסוף Admin של Okta.
  2. עוברים אל אבטחה > API.
  3. לוחצים על הכרטיסייה Tokens (אסימונים).
  4. לוחצים על יצירת טוקן.
  5. מספקים את פרטי ההגדרה הבאים:
    • שם: מזינים שם תיאורי (לדוגמה, Google SecOps Integration).
    • תיאור (אופציונלי): מזינים תיאור.
  6. לוחצים על יצירת טוקן.

תיעוד פרטי הכניסה ל-API

אחרי שיוצרים את אסימון ה-API, מקבלים את פרטי הכניסה הבאים:

  • טוקן API: הערך של טוקן ה-API (לדוגמה, 00QCGr-1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1)

הרשאות ה-API הנדרשות

נדרשות ההרשאות הבאות ב-Okta עבור טוקן ה-API:

הרשאה/תפקיד רמת גישה מטרה
אדמין עם הרשאת קריאה בלבד קריאה גישה לנתונים של פרופיל המשתמש
סופר-אדמין קריאה גישה מלאה לכל נתוני המשתמשים

הגדרת פידים

כדי להגדיר פיד:

  1. עוברים אל SIEM Settings > Feeds (הגדרות SIEM > פידים).
  2. לוחצים על הוספת פיד חדש.
  3. בדף הבא, לוחצים על הגדרת פיד יחיד.
  4. בשדה שם הפיד, מזינים שם לפיד (לדוגמה, Okta User Context).
  5. בוחרים באפשרות API של צד שלישי בתור סוג המקור.
  6. בוחרים באפשרות Okta User Context (הקשר של משתמש Okta) בתור סוג היומן.
  7. לוחצים על הבא.
  8. מציינים ערכים לפרמטרים הבאים של הקלט:

    • כותרת HTTP של אימות: מזינים את פרטי הכניסה לאימות בפורמט הבא:

      Authorization:SSWS your-api-token
      
      • לדוגמה: Authorization:SSWS 00QCGr-1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1
    • שם המארח של ה-API: שם הדומיין המוגדר במלואו של מופע Okta (למשל example.okta.com, ולא דומיין מותאם אישית שהוגדר).

      • לדוגמה: company.okta.com
    • שדה הפניה למזהה המנהל: מזהה שנדרש כשמשתמשים במזהה שאינו של Okta כדי להפנות למנהלים (אופציונלי).

    • מרחב השמות של הנכס: מרחב השמות של הנכס.

    • תוויות להוספה: התווית שתתווסף לאירועים מהפיד הזה.

  9. לוחצים על הבא.

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

אחרי ההגדרה, הפיד מתחיל לאחזר יומנים מהמופע של Okta User Context בסדר כרונולוגי.

נקודות קצה אזוריות

ב-Okta משתמשים בנקודות קצה שונות ל-API בהתאם לאזור של הארגון:

אזור כתובת URL בסיסית / שם מארח
ארה"ב (ברירת מחדל) {org-name}.okta.com
האיחוד האירופי (EMEA) {org-name}.okta-emea.com
אסיה-פסיפיק (APAC) {org-name}.okta.com.au
תצוגה מקדימה (בדיקה) {org-name}.oktapreview.com

משתמשים בשם המארח שמתאים לאזור של מופע Okta.

מגבלות קצב של API

ל-Okta API יש את מגבלות הקצב הבאות:

  • מגבלת קצב ברירת מחדל: 600 בקשות לדקה לרוב נקודות הקצה
  • thought System Log API: ‏60 בקשות לדקה
  • נקודות קצה של משתמשים: 600 בקשות לדקה

מערכת Google SecOps מטפלת אוטומטית בהגבלת קצב ליצירת בקשות באמצעות נסיגה אקספוננציאלית. אם נתקלים בבעיות, אפשר לפנות לתמיכה של Okta כדי להגדיל את מכסת בקשות ה-API.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM היגיון
activated event.idm.entity.entity.labels אם activated קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח activated.
created event.idm.entity.entity.labels אם created קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח "created".
profile.costCenter event.idm.entity.entity.labels אם profile.costCenter קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח costCenter.
profile.Function event.idm.entity.entity.labels אם profile.Function קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח "Function".
statusChanged event.idm.entity.entity.labels אם statusChanged קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח statusChanged.
type.id event.idm.entity.entity.labels אם type.id קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח type_id.
profile.location event.idm.entity.entity.location.name הערך נלקח מ-profile.location.
profile.AD_ObjectGUID event.idm.entity.entity.user.attribute.labels אם profile.AD_ObjectGUID קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח AD_ObjectGUID.
profile.ADpwdLastSet event.idm.entity.entity.user.attribute.labels אם profile.ADpwdLastSet קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח ADpwdLastSet.
profile.AFF_Code event.idm.entity.entity.user.attribute.labels אם הפרמטר profile.AFF_Code קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח AFF_Code.
profile.Desk_Location_WD event.idm.entity.entity.user.attribute.labels אם profile.Desk_Location_WD קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Desk_Location_WD.
profile.Mailing_Address_WD event.idm.entity.entity.user.attribute.labels אם profile.Mailing_Address_WD קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח "Mailing_Address_WD".
profile.Manager_UPN event.idm.entity.entity.user.attribute.labels אם profile.Manager_UPN קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Manager_UPN.
profile.PRIVATE_CONF_Profile event.idm.entity.entity.user.attribute.labels אם profile.PRIVATE_CONF_Profile קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח PRIVATE_CONF_Profile.
profile.Region_WD event.idm.entity.entity.user.attribute.labels אם profile.Region_WD קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Region_WD.
profile.Subsidiary_Company event.idm.entity.entity.user.attribute.labels אם profile.Subsidiary_Company קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Subsidiary_Company.
profile.Telephone_Work event.idm.entity.entity.user.attribute.labels אם profile.Telephone_Work קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Telephone_Work.
profile.Temp_WD_Primary_Email event.idm.entity.entity.user.attribute.labels אם profile.Temp_WD_Primary_Email קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Temp_WD_Primary_Email.
profile.VMware_WS1_Username event.idm.entity.entity.user.attribute.labels אם profile.VMware_WS1_Username קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח "VMware_WS1_Username".
profile.Work_Street_Address_WD event.idm.entity.entity.user.attribute.labels אם profile.Work_Street_Address_WD קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Work_Street_Address_WD.
profile.Workato_WD_Primary_Email event.idm.entity.entity.user.attribute.labels אם profile.Workato_WD_Primary_Email קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Workato_WD_Primary_Email.
profile.Workday_ID event.idm.entity.entity.user.attribute.labels אם profile.Workday_ID קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Workday_ID.
profile.Worker_Type_WD event.idm.entity.entity.user.attribute.labels אם profile.Worker_Type_WD קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח Worker_Type_WD.
profile.businessUnit event.idm.entity.entity.user.attribute.labels אם profile.businessUnit קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח businessUnit.
profile.companyName event.idm.entity.entity.user.attribute.labels אם profile.companyName קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח "companyName".
profile.contingentSupplierName event.idm.entity.entity.user.attribute.labels אם profile.contingentSupplierName קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח "contingentSupplierName".
profile.conversationId event.idm.entity.entity.user.attribute.labels אם profile.conversationId קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח conversationId.
profile.distinguishedName event.idm.entity.entity.user.attribute.labels אם profile.distinguishedName קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח 'distinguishedName'.
profile.division event.idm.entity.entity.user.attribute.labels אם profile.division קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח "division".
profile.emailPrefix event.idm.entity.entity.user.attribute.labels אם profile.emailPrefix קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח "emailPrefix".
profile.employeeType event.idm.entity.entity.user.attribute.labels אם profile.employeeType קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח employeeType.
profile.homePostalAddress event.idm.entity.entity.user.attribute.labels אם profile.homePostalAddress קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח homePostalAddress.
profile.isManager event.idm.entity.entity.user.attribute.labels אם profile.isManager קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח isManager.
lastLogin event.idm.entity.entity.user.attribute.labels אם lastLogin קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח lastLogin.
profile.leaveOfAbsence event.idm.entity.entity.user.attribute.labels אם profile.leaveOfAbsence קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח leaveOfAbsence.
profile.managerDn event.idm.entity.entity.user.attribute.labels אם profile.managerDn קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח managerDn.
profile.payGroup event.idm.entity.entity.user.attribute.labels אם profile.payGroup קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח "payGroup".
profile.wdemployeeID event.idm.entity.entity.user.attribute.labels אם profile.wdemployeeID קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח wdemployeeID.
profile.zipCode event.idm.entity.entity.user.attribute.labels אם profile.zipCode קיים, הערך שלו מתווסף כצמד מפתח/ערך עם המפתח zipCode.
profile.userType event.idm.entity.entity.user.attribute.roles אם profile.userType קיים, הערך שלו מתווסף למערך של תפקידים.
profile.organization, profile.company event.idm.entity.entity.user.company_name הערך נלקח מ-profile.organization, או מ-profile.company אם הערך הראשון לא קיים.
profile.department event.idm.entity.entity.user.department הערך נלקח מ-profile.department.
profile.email, profile.secondEmail, profile.login event.idm.entity.entity.user.email_addresses הערכים מ-profile.email, מ-profile.secondEmail ומ-profile.login (אם מדובר באימייל ולא בכפילות) מאוחדים בשדה הזה.
profile.employeeNumber event.idm.entity.entity.user.employee_id הערך נלקח מ-profile.employeeNumber.
profile.firstName, profile.Preferred_First_Name event.idm.entity.entity.user.first_name הערך נלקח מ-profile.firstName, או מ-profile.Preferred_First_Name אם הערך הראשון לא קיים.
profile.EmployeeWorkGroup event.idm.entity.entity.user.group_identifiers הערך נלקח מ-profile.EmployeeWorkGroup.
profile.HireDate, profile.hiredate event.idm.entity.entity.user.hire_date הערך מנותח מ-profile.HireDate או מ-profile.hiredate אם הראשון לא קיים.
profile.lastName, profile.preferred_Last_Name event.idm.entity.entity.user.last_name הערך נלקח מ-profile.lastName אם profile.lastName או profile.preferred_Last_Name קיימים.
lastLogin event.idm.entity.entity.user.last_login_time הערך מנותח מ-lastLogin.
passwordChanged event.idm.entity.entity.user.last_password_change_time הערך מנותח מ-passwordChanged.
profile.manager, profile.managerEmail, profile.managerId event.idm.entity.entity.user.managers מאוכלס באובייקט שמכיל את user_display_name מ-profile.manager, את email_addresses מ-profile.managerEmail ואת employee_id מ-profile.managerId.
profile.city, profile.firstBaseCity event.idm.entity.entity.user.office_address.city הערך נלקח מ-profile.city, או מ-profile.firstBaseCity אם הערך הראשון לא קיים.
profile.countryCode, profile.country event.idm.entity.entity.user.office_address.country_or_region הערך נלקח מ-profile.countryCode, או מ-profile.country אם הראשון לא קיים.
profile.streetAddress event.idm.entity.entity.user.personal_address.name הערך נלקח מ-profile.streetAddress.
profile.state event.idm.entity.entity.user.personal_address.state הערך נלקח מ-profile.state.
profile.primaryPhone, profile.mobilePhone, profile.mobile event.idm.entity.entity.user.phone_numbers הערכים מהשדות profile.primaryPhone, profile.mobilePhone ו-profile.mobile משולבים בשדה הזה.
profile.terminationDate, profile.terminationdate event.idm.entity.entity.user.termination_date הערך מנותח מ-profile.terminationDate או מ-profile.terminationdate אם הראשון לא קיים.
profile.title event.idm.entity.entity.user.title הערך נלקח מ-profile.title.
status event.idm.entity.entity.user.user_authentication_status ממופה מ-status: ACTIVE/RECOVERY/LOCKED_OUT/PASSWORD_EXPIRED -> ACTIVE; SUSPENDED -> SUSPENDED; DEPROVISIONED -> DELETED; אחרת UNKNOWN_AUTHENTICATION_STATUS.
profile.displayName event.idm.entity.entity.user.user_display_name הערך נלקח מ-profile.displayName.
profile.samAccountName,‏ profile.samaccountname,‏ profile.login,‏ profile.ldapUid event.idm.entity.entity.user.userid השדות הבאים מאוכלסים לפי סדר העדיפות: profile.samAccountName, profile.samaccountname, profile.login (אם זה לא אימייל), profile.ldapUid (אם profile.login הוא לא אימייל).
event.idm.entity.metadata.entity_type הערך שהוגדר הוא USER.
id event.idm.entity.metadata.product_entity_id הערך נלקח מ-id.
event.idm.entity.metadata.product_name הערך שהוגדר הוא Identity Cloud.
event.idm.entity.metadata.vendor_name הערך שהוגדר הוא Okta.
activated", "created", "statusChanged", and "type.id entity.entity.labels מופה מיומן השינויים
profile.AD_ObjectGUID", "profile.ADpwdLastSet", "profile.AFF_Code", "profile.Desk_Location_WD", "profile.Mailing_Address_WD", "profile.Manager_UPN", "profile.PRIVATE_CONF_Profile", "profile.Region_WD", "profile.Subsidiary_Company", "profile.Telephone_Work", "profile.Temp_WD_Primary_Email", "profile.VMware_WS1_Username", "profile.Work_Street_Address_WD", "profile.Workato_WD_Primary_Email", "profile.Workday_ID", "profile.Worker_Type_WD", "profile.businessUnit", "profile.companyName", "profile.contingentSupplierName", "profile.conversationId", "profile.distinguishedName", "profile.division", "profile.emailPrefix", "profile.employeeType", "profile.homePostalAddress", "profile.isManager", "profile.leaveOfAbsence", "profile.managerDn", "profile.payGroup", "profile.wdemployeeID", and "profile.zipCode entity.entity.user.attribute.labels מופה מיומן השינויים
profile.country entity.user.country מופה מיומן השינויים
profile.firstBaseCity entity.user.firstBaseCity מופה מיומן השינויים
profile.preferred_Last_Name entity.user.preferred_Last_Name מופה מיומן השינויים
profile.EmployeeWorkGroup entity.user.EmployeeWorkGroup מופה מיומן השינויים
profile.manager entity.user.managers.user_display_name מופה מיומן השינויים
profile.organization entity.user.organization מופה מיומן השינויים
profile.state entity.user.state מופה מיומן השינויים
profile.streetAddress entity.user.streetAddress מופה מיומן השינויים
profile.mobile entity.user.mobile מופה מיומן השינויים
profile.managerEmail entity.user.managers.email_addresses מופה מיומן השינויים
profile.managerId entity.user.managers.employee_id מופה מיומן השינויים
profile.spotify_username entity.entity.labels מופה מיומן השינויים

יומן שינויים

צפייה ביומן השינויים של כלי הניתוח הזה

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