SCCM

במאמר הזה מוסבר איך לשלב את SCCM עם Google SecOps.

הגדרת SCCM לעבודה עם Google Security Operations

חיבור SCCM ל-Linux

כדי להריץ את השילוב של SCCM בשרת Centos, קודם צריך להתקין את wmi:

rpm -Uvh http://www6.atomicorp.com/channels/atomic/centos/7/x86_64/RPMS/wmi-1.3.14-4.el7.art.x86_64.rpm
yum install wmi

אחרי זה, אפשר להגדיר את השילוב ולהשתמש בו.

הגדרת השילוב של SCCM ב-Google SecOps

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

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

כדי להגדיר את השילוב, משתמשים בפרמטרים הבאים:

שם הפרמטר לתצוגה סוג ערך ברירת המחדל חובה תיאור
שם המכונה String לא רלוונטי לא שם המכונה שרוצים להגדיר לה את השילוב.
תיאור String לא רלוונטי לא תיאור המכונה.
כתובת השרת String x.x.x.x כן כתובת ה-IP או שם ה-DNS של שרת Microsoft SCCM שאליו רוצים להתחבר.
דומיין String דומיין כן הדומיין של שרת Microsoft SCCM.
שם משתמש String לא רלוונטי כן שם המשתמש שמשמש להתחברות ל-Microsoft SCCM.
סיסמה סיסמה לא רלוונטי כן הסיסמה שמשמשת להתחברות ל-Microsoft SCCM.
הפעלה מרחוק תיבת סימון התיבה לא מסומנת לא מסמנים את התיבה כדי להפעיל את השילוב שהוגדר מרחוק. אחרי שמסמנים את התיבה, מופיעה האפשרות לבחור את המשתמש המרוחק (הנציג).

פעולות

קבלת מאפייני המחשב

תיאור

קבלת מאפייני מחשב ממכונת Microsoft SCCM ושימוש במידע שהתקבל כדי להעשיר את ישות המארח של Google SecOps שסופקה.

פרמטרים

לא רלוונטי

תרחישים לדוגמה

קבלת מידע על המארח בפלייבוק של Google SecOps מ-Microsoft SCCM ושימוש בנתונים האלה להעשרה.

ריצה

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

תוצאות הפעולה

העשרת ישויות
שם שדה ההעשרה לוגיקה – מתי להחיל
ClientEdition הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SMSInstalledSites הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
MDMDeviceCategoryID הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
ManagementAuthority הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IPAddresses הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
EASDeviceID הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
ResourceType הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SID הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
DeviceOwner הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IsWriteFilterCapable הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
HardwareID הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IsMachineChangesPersisted הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SMBIOSGUID הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
NetbiosName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
פיתוח פתרונות הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
AgentSite הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IPv6Addresses הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
ResourceNames הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
PrimaryGroupID הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
ClientVersion הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
ClientType הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
PreviousSMSUUID הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
ResourceId הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IPv6Prefixes הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
ObjectGUID הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SMSAssignedSites הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SMSResidentSites הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IsPortableOperatingSystem הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
MDMComplianceStatus הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
WTGUniqueKey הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
AMTStatus הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SystemGroupName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
AgentName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
פעיל הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SNMPCommunityName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
ADSiteName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IsClientAMT30Compatible הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IsVirtualMachine הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
AlwaysInternet הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
הוצא משימוש הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
שם הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SystemOUName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SuppressAutoProvision הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SMSUniqueIdentifier הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
ResourceDomainORWorkgroup הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
UserAccountControl הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
LastLogonTimestamp הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
AMTFullVersion הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
OperatingSystemNameandVersion הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
PublisherDeviceID הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SystemContainerName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
LastLogonUserName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
InternetEnabled הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SMSUUIDChangeDate הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
AgentTime הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IsAssignedToUser הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
WipeStatus הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SecurityGroupName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
DistinguishedName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SystemRoles הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
לא בתוקף הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
SerialNumber הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
FullDomainName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IsAOACCapable הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
MACAddresses הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
IPSubnets הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
VirtualMachineType הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
CPUType הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
CreationDate הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
VirtualMachineHostName הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
OSBranch הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
LastLogonUserDomain הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות של ערכים דוגמה
is_enriched נכון/לא נכון is_enriched:False
תוצאת JSON
[
    {
        "EntityResult": {
            "ClientEdition": "None",
            "SMSInstalledSites": "()",
            "MDMDeviceCategoryID": "None",
            "ManagementAuthority": "None",
            "IPAddresses": "(u'1.1.1.1', u'1.1.1.1')",
            "EASDeviceID": "None",
            "ResourceType": "5",
            "Unknown": "None",
            "SID": "S-1-5-21-2485274276-3947876705-1900992244-1487",
            "DeviceOwner": "None",
            "IsWriteFilterCapable": "None",
            "HardwareID": "None",
            "IsMachineChangesPersisted": "None",
            "SMBIOSGUID": "None",
            "NetbiosName": "PC_01",
            "Build": "None",
            "AgentSite": "(u'001',)",
            "IPv6Addresses": "()",
            "Client": "None",
            "ResourceNames": "(u'PC-01.DOMAIN.COM',)",
            "PrimaryGroupID": "515",
            "ClientVersion": "None",
            "ClientType": "None",
            "PreviousSMSUUID": "None",
            "ResourceId": "2097152157",
            "IPv6Prefixes": "()",
            "ObjectGUID": "(189, 112, 106, 52, 65, 87, 150, 71, 166, 96, 209, 16, 161, 133, 38, 242)",
            "SMSAssignedSites": "(u'001',)",
            "SMSResidentSites": "(u'001',)",
            "IsPortableOperatingSystem": "None",
            "MDMComplianceStatus": "None",
            "WTGUniqueKey": "None",
            "AMTStatus": "None",
            "SystemGroupName": "()",
            "AgentName": "(u'SMS_AD_SYSTEM_DISCOVERY_AGENT',)",
            "Active": "None",
            "SNMPCommunityName": "None",
            "ADSiteName": "Default-First-Site-Name",
            "IsClientAMT30Compatible": "None",
            "IsVirtualMachine": "None",
            "AlwaysInternet": "None",
            "Decommissioned": "0",
            "Name": "PC-01",
            "SystemOUName": "()",
            "SuppressAutoProvision": "None",
            "SMSUniqueIdentifier": "None",
            "ResourceDomainORWorkgroup": "DOMAIN",
            "UserAccountControl": "4096",
            "LastLogonTimestamp": "20190203084427.000000+***",
            "AMTFullVersion": "None",
            "OperatingSystemNameandVersion": "Microsoft Windows NT Workstation 10.0", "PublisherDeviceID": "None",
            "SystemContainerName": "(u'DOMAIN\\\\\\\\COMPUTERS',)",
            "LastLogonUserName": "None",
            "InternetEnabled": "None",
            "SMSUUIDChangeDate": "None",
            "AgentTime": "(u'20190207115148.000000+***',)",
            "IsAssignedToUser": "None",
            "WipeStatus": "None",
            "SecurityGroupName": "()",
            "SystemRoles": "()",
            "DistinguishedName": "CN=PC-01,CN=Computers,DC=DOMAIN,DC=COM",
            "Obsolete": "None",
            "SerialNumber": "None",
            "FullDomainName": "DOMAIN.COM",
            "IsAOACCapable": "None",
            "MACAddresses": "()",
            "IPSubnets": "()",
            "VirtualMachineType": "None",
            "CPUType": "None",
            "CreationDate": "20190128134818.000000+***",
            "VirtualMachineHostName": "None",
            "OSBranch": "None",
            "LastLogonUserDomain": "None"
        },
        "Entity": "PC_01"
    }
]
קיר נרתיקים
סוג התוצאות ערך / תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל ולא אמורה לעצור את ההפעלה של הפלייבוק:

אם חלק מהישויות שסיפקתם או כולן הועשרו:

print "Following entities were enriched with SCCM data:\n {0}".format([entity list])‎

אם חלק מהישויות שסיפקתם לא הועשרו:

print "SCCM data for the following entities was not found:\n {0}".format([entity list])‎

אם אף אחת מהישויות שסיפקתם לא הועשרה:

print "No entities were enriched"‎

הפעולה אמורה להיכשל ולעצור את הפעלת הפלייבוק:

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

print "Failed to connect to the Microsoft SCCM instance! השגיאה היא {0}".format(exception.stacktrace).

כללי
טבלה

שם הטבלה: תוצאות השאילתה של Microsoft SCCM עבור {0}.entity.Identifier

תוכן הטבלה: התוכן דינמי, על סמך תוצאות השאילתה.

ישות

קבלת היסטוריית ההתחברות

תיאור

אחזור של היסטוריית ההתחברות של המשתמש ממכונה של Microsoft SCCM על סמך ישות המשתמש שסופקה ב-Google SecOps.

פרמטרים

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

תרחישים לדוגמה

קבלת פרטי התחברות של משתמשים מ-SCCM בפלייבוק.

ריצה

הפעולה הזו פועלת על הישות "משתמש".

תוצאות הפעולה

העשרת ישויות
שם שדה ההעשרה לוגיקה – מתי להחיל
שם משתמש הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
LoginCount הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
LastLoggedIn הפונקציה מחזירה את הערך אם הוא קיים בתוצאת ה-JSON
תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות של ערכים דוגמה
is_success נכון/לא נכון is_success:False
תוצאת JSON
[
    {
        "EntityResult": [
            {
                "Username": "pc-01\\\\local_users",
                "LoginCount": 22,
                "LastLoggedIn": "20170815103710.000000+***"
            }
        ],
        "Entity": "pc-01"
    }
]
קיר נרתיקים
סוג התוצאות ערך / תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל ולא אמורה לעצור את ההפעלה של הפלייבוק:

אם קיבלתם נתונים לגבי חלק מהישויות שציינתם או לגבי כולן:

print "Found SCCM information on the following entities;:\n {0}".format([entity list])‎

אם חלק מהישויות שסופקו לא נמצאו ב-SCCM:

print "SCCM data for the following entities was not found:\n {0}".format([entity list])‎

אם לא נמצאו נתונים לכל הישויות שצוינו:

print "No results were found."‎

הפעולה אמורה להיכשל ולעצור את הפעלת הפלייבוק:

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

print "Failed to connect to the Microsoft SCCM instance! השגיאה היא {0}".format(exception.stacktrace).

כללי
טבלה

שם הטבלה: היסטוריית ההתחברות ל-Microsoft SCCM של {0}.format(entity.Identifier)

תוכן הטבלה: התוכן דינמי, על סמך תוצאות השאילתה.

ישות

העשרת ישויות

תיאור

להעשיר ישויות של מארח, כתובת IP או משתמש ב-Google SecOps על סמך המידע מ-Microsoft SCCM.

פרמטרים

לא רלוונטי

ריצה

הפעולה הזו פועלת על הישויות הבאות:

  • משתמש
  • מארח
  • כתובת IP

תוצאות הפעולה

תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות של ערכים דוגמה
is_success נכון/לא נכון is_success:False
תוצאת JSON

דוגמה לערך שמוחזר לישות Host, הבקשה בוצעה ב-Powershell:

    __GENUS                       : 2
    __CLASS                       : SMS_R_System
    __SUPERCLASS                  : SMS_Resource
    __DYNASTY                     : SMS_BaseClass
    __RELPATH                     : SMS_R_System.ResourceId=16777219
    __PROPERTY_COUNT              : 77
    __DERIVATION                  : {SMS_Resource, SMS_BaseClass}
    __SERVER                      : SCCM-SCCM
    __NAMESPACE                   : ROOT\SMS\site_SCM
    __PATH                        : \\SCCM-SCCM\ROOT\SMS\site_SCM:SMS_R_System.ResourceId=16777219
    AADDeviceID                   : 00000000-0000-0000-0000-000000000000
    AADTenantID                   : 00000000-0000-0000-0000-000000000000
    Active                        : 1
    ADSiteName                    : Default-First-Site-Name
    AgentName                     : {SMS_AD_SYSTEM_DISCOVERY_AGENT, SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT, MP_ClientRegistration, Heartbeat Discovery}
    AgentSite                     : {SCM, SCM, SCM, SCM}
    AgentTime                     : {20200730230502.000000+***, 20200415051330.000000+***, 20200415055902.000000+***, 20200730231034.000000+***}
    AlwaysInternet                : 0
    AMTFullVersion                :
    AMTStatus                     :
    Build                         : 10.0.18363
    BuildExt                      : 10.0.18363.900
    Client                        : 1
    ClientEdition                 : 0
    ClientType                    : 1
    ClientVersion                 : 5.00.8790.1007
    CPUType                       : Intel64 Family 6 Model 63 Stepping 2
    CreationDate                  : 20200415121334.000000+***
    Decommissioned                : 0
    DeviceOwner                   : 1
    DistinguishedName             : CN=SCCM-W10,OU=Workstations,OU=SCCM,DC=sccm-lab,DC=local
    EASDeviceID                   :
    FullDomainName                : SCCM-LAB.LOCAL
    HardwareID                    : 2:39AC2A8E6794B559B4F8D5677EFE804D834DE6FF
    InternetEnabled               : 0
    IPAddresses                   : {172.30.202.92, fe80::4cca:c991:272d:24c3}
    IPSubnets                     : {172.30.202.0}
    IPv6Addresses                 : {}
    IPv6Prefixes                  : {}
    IsAOACCapable                 : False
    IsAssignedToUser              : False
    IsClientAMT30Compatible       :
    IsMachineChangesPersisted     : True
    IsPortableOperatingSystem     : False
    IsVirtualMachine              : True
    IsWriteFilterCapable          : False
    LastLogonTimestamp            : 20200731060204.000000+***
    LastLogonUserDomain           : SCCM-LAB
    LastLogonUserName             : Administrator
    MACAddresses                  : {00:50:56:A2:D7:A8}
    ManagementAuthority           : 0
    MDMComplianceStatus           :
    MDMDeviceCategoryID           :
    Name                          : SCCM-W10
    NetbiosName                   : SCCM-W10
    ObjectGUID                    : {230, 152, 150, 13...}
    Obsolete                      : 0
    OperatingSystemNameandVersion : Microsoft Windows NT Workstation 10.0
    OSBranch                      : 0
    PreviousSMSUUID               : Unknown
    PrimaryGroupID                : 515
    PublisherDeviceID             :
    ResourceDomainORWorkgroup     : SCCM-LAB
    ResourceId                    : 16777219
    ResourceNames                 : {SCCM-W10.sccm-lab.local}
    ResourceType                  : 5
    SecurityGroupName             : {SCCM-LAB\Domain Computers}
    SerialNumber                  :
    SID                           : S-1-5-21-3004247314-75612377-2250890222-1104
    SMBIOSGUID                    : 8ABD2242-1FEF-CCCE-12F5-77021D40BE0E
    SMSAssignedSites              : {SCM}
    SMSInstalledSites             : {SCM}
    SMSResidentSites              : {SCM}
    SMSUniqueIdentifier           : GUID:778CB685-B19A-40CD-9257-E9883A0E4AD3
    SMSUUIDChangeDate             : 20200701090912.000000+***
    SNMPCommunityName             :
    SuppressAutoProvision         :
    SystemContainerName           : {}
    SystemGroupName               : {SCCM-LAB\Domain Computers}
    SystemOUName                  : {SCCM-LAB.LOCAL/SCCM, SCCM-LAB.LOCAL/SCCM/WORKSTATIONS}
    SystemRoles                   : {}
    Unknown                       :
    UserAccountControl            : 4096
    VirtualMachineHostName        :
    VirtualMachineType            : 0
    WipeStatus                    :
    WTGUniqueKey                  :
    PSComputerName                : SCCM-SCCM

קיר נרתיקים
סוג התוצאות ערך / תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל ולא אמורה לעצור את ההפעלה של הפלייבוק:

אם חלק מהישויות שסופקו או כולן הועשרו: "Following entities were enriched with SCCM data:\n {0}".format([entity list])‎

אם חלק מהישויות שסופקו לא הועשרו: "SCCM data for the following entities were not found:\n {0}".format([entity list])‎

אם אף אחת מהישויות שסופקו לא הועשרה: "אף ישות לא הועשרה"

הפעולה אמורה להיכשל ולעצור את הפעלת הפלייבוק:

אם יש שגיאה קריטית, כמו פרטי כניסה שגויים או בעיות בקישוריות לרשת: "החיבור למופע של Microsoft SCCM נכשל. השגיאה היא {0}".format(exception.stacktrace).

כללי
טבלה

שם הטבלה: תוצאות העשרת הנתונים של Microsoft SCCM עבור {0}.format(entity.Identifier)

תוכן הטבלה: התוכן הוא דינמי, על סמך תוצאות השאילתה.

ישות

הרצת שאילתת WQL

תיאור

הרצת שאילתה שרירותית של Windows Management Instrumentation Query Language‏ (WQL) במכונה של Microsoft SCCM.

פרמטרים

שם הפרמטר לתצוגה סוג ערך ברירת המחדל חובה תיאור
השאילתה להרצה String SELECT UniqueUserName,LastLoginTime,LoginCount,ResourceName from SMS_UserMachineIntelligence JOIN SMS_R_User ON SMS_UserMachineIntelligence.UniqueUserName = SMS_R_User.UniqueUserName WHERE SMS_R_User.UserPrincipalName = "sccm_user@sccm-domain.com" כן מציינים את שאילתת ה-WQL שרוצים להריץ. כדאי לעיין בבקשה לדוגמה שמוגדרת כברירת מחדל.
מספר הרשומות שיוחזרו מספר שלם 100 כן המספר המקסימלי של רשומות שיוחזרו בפעולה.

תרחישים לדוגמה

להריץ שאילתות שרירותיות על מכונות של Microsoft SCCM כדי לקבל את הנתונים הדרושים על סמך ניתוח התראות ב-Google SecOps.

ריצה

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

תוצאות הפעולה

תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות של ערכים דוגמה
is_success נכון/לא נכון is_success:False
תוצאת JSON

דוגמה לערך שמוחזר לישות Host, הבקשה בוצעה ב-Powershell:

    __GENUS                       : 2
    __CLASS                       : SMS_R_System
    __SUPERCLASS                  : SMS_Resource
    __DYNASTY                     : SMS_BaseClass
    __RELPATH                     : SMS_R_System.ResourceId=16777219
    __PROPERTY_COUNT              : 77
    __DERIVATION                  : {SMS_Resource, SMS_BaseClass}
    __SERVER                      : SCCM-SCCM
    __NAMESPACE                   : ROOT\SMS\site_SCM
    __PATH                        : \\SCCM-SCCM\ROOT\SMS\site_SCM:SMS_R_System.ResourceId=16777219
    AADDeviceID                   : 00000000-0000-0000-0000-000000000000
    AADTenantID                   : 00000000-0000-0000-0000-000000000000
    Active                        : 1
    ADSiteName                    : Default-First-Site-Name
    AgentName                     : {SMS_AD_SYSTEM_DISCOVERY_AGENT, SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT, MP_ClientRegistration, Heartbeat Discovery}
    AgentSite                     : {SCM, SCM, SCM, SCM}
    AgentTime                     : {20200730230502.000000+***, 20200415051330.000000+***, 20200415055902.000000+***, 20200730231034.000000+***}
    AlwaysInternet                : 0
    AMTFullVersion                :
    AMTStatus                     :
    Build                         : 10.0.18363
    BuildExt                      : 10.0.18363.900
    Client                        : 1
    ClientEdition                 : 0
    ClientType                    : 1
    ClientVersion                 : 5.00.8790.1007
    CPUType                       : Intel64 Family 6 Model 63 Stepping 2
    CreationDate                  : 20200415121334.000000+***
    Decommissioned                : 0
    DeviceOwner                   : 1
    DistinguishedName             : CN=SCCM-W10,OU=Workstations,OU=SCCM,DC=sccm-lab,DC=local
    EASDeviceID                   :
    FullDomainName                : SCCM-LAB.LOCAL
    HardwareID                    : 2:39AC2A8E6794B559B4F8D5677EFE804D834DE6FF
    InternetEnabled               : 0
    IPAddresses                   : {172.30.202.92, fe80::4cca:c991:272d:24c3}
    IPSubnets                     : {172.30.202.0}
    IPv6Addresses                 : {}
    IPv6Prefixes                  : {}
    IsAOACCapable                 : False
    IsAssignedToUser              : False
    IsClientAMT30Compatible       :
    IsMachineChangesPersisted     : True
    IsPortableOperatingSystem     : False
    IsVirtualMachine              : True
    IsWriteFilterCapable          : False
    LastLogonTimestamp            : 20200731060204.000000+***
    LastLogonUserDomain           : SCCM-LAB
    LastLogonUserName             : Administrator
    MACAddresses                  : {00:50:56:A2:D7:A8}
    ManagementAuthority           : 0
    MDMComplianceStatus           :
    MDMDeviceCategoryID           :
    Name                          : SCCM-W10
    NetbiosName                   : SCCM-W10
    ObjectGUID                    : {230, 152, 150, 13...}
    Obsolete                      : 0
    OperatingSystemNameandVersion : Microsoft Windows NT Workstation 10.0
    OSBranch                      : 0
    PreviousSMSUUID               : Unknown
    PrimaryGroupID                : 515
    PublisherDeviceID             :
    ResourceDomainORWorkgroup     : SCCM-LAB
    ResourceId                    : 16777219
    ResourceNames                 : {SCCM-W10.sccm-lab.local}
    ResourceType                  : 5
    SecurityGroupName             : {SCCM-LAB\Domain Computers}
    SerialNumber                  :
    SID                           : S-1-5-21-3004247314-75612377-2250890222-1104
    SMBIOSGUID                    : 8ABD2242-1FEF-CCCE-12F5-77021D40BE0E
    SMSAssignedSites              : {SCM}
    SMSInstalledSites             : {SCM}
    SMSResidentSites              : {SCM}
    SMSUniqueIdentifier           : GUID:778CB685-B19A-40CD-9257-E9883A0E4AD3
    SMSUUIDChangeDate             : 20200701090912.000000+***
    SNMPCommunityName             :
    SuppressAutoProvision         :
    SystemContainerName           : {}
    SystemGroupName               : {SCCM-LAB\Domain Computers}
    SystemOUName                  : {SCCM-LAB.LOCAL/SCCM, SCCM-LAB.LOCAL/SCCM/WORKSTATIONS}
    SystemRoles                   : {}
    Unknown                       :
    UserAccountControl            : 4096
    VirtualMachineHostName        :
    VirtualMachineType            : 0
    WipeStatus                    :
    WTGUniqueKey                  :
    PSComputerName                : SCCM-SCCM

קיר נרתיקים
סוג התוצאות ערך / תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל ולא אמורה לעצור את ההפעלה של הפלייבוק:

אם השאילתה הצליחה והתקבלו נתונים:

print "Query executed successfully and returned results".‎

אם לא נמצאו תוצאות:

print "Query executed successfully, but did not return any results.".‎

אם יש שגיאה:

print "Query didn't complete due to error: {0}".format(exception.stacktrace).‎

אם תוצאות השאילתה נחתכו:

print "Query results exceeded limits and were truncated!".‎

הפעולה אמורה להיכשל ולעצור את הפעלת הפלייבוק:

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

print "Failed to connect to the Microsoft SCCM instance! השגיאה היא {0}".format(exception.stacktrace).

כללי
טבלה

שם הטבלה: תוצאות של שאילתת WQL

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

כללי
קבצים מצורפים ‫Run_WQL_query_response.json – מכיל נתונים טכניים בפורמט JSON שהוחזרו על ידי הפעולה. כללי
מציג JSON הצגת ה-JSON של תוצאת השאילתה. כללי

יצירת משימה של נקודת קצה לסריקה

תיאור

יצירת משימה לסריקת נקודת קצה בשרת Microsoft SCCM לנקודת קצה. יש שני סוגים של סריקות: מלאה או מהירה. הפעולה פועלת עם ישויות של מארח או של כתובת IP ב-Google SecOps.

פרמטרים

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

ריצה

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

תוצאות הפעולה

תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות של ערכים דוגמה
is_success נכון/לא נכון is_success:False
קיר נרתיקים
סוג התוצאות ערך / תיאור סוג
הודעת פלט\*

הפעולה לא אמורה להיכשל ולא אמורה לעצור את ההפעלה של הפלייבוק:

אם המשימה נוצרה בהצלחה לחלק מהישויות שצוינו או לכולן: "משימת הסריקה של נקודת הקצה נוצרה לישויות הבאות:\n {0}".format([entity list])‎

אם לא הצלחנו ליצור משימה של נקודת קצה לסריקה כי חלק מהישויות שסופקו לא הועשרו: "Failed to create scan endpoint task for the following entities:\n {0}".format([entity list])‎

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

הפעולה אמורה להיכשל ולעצור את הפעלת הפלייבוק:

אם יש שגיאה קריטית, כמו פרטי כניסה שגויים או בעיות בקישוריות לרשת: "החיבור למופע של Microsoft SCCM נכשל. השגיאה היא {0}".format(exception.stacktrace).

כללי

פינג

תיאור

בודקים את הקישוריות למכונה של Microsoft SCCM באמצעות הפרמטרים שמופיעים בדף הגדרת השילוב בדף Google SecOps Content Hub.

פרמטרים

לא רלוונטי

תרחישים לדוגמה

הפעולה משמשת לבדיקת הקישוריות בדף הגדרת השילוב ב-Google SecOps Content Hub, ואפשר לבצע אותה כפעולה ידנית שלא נכללת בפלייבוקים.

ריצה

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

תוצאות הפעולה

תוצאת הסקריפט
שם תוצאת הסקריפט אפשרויות של ערכים דוגמה
is_succeed נכון/לא נכון is_succeed:False

קיר נרתיקים

סוג התוצאות ערך / תיאור סוג
הודעת פלט*

הפעולה לא אמורה להיכשל ולא אמורה לעצור את ההפעלה של הפלייבוק:

אם החיבור הצליח: "החיבור למכונה של Microsoft SCCM בוצע בהצלחה באמצעות פרמטרי החיבור שסופקו".

הפעולה אמורה להיכשל ולעצור את הפעלת הפלייבוק:

אם התגובה נכשלה: "Failed to connect to the Microsoft SCCM instance!‎ השגיאה היא {0}".format(exception.stacktrace).

כללי

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