收集 Microsoft Entra ID (原稱 Azure Active Directory) 登入記錄

剖析器版本:26.0

支援的國家/地區:

本文說明如何設定 Google Security Operations 資訊提供,以收集 Microsoft Entra ID (原稱 Azure Active Directory) 登入記錄。您可以透過兩種方法設定擷取作業:Azure 事件中樞 (建議使用) 或第三方 API。

事前準備

請確認您已完成下列事前準備事項:

  • Google SecOps 執行個體。
  • Microsoft Azure 入口網站的特殊權限存取權。
  • Microsoft Entra ID 中的安全管理員或全域管理員角色 (診斷設定的必要條件)。
  • 如果是第三方 API 方法,請使用下列其中一個角色授予管理員同意聲明:
    • 全域管理員:可為任何 API 授予任何權限的同意聲明。
    • 具備特殊權限的角色管理員:可為任何 API 授予任何權限的同意聲明。
    • Cloud 應用程式管理員:可授予任何 API 的任何權限,但 Microsoft Graph 應用程式角色 (應用程式權限) 除外。

這個方法會使用診斷設定,透過 Azure 事件中樞串流 Microsoft Entra ID 登入記錄。Google SecOps 會使用 Azure 事件中樞動態饋給類型,直接從事件中樞擷取記錄。

建立 Event Hubs 命名空間

事件中樞命名空間是管理容器,可容納一或多個事件中樞。

  1. Azure 入口網站中,搜尋 Event Hubs
  2. 點選「+ 建立」
  3. 請提供下列設定詳細資料:

    設定
    訂閱項目 選取 Azure 訂閱項目
    資源群組 選取現有資料庫或建立新資料庫
    命名空間名稱 輸入不重複的名稱 (例如 secops-entraid-signin)
    位置 選取最接近 Microsoft Entra 租戶的區域
    定價方案 標準 (建議用於正式環境)
    處理量單位 從 1 開始,啟用自動增加功能 (建議)
  4. 按一下「Review + create」

  5. 查看總覽,然後按一下「建立」

  6. 等待部署作業完成 (1 到 2 分鐘)。

建立事件中樞

  1. 部署命名空間後,請前往 Event Hub 命名空間。
  2. 在左側導覽面板中,選取「實體」下方的「事件中樞」
  3. 按一下「+ Event Hub」
  4. 請提供下列設定詳細資料:

    設定
    名稱 輸入不重複的名稱 (例如 entraid-signin-logs)
    分區數量 40 (建議使用,可發揮 Google SecOps 的最大效益)
    訊息保留時間 7 天 (建議至少)
    擷取 已停用 (Google SecOps 不需要)
  5. 點選「建立」

取得事件中樞連線字串

Google SecOps 需要連線字串,才能向事件中樞驗證。

  1. 前往 Event Hub 命名空間
  2. 在左側導覽中,選取「設定」下方的「共用存取權政策」
  3. 按一下預設政策「RootManageSharedAccessKey」RootManageSharedAccessKey
  4. 複製「連線字串 - 主鍵」
  5. 請妥善儲存這個連線字串。
  • 範例:

    Original: Endpoint=sb://secops-entraid-signin.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=abc123==;EntityPath=entraid-signin-logs
    
    Remove EntityPath: Endpoint=sb://secops-entraid-signin.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=abc123==
    

選項 B:事件中樞層級的連線字串

  1. 前往「Event Hub」(不是命名空間)。
  2. 在左側導覽中,選取「設定」下方的「共用存取權政策」
  3. 按一下「+ 新增」建立新政策。
  4. 請提供下列設定詳細資料:
    • 政策名稱:輸入描述性名稱 (例如 chronicle-read)
    • 權限:僅選取「收聽」 (唯讀存取權)
  5. 點選「建立」
  6. 按一下新建立的政策。
  7. 複製「連線字串 - 主鍵」
  8. 請妥善儲存這個連線字串。

設定 Microsoft Entra ID 診斷設定

  1. 以至少安全性管理員身分登入 Microsoft Entra 系統管理中心
  2. 依序前往「Entra ID」>「監控與健康狀態」>「診斷設定」
  3. 按一下「+ 新增診斷設定」
  4. 請提供下列設定詳細資料:
    • 診斷設定名稱:輸入描述性名稱 (例如 signin-logs-to-eventhub)。
    • 在「記錄」部分,選取要匯出的登入記錄類別:
      • SignInLogs:互動式使用者登入。
      • NonInteractiveUserSignInLogs:非互動式使用者登入 (建議)。
      • ServicePrincipalSignInLogs:服務主體登入 (選用)。
      • ManagedIdentitySignInLogs:受管理的身分登入記錄 (選用)。
      • ADFSSignInLogs:AD FS 登入記錄 (選用,如果使用 AD FS)。
      • RiskyUsers:由 Microsoft Entra ID Protection 標示為有風險的使用者 (選用)。
      • UserRiskEvents:有風險的登入事件詳細資料 (選用)。
    • 在「目的地詳細資料」部分,選取「將資料串流至事件中樞」
    • 「Subscription」(訂閱項目):選取包含 Event Hub 命名空間的訂閱項目。
    • 事件中樞命名空間:選取您建立的命名空間 (例如 secops-entraid-signin)。
    • 事件中樞名稱:選取您建立的事件中樞 (例如 entraid-signin-logs)。
    • 事件中樞政策名稱:選取「RootManageSharedAccessKey」
  5. 按一下 [儲存]

(選用) 設定 Azure Blob 儲存體以進行檢查點作業

Google SecOps 可使用 Azure Blob Storage 儲存事件中樞檢查點,追蹤已處理的事件。如果動態饋給暫時中斷,可避免重複擷取資料。

建立檢查點的儲存空間帳戶

  1. Azure 入口網站中,搜尋「儲存體帳戶」
  2. 點選「+ 建立」
  3. 請提供下列設定詳細資料:

    設定
    訂閱項目 選取 Azure 訂閱項目
    資源群組 使用與事件中樞相同的資源群組
    儲存體帳戶名稱 輸入不重複的名稱 (例如 secopsaadsignin)
    區域 與事件中樞相同的區域
    效能 標準
    備援功能 LRS (本地備援儲存體)
  4. 按一下「Review + create」

  5. 點選「建立」

建立 Blob 容器

  1. 前往您建立的儲存空間帳戶。
  2. 在左側導覽中,選取「資料儲存」下方的「容器」
  3. 按一下「+ 容器」
  4. 請提供下列設定詳細資料:
    • 「Name」(名稱):輸入 checkpoints
    • 公開存取層級:私人 (不允許匿名存取)
  5. 點選「建立」

取得儲存空間帳戶憑證

  1. 在儲存空間帳戶中,選取「安全性 + 網路」下方的「存取金鑰」
  2. 按一下「顯示金鑰」
  3. 複製並儲存:
    • 儲存體帳戶名稱:儲存體帳戶的名稱。
    • 金鑰 1:存取金鑰值。

(選用) 建立專屬的消費者群組

根據預設,事件中樞會提供名為 $Default 的消費者群組。如果是正式環境,建議為 Google SecOps 建立專屬的消費者群組。

  1. 前往「Event Hub」(不是命名空間)。
  2. 在左側導覽面板中,選取「實體」下方的「消費者群組」
  3. 按一下「+ 消費者群組」
  4. 請提供下列設定詳細資料:
    • 名稱:輸入描述性名稱 (例如 chronicle)
  5. 點選「建立」

在 Google SecOps 中設定動態饋給,以便擷取 Microsoft Entra ID 登入記錄

  1. 依序前往「SIEM 設定」>「動態饋給」
  2. 按一下「新增動態消息」
  3. 在下一個頁面中,按一下「設定單一動態饋給」
  4. 在「動態饋給名稱」欄位中輸入動態饋給名稱 (例如 Microsoft Entra ID Sign-In Logs - Event Hub)。
  5. 選取「Microsoft Azure Event Hub」做為「來源類型」
  6. 選取「Microsoft Azure AD」做為「記錄類型」
  7. 點選「下一步」
  8. 指定下列輸入參數的值:

    • 事件中樞連線字串:輸入您先前擷取的事件中樞連線字串。

    如果使用命名空間層級的連線字串:

    • 請確認您已移除 EntityPath 參數。
    • 您也必須在下一個欄位中提供事件中樞名稱

    如果使用事件中心層級的連線字串:

    • 請直接使用連線字串 (包括 EntityPath)。
    • 「事件中樞名稱」欄位可以留空。

      • 事件中樞名稱:輸入事件中樞名稱 (例如 entraid-signin-logs)。

      如果使用命名空間層級的連線字串,則為必要項目。如果使用事件中樞層級的連線字串,則為選用屬性

    • 消費者群組 (選用):輸入消費者群組名稱。

    • 如要使用預設的$Default消費者群組,請留空。

    • 如果您建立了專屬的消費者版群組,請輸入群組名稱 (例如 chronicle)。

    • Blob 儲存體容器名稱 (選用):如要檢查點,請輸入容器名稱 (例如 checkpoints)。

    如果提供 Blob 儲存空間做為檢查點:

    • Azure 儲存體帳戶名稱:輸入檢查點設定中的儲存體帳戶名稱。
    • Azure 儲存體帳戶金鑰:輸入檢查點設定中的存取金鑰。

    • 資產命名空間資產命名空間

    • 擷取標籤:要套用至這個動態饋給事件的標籤。

  9. 點選「下一步」

  10. 在「Finalize」(完成) 畫面中檢查新的動態饋給設定,然後按一下「Submit」(提交)

方法 2:第三方 API

這個方法會使用 Microsoft Graph API,直接從 Microsoft 租戶擷取 Microsoft Entra ID 登入記錄。

設定 IP 許可清單

建立動態饋給前,請務必在 Microsoft Azure 網路設定或條件存取政策中,將 Google SecOps IP 範圍加入允許清單。

取得 Google SecOps IP 範圍

  1. 依序前往「SIEM 設定」>「動態饋給」
  2. 按一下「新增動態消息」
  3. 請注意動態饋給建立介面中顯示的 IP 範圍。
  4. 或者,您也可以使用 Feed Management API,透過程式擷取 IP 範圍。

設定工作負載身分的條件式存取權 (如有需要)

如果貴機構使用條件存取政策,限制存取位置:

  1. Microsoft Entra 系統管理中心,依序前往「Protection」(保護) >「Conditional Access」(條件式存取) >「Named locations」(具名位置)
  2. 按一下「+ 新增地點」
  3. 請提供下列設定詳細資料:
    • 「Name」(名稱):輸入 Google SecOps IP Ranges
    • 標示為信任地點:視您的安全政策而定。
    • IP 範圍:以 CIDR 標記法新增每個 Google SecOps IP 範圍。
  4. 點選「建立」
  5. 前往「條件存取」>「原則」
  6. 如要為工作負載身分套用任何政策,請為名為 Google SecOps IP Ranges 的位置或特定服務主體設定排除條件。

設定 Microsoft Entra ID API 存取權

建立應用程式註冊

  1. 登入 Microsoft Entra 系統管理中心Azure 入口網站
  2. 依序前往「身分識別」>「應用程式」>「應用程式註冊」
  3. 按一下 [新增註冊]
  4. 請提供下列設定詳細資料:

    • 名稱:輸入描述性名稱 (例如 Google SecOps Sign-In Logs Integration)。
    • 支援的帳戶類型:選取「Accounts in this organizational directory only (Single tenant)」
    • 重新導向 URI:留空 (服務主體驗證不需要)。
  5. 按一下「註冊」

  6. 註冊後,請複製並儲存下列值:

    • 應用程式 (用戶端) ID
    • 目錄 (租戶) ID

設定 API 權限

整合作業需要下列 Microsoft Graph 應用程式權限:

  1. 在應用程式註冊中,前往「API permissions」
  2. 按一下「新增權限」
  3. 依序選取「Microsoft Graph」>「應用程式權限」
  4. 選取下列權限:
    • AuditLog.Read.All:讀取登入記錄時必須具備這項權限。
    • Directory.Read.All:Microsoft Graph API 需要這項權限,才能存取登入記錄 (已知問題)。
    • SecurityEvents.Read.All:Google Security Operations 必須具備這項權限。
  5. 按一下「Add permissions」。
  6. 按一下「Grant admin consent for [Your Organization]」
  7. 確認「狀態」欄中,這三項權限都顯示「已授予『[您的機構]』」
權限 類型 說明
AuditLog.Read.All 應用程式 讀取所有登入和稽核記錄資料
Directory.Read.All 應用程式 讀取目錄資料 (存取 API 時必須具備這項權限)
SecurityEvents.Read.All 應用程式 讀取安全性事件

建立用戶端密鑰

  1. 前往「Certificates & secrets」
  2. 按一下 [新增用戶端密碼]
  3. 請提供下列設定詳細資料:

    • 說明:輸入描述性名稱 (例如 Google SecOps Feed)。
    • 到期:選取到期時間。
  4. 按一下「新增」。

  5. 重要事項:請立即複製用戶端密鑰。這個值只會顯示一次,之後便無法擷取。

建立動態饋給前請先驗證 API 存取權

建立 Google SecOps 資訊提供前,請先確認服務主體可以順利驗證及存取 Microsoft Graph API。

  • 使用 PowerShell 測試驗證

    # Replace with your actual values
    $tenantId = "your-tenant-id"
    $clientId = "your-client-id"
    $clientSecret = "your-client-secret"
    
    # Token request parameters (must be lowercase)
    $tokenBody = @{
        grant_type    = "client_credentials"
        client_id     = $clientId
        client_secret = $clientSecret
        scope         = "https://graph.microsoft.com/.default"
    }
    
    # Request access token
    $tokenEndpoint = "https://login.microsoftonline.com/$tenantId/oauth2/v2.0/token"
    $tokenResponse = Invoke-RestMethod -Method Post -Uri $tokenEndpoint -Body $tokenBody -ContentType "application/x-www-form-urlencoded"
    
    if ($tokenResponse.access_token) {
        Write-Host "✓ Successfully obtained access token" -ForegroundColor Green
    
        # Test API call to sign-ins endpoint
        $apiUrl = "https://graph.microsoft.com/v1.0/auditLogs/signIns?`$top=1"
        $headers = @{
            Authorization = "Bearer $($tokenResponse.access_token)"
        }
    
        try {
            $signInResponse = Invoke-RestMethod -Method Get -Uri $apiUrl -Headers $headers
            Write-Host "✓ Successfully accessed sign-ins API" -ForegroundColor Green
            Write-Host "Sample sign-in log retrieved successfully" -ForegroundColor Green
        }
        catch {
            Write-Host "✗ Failed to access sign-ins API" -ForegroundColor Red
            Write-Host "Error: $($_.Exception.Message)" -ForegroundColor Red
        }
    }
    else {
        Write-Host "✗ Failed to obtain access token" -ForegroundColor Red
    }
    
    • 預期輸出內容:

      ✓ Successfully obtained access token
      ✓ Successfully accessed sign-ins API
      Sample sign-in log retrieved successfully
      
  • 使用 curl 測試驗證

    # Replace with your actual values
    TENANT_ID="your-tenant-id"
    CLIENT_ID="your-client-id"
    CLIENT_SECRET="your-client-secret"
    
    # Request access token
    curl -X POST "https://login.microsoftonline.com/$TENANT_ID/oauth2/v2.0/token" \
    -H "Content-Type: application/x-www-form-urlencoded" \
    -d "grant_type=client_credentials" \
    -d "client_id=$CLIENT_ID" \
    -d "client_secret=$CLIENT_SECRET" \
    -d "scope=https://graph.microsoft.com/.default"
    
    # Test API access
    curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
    "https://graph.microsoft.com/v1.0/auditLogs/signIns?\$top=1"
    

在 Google SecOps 中設定動態饋給,以便擷取 Microsoft Entra ID 登入記錄

設定動態饋給

  1. 依序前往「SIEM 設定」>「動態饋給」
  2. 按一下「新增動態消息」
  3. 在下一個頁面中,按一下「設定單一動態饋給」
  4. 在「動態饋給名稱」欄位中輸入動態饋給名稱 (例如 Microsoft Entra ID Sign-In Logs)。
  5. 選取「第三方 API」做為「來源類型」
  6. 選取「Microsoft Azure AD」做為「記錄類型」
  7. 點選「下一步」

設定動態饋給參數

指定下列輸入參數的值:

  • OAuth 用戶端 ID:應用程式註冊時獲得的應用程式 (用戶端) ID。
  • OAuth 用戶端密鑰:您先前複製的用戶端密鑰值。
  • 租戶 ID:應用程式註冊時取得的 Microsoft 租戶 ID (UUID 格式,例如 0fc279f9-fe30-41be-97d3-abe1d7681418)。
  • API 完整路徑:Microsoft Graph REST API 端點網址:

    graph.microsoft.com/v1.0/auditLogs/signIns
    
  • API 驗證端點:Microsoft Active Directory 驗證端點:

    login.microsoftonline.com
    
  • 進階選項:

    • 動態饋給名稱:系統預先填入的值,用於識別動態饋給。
    • 來源類型:第三方 API (將記錄收集到 Google SecOps 的機制)。
    • 資產命名空間:動態饋給將與這個資產命名空間建立關聯。
    • 擷取標籤:標籤會加到這個動態饋給的所有事件。
  1. 點選「下一步」
  2. 在「Finalize」(完成) 畫面中檢查新的動態饋給設定,然後按一下「Submit」(提交)

地區端點

如要在主權雲端中部署 Microsoft Entra ID,請使用適當的區域端點:

雲端環境 API 完整路徑 API 驗證端點
全球 graph.microsoft.com/v1.0/auditLogs/signIns login.microsoftonline.com
美國政府 L4 graph.microsoft.us/v1.0/auditLogs/signIns login.microsoftonline.us
美國政府 L5 (國防部) dod-graph.microsoft.us/v1.0/auditLogs/signIns login.microsoftonline.us
中國 (21Vianet) microsoftgraph.chinacloudapi.cn/v1.0/auditLogs/signIns login.chinacloudapi.cn

UDM 對應表

記錄欄位 UDM 對應 邏輯
activityDateTime principal.event_timestamp activityDateTime 欄位剖析。如果欄位不是預期的「yyyy-MM-ddTHH:mm:ss.SSSZ」或「ISO8601」格式,剖析器會嘗試其他格式,例如「MM/dd/yyyy HH:mm:ss A」或「MM/d/yyyy HH:mm:ss A」。
activityDisplayName security_result.summary 直接對應自 activityDisplayName
additionalDetails.0.value network.http.user_agent 直接對應自 additionalDetails.0.value
additionalDetails.1.key target.resource.attribute.labels.key 直接對應自 additionalDetails.1.key
additionalDetails.1.value target.resource.attribute.labels.value 直接對應自 additionalDetails.1.value
additionalInfo.[].Key network.http.user_agenttarget.url 如果 KeyuserAgent,請將 Value 對應至 network.http.user_agentnetwork.http.parsed_user_agent。如果 KeyalertUrl,請將 Value 對應至 target.url
additionalInfo.[].Value network.http.user_agenttarget.url 如果 KeyuserAgent,請將 Value 對應至 network.http.user_agentnetwork.http.parsed_user_agent。如果 KeyalertUrl,請將 Value 對應至 target.url
am_category metadata.description 直接對應自 am_category
am_tenantId metadata.product_deployment_id 直接對應自 am_tenantId
appId target.resource.attribute.labels.value 直接從 appId 對應,標籤鍵為「應用程式 ID」。
appDisplayName target.application 直接對應自 appDisplayName
appliedConditionalAccessPolicies.[].displayName security_result.[].rule_nameabout.[].user.user_display_name 直接對應自 appliedConditionalAccessPolicies.[].displayName
appliedConditionalAccessPolicies.[].enforcedGrantControls security_result.[].rule_labels.value 直接從 appliedConditionalAccessPolicies.[].enforcedGrantControls 對應,標籤鍵為「applied_conditional_access_policies_enforced_grant_controls」。
appliedConditionalAccessPolicies.[].enforcedSessionControls security_result.[].rule_labels.value 直接從 appliedConditionalAccessPolicies.[].enforcedSessionControls 對應,標籤鍵為「applied_conditional_access_policies_enforced_session_controls」。
appliedConditionalAccessPolicies.[].id security_result.[].rule_idabout.[].user.userid 直接對應自 appliedConditionalAccessPolicies.[].id
appliedConditionalAccessPolicies.[].result security_result.[].detection_fields.valueabout.[].labels.value 直接從 appliedConditionalAccessPolicies.[].result 對應,標籤鍵為「Result」。
authenticationDetails.[].authenticationMethod security_result.[].detection_fields.value 直接從 authenticationDetails.[].authenticationMethod 對應,標籤鍵為「authenticationMethod」。
authenticationDetails.[].authenticationMethodDetail security_result.[].detection_fields.value 直接從 authenticationDetails.[].authenticationMethodDetail 對應,標籤鍵為「authenticationMethodDetail」。
authenticationDetails.[].authenticationStepDateTime security_result.[].detection_fields.value 直接從 authenticationDetails.[].authenticationStepDateTime 對應,標籤鍵為「authenticationStepDateTime」。
authenticationDetails.[].authenticationStepRequirement security_result.[].detection_fields.value 直接從 authenticationDetails.[].authenticationStepRequirement 對應,標籤鍵為「authenticationStepRequirement」。
authenticationDetails.[].authenticationStepResultDetail security_result.[].detection_fields.value 直接從 authenticationDetails.[].authenticationStepResultDetail 對應,標籤鍵為「authenticationStepResultDetail」。
authenticationDetails.[].succeeded security_result.action 如果值為「true」,則為 ALLOW,否則為 BLOCK
authenticationRequirement additional.fields.value.string_value 直接從 authenticationRequirement 對應,標籤鍵為「AuthenticationRequirement」。
authenticationRequirementPolicies.[].detail security_result.detection_fields.value 直接從 authenticationRequirementPolicies.[].detail 對應,標籤鍵為「detail」。
authenticationRequirementPolicies.[].requirementProvider security_result.detection_fields.value 直接從 authenticationRequirementPolicies.[].requirementProvider 對應,標籤鍵為「requirementProvider」。
callerIpAddress principal.ipprincipal.asset.ip 直接對應自 callerIpAddress
category metadata.description 直接對應自 category
clientAppUsed principal.application 直接對應自 clientAppUsed
conditionalAccessStatus additional.fields.value.string_value 直接從 conditionalAccessStatus 對應,標籤鍵為「conditionalAccessStatus」。
correlationId network.session_idsecurity_result.detection_fields.value 直接對應自 correlationId。也可用於 security_result.detection_fields.value,標籤鍵為「CorrelationId」。
createdDateTime when when 欄位是從 createdDateTime 欄位衍生而來。系統會使用 grok 從 createdDateTime 欄位擷取日期和時間,然後合併形成 when 欄位。
deviceDetail.browser network.http.user_agent 直接對應自 deviceDetail.browser
deviceDetail.deviceId principal.asset.asset_idprincipal.asset_id 直接對應至 deviceDetail.deviceId,並加上「裝置 ID:」前置字串。
deviceDetail.displayName principal.asset.hostname 直接對應自 deviceDetail.displayName
deviceDetail.isCompliant principal.asset.attribute.labels.value 直接從 deviceDetail.isCompliant 對應,標籤鍵為「isCompliant」。
deviceDetail.isManaged principal.asset.attribute.labels.value 直接從 deviceDetail.isManaged 對應,標籤鍵為「isManaged」。
deviceDetail.operatingSystem principal.platform_version 直接對應自 deviceDetail.operatingSystem
deviceDetail.trustType principal.asset.attribute.labels.value 直接從 deviceDetail.trustType 對應,標籤鍵為「trustType」。
durationMs additional.fields.value.string_value 直接從 durationMs 對應,標籤鍵為「durationMs」。
event.id - 未按照說明 (第 3 點) 對應。
id metadata.product_log_id 直接對應自 id
identity target.user.user_display_name 如果與 userId 不同且不是電子郵件地址,則直接從 identity 對應。
initiatedBy.user.displayName principal.user.user_display_name 直接對應自 initiatedBy.user.displayName
initiatedBy.user.id principal.user.useridprincipal.user.windows_sid 直接對應自 initiatedBy.user.id
initiatedBy.user.ipAddress principal.ipprincipal.asset.ip 直接對應自 initiatedBy.user.ipAddress
initiatedBy.user.userPrincipalName principal.user.email_addressesprincipal.user.userid 直接對應自 initiatedBy.user.userPrincipalName。如果是電子郵件地址,則會對應至 email_addresses,否則會對應至 userid
Level security_result.severity_detailslevel 直接對應自 Level
level security_result.severity_detailssecurity_result.severity 直接對應自 level。轉換為大寫後,也會對應至 security_result.severity。針對「Information」、「Informational」、「0」、「4」、「Warning」、「1」、「3」、「Error」、「2」和「Critical」值進行特殊處理。
location.city principal.location.city 直接對應自 location.city
location.countryOrRegion principal.location.country_or_region 直接對應自 location.countryOrRegion
location.geoCoordinates.altitude additional.fields.value.string_value 直接從 location.geoCoordinates.altitude 對應,標籤鍵為「location_geoCoordinates_altitude」。
location.geoCoordinates.latitude principal.location.region_latitudeprincipal.location.region_coordinates.latitude 直接對應自 location.geoCoordinates.latitude
location.geoCoordinates.longitude principal.location.region_longitudeprincipal.location.region_coordinates.longitude 直接對應自 location.geoCoordinates.longitude
location.state principal.location.state 直接對應自 location.state
location principal.location.name 直接對應自 location
log_type metadata.log_type 直接對應自 log_type
networkLocationDetails.[].networkNames additional.fields.value.string_value networkLocationDetails.[].networkNames 串連的值,標籤鍵為「networkName {index}」。
networkLocationDetails.[].networkType security_result.detection_fields.valueadditional.fields.value.string_value 直接從 networkLocationDetails.[].networkType 對應,標籤鍵為「networkType」。也用做 additional.fields.value.string_value,標籤鍵為「networkType {index}」。
operationName event_type 如果 operationName 是「登入活動」,則 USER_LOGIN。如果 operationName 是「將成員新增至群組」,則為 USER_CHANGE_PERMISSIONS
operationType security_result.action_details 直接對應自 operationType
properties.activity security_result.summary 直接對應自 properties.activity
properties.activityDateTime when properties.activityDateTime 欄位剖析。如果欄位不是預期的「yyyy-MM-ddTHH:mm:ss.SSSZ」或「ISO8601」格式,剖析器會嘗試其他格式,例如「MM/dd/yyyy HH:mm:ss A」或「MM/d/yyyy HH:mm:ss A」。
properties.activityDisplayName security_result.summary 直接對應自 properties.activityDisplayName
properties.additionalInfo network.http.user_agenttarget.url 剖析為 JSON,如果索引鍵為 userAgent,則將值對應至 network.http.user_agentnetwork.http.parsed_user_agent。如果鍵為 alertUrl,請將對應值對應至 target.url
properties.appliedConditionalAccessPolicies.[].displayName security_result.[].rule_name 直接對應自 properties.appliedConditionalAccessPolicies.[].displayName
properties.appliedConditionalAccessPolicies.[].enforcedGrantControls security_result.[].rule_labels.value 直接從 properties.appliedConditionalAccessPolicies.[].enforcedGrantControls 對應,標籤鍵為「applied_conditional_access_policies_enforced_grant_controls」。
properties.appliedConditionalAccessPolicies.[].enforcedSessionControls security_result.[].rule_labels.value 直接從 properties.appliedConditionalAccessPolicies.[].enforcedSessionControls 對應,標籤鍵為「applied_conditional_access_policies_enforced_session_controls」。
properties.appliedConditionalAccessPolicies.[].id security_result.[].rule_id 直接對應自 properties.appliedConditionalAccessPolicies.[].id
properties.appliedConditionalAccessPolicies.[].result security_result.[].detection_fields.value 直接從 properties.appliedConditionalAccessPolicies.[].result 對應,標籤鍵為「Result」。
properties.appId appId 直接對應自 properties.appId
properties.appDisplayName target.application 直接對應自 properties.appDisplayName
properties.authenticationDetails.[].authenticationMethod security_result.detection_fields.value 直接從 properties.authenticationDetails.[].authenticationMethod 對應,標籤鍵為「authenticationMethod」。
properties.authenticationDetails.[].authenticationMethodDetail security_result.detection_fields.value 直接從 properties.authenticationDetails.[].authenticationMethodDetail 對應,標籤鍵為「authenticationMethodDetail」。
properties.authenticationDetails.[].authenticationStepDateTime security_result.detection_fields.value 直接從 properties.authenticationDetails.[].authenticationStepDateTime 對應,標籤鍵為「authenticationStepDateTime」。
properties.authenticationDetails.[].authenticationStepRequirement security_result.detection_fields.value 直接從 properties.authenticationDetails.[].authenticationStepRequirement 對應,標籤鍵為「authenticationStepRequirement」。
properties.authenticationDetails.[].authenticationStepResultDetail security_result.detection_fields.value 直接從 properties.authenticationDetails.[].authenticationStepResultDetail 對應,標籤鍵為「authenticationStepResultDetail」。
properties.authenticationRequirement additional.fields.value.string_value 直接從 properties.authenticationRequirement 對應,標籤鍵為「AuthenticationRequirement」。
properties.authenticationRequirementPolicies.[].detail security_result.detection_fields.value 直接從 properties.authenticationRequirementPolicies.[].detail 對應,標籤鍵為「detail」。
properties.authenticationRequirementPolicies.[].requirementProvider security_result.detection_fields.value 直接從 properties.authenticationRequirementPolicies.[].requirementProvider 對應,標籤鍵為「requirementProvider」。
properties.clientAppUsed principal.application 直接對應自 properties.clientAppUsed
properties.conditionalAccessStatus additional.fields.value.string_value 直接從 properties.conditionalAccessStatus 對應,標籤鍵為「conditionalAccessStatus」。
properties.crossTenantAccessType additional.fields.value.string_value 直接從 properties.crossTenantAccessType 對應,標籤鍵為「crossTenantAccessType」。
properties.detectedDateTime additional.fields.value.string_value 直接從 properties.detectedDateTime 對應,標籤鍵為「detectedDateTime」。
properties.detectionTimingType additional.fields.value.string_value 直接從 properties.detectionTimingType 對應,標籤鍵為「detectionTimingType」。
properties.homeTenantId additional.fields.value.string_value 直接從 properties.homeTenantId 對應,標籤鍵為「homeTenantId」。
properties.id metadata.product_log_id 直接對應自 properties.id
properties.initiatedBy.user.displayName principal.user.user_display_name 直接對應自 properties.initiatedBy.user.displayName
properties.initiatedBy.user.id principal.user.windows_sid 直接對應自 properties.initiatedBy.user.id
properties.initiatedBy.user.ipAddress principal.ipprincipal.asset.ip 直接對應自 properties.initiatedBy.user.ipAddress
properties.initiatedBy.user.userPrincipalName principal.user.email_addressesprincipal.user.userid 直接對應自 properties.initiatedBy.user.userPrincipalName。如果是電子郵件地址,則會對應至 email_addresses,否則會對應至 userid
properties.ipAddress principal.ipprincipal.asset.ip 直接對應自 properties.ipAddress
properties.isGuest additional.fields.value.string_value 直接從 properties.isGuest 對應,標籤鍵為「isGuest」。
properties.isDeleted additional.fields.value.string_value 直接從 properties.isDeleted 對應,標籤鍵為「isDeleted」。
properties.isProcessing additional.fields.value.string_value 直接從 properties.isProcessing 對應,標籤鍵為「isProcessing」。
properties.lastUpdatedDateTime additional.fields.value.string_value 直接從 properties.lastUpdatedDateTime 對應,標籤鍵為「lastUpdatedDateTime」。
properties.location.city principal.location.city 直接對應自 properties.location.city
properties.location.countryOrRegion principal.location.country_or_region 直接對應自 properties.location.countryOrRegion
properties.location.geoCoordinates.latitude principal.location.region_latitudeprincipal.location.region_coordinates.latitude 直接對應自 properties.location.geoCoordinates.latitude
properties.location.geoCoordinates.longitude principal.location.region_longitudeprincipal.location.region_coordinates.longitude 直接對應自 properties.location.geoCoordinates.longitude
properties.location.state principal.location.state 直接對應自 properties.location.state
properties.networkLocationDetails.[].networkNames additional.fields.value.string_value properties.networkLocationDetails.[].networkNames 串連的值,標籤鍵為「properties networkName {index}」。
properties.networkLocationDetails.[].networkType additional.fields.value.string_value 直接從 properties.networkLocationDetails.[].networkType 對應,標籤鍵為「properties networkType {index}」。
properties.riskEventType additional.fields.value.string_value 直接從 properties.riskEventType 對應,標籤鍵為「riskEventType」。
properties.riskLastUpdatedDateTime additional.fields.value.string_value 直接從 properties.riskLastUpdatedDateTime 對應,標籤鍵為「riskLastUpdatedDateTime」。
properties.riskLevel additional.fields.value.string_value 直接從 properties.riskLevel 對應,標籤鍵為「riskLevel」。
properties.riskLevelDuringSignIn additional.fields.value.string_value 直接從 properties.riskLevelDuringSignIn 對應,標籤鍵為「riskLevelDuringSignIn」。
properties.riskState additional.fields.value.string_value 直接從 properties.riskState 對應,標籤鍵為「riskState」。
properties.riskDetail additional.fields.value.string_value 直接從 properties.riskDetail 對應,標籤鍵為「riskDetail」。
properties.riskType additional.fields.value.string_value 直接從 properties.riskType 對應,標籤鍵為「riskType」。
properties.source additional.fields.value.string_value 直接從 properties.source 對應,標籤鍵為「source」。
properties.targetResources.0.id target.user.product_object_id 直接對應自 properties.targetResources.0.id
properties.targetResources.modifiedProperties.0.newValue target.group.product_object_id 直接對應自 properties.targetResources.modifiedProperties.0.newValue
properties.tokenIssuerType additional.fields.value.string_value 直接從 properties.tokenIssuerType 對應,標籤鍵為「tokenIssuerType」。
properties.userAgent network.http.user_agentnetwork.http.parsed_user_agent 直接對應自 properties.userAgent
properties.userDisplayName target.user.user_display_name 直接對應自 properties.userDisplayName
properties.userId target.user.product_object_id 直接對應自 properties.userId
properties.userPrincipalName target.user.useridtarget.user.email_addresses 直接對應自 properties.userPrincipalName。如果是電子郵件地址,則會對應至 email_addresses,否則會對應至 userid
result security_result.actionsecurity_result.action_details 如果 result 為「success」,則為 ALLOW
resultDescription security_result.description 直接對應自 resultDescription
resultSignature additional.fields.value.string_value 直接從 resultSignature 對應,標籤鍵為「resultSignature」。
resultType security_result.rule_idactionsecurity_result.summary 如果 resultType 為「0」,則 ALLOW 和「Successful login occurred」會顯示。否則為 BLOCK 和「Failed login occurred」。
resourceId target.resource.idtarget.resource.product_object_id 直接對應自 resourceId
resourceDisplayName target.resource.nameappDisplayName 直接對應自 resourceDisplayName
riskDetail additional.fields.value.string_value 直接從 riskDetail 對應,標籤鍵為「riskDetail」。
riskEventTypes.[]. additional.fields.value.string_valueadditional.fields.value.list_value.values.string_value 值會新增至 additional.fields 中,索引鍵為「riskEventTypes」的清單。此外,每個值都會在 additional.fields 中以「riskEventType」做為鍵,新增為個別欄位。
riskEventTypes_v2.[]. additional.fields.value.list_value.values.string_value 值會新增至 additional.fields 中,並以「riskEventTypes_v2」做為鍵。
riskLevelAggregated additional.fields.value.string_value 直接從 riskLevelAggregated 對應,標籤鍵為「riskLevelAggregated」。
riskLevelDuringSignIn additional.fields.value.string_value 直接從 riskLevelDuringSignIn 對應,標籤鍵為「riskLevelDuringSignIn」。
riskState additional.fields.value.string_value 直接從 riskState 對應,標籤鍵為「riskState」。
status.additionalDetails security_result.description 直接對應自 status.additionalDetails
status.errorCode security_result.rule_iderrorCode 直接對應自 status.errorCode
target.displayName resourceDisplayName 直接對應自 target.displayName
target.id resourceId 直接對應自 target.id
target.modifiedProperties.[].displayName target.resource.attribute.labels.key 直接對應自 target.modifiedProperties.[].displayName
target.modifiedProperties.[].newValue target.resource.attribute.labels.valuetarget.resource.product_object_id 直接對應自 target.modifiedProperties.[].newValue
target.modifiedProperties.[].oldValue target.resource.attribute.labels.value 直接對應自 target.modifiedProperties.[].oldValue
target.type target.resource.type 直接對應自 target.type
tenantId metadata.product_deployment_id 直接對應自 tenantId
time when when 欄位是從 time 欄位衍生而來。系統會使用 grok 從 time 欄位擷取日期和時間,然後合併形成 when 欄位。
userAgent network.http.user_agentnetwork.http.parsed_user_agent 直接對應自 userAgent
userDisplayName target.user.user_display_name 直接對應自 userDisplayName
userId target.user.product_object_id 直接對應自 userId
userPrincipalName target.user.useridprincipal.administrative_domaintarget.user.email_addresses 直接對應自 userPrincipalName。如果是電子郵件地址,則會對應至 email_addresses,並擷取網域部分,然後對應至 principal.administrative_domain。否則會對應至 userid
(剖析器邏輯) event.idm.is_alertevent.idm.is_significant 如果層級為「重大」,則設為 true。
(剖析器邏輯) event.idm.read_only_udm.metadata.event_type 如果 has_target_user 為「true」,請設為「USER_LOGIN」。如果 has_principal_user 為「true」,請設為「USER_UNCATEGORIZED」。如果 has_principal 為「true」,請設為「STATUS_UPDATE」。否則請設為「GENERIC_EVENT」。
(剖析器邏輯) event.idm.read_only_udm.metadata.vendor_name 設為「Microsoft」。
(剖析器邏輯) event.idm.read_only_udm.metadata.product_name 設為「Azure AD」。
(剖析器邏輯) event.idm.read_only_udm.extensions.auth.type 設為「SSO」。
(剖析器邏輯) event.idm.read_only_udm.extensions.auth.mechanism 如果 isInteractive 為「true」,請設為「INTERACTIVE」。否則請設為「MECHANISM_OTHER」。
(剖析器邏輯) security_result.action 如果結果為成功,請設為 ALLOW。
(剖析器邏輯) security_result.action 如果 resultType 為 0,請設為 ALLOW。
(剖析器邏輯) security_result.action 如果 resultType 不是 0 且不是「」,則設為 BLOCK。
(剖析器邏輯) security_result.category 如果 resultType 不是 0,也不是「」,請設為「AUTH_VIOLATION」。
(剖析器邏輯) security_result.description 如果 operationName 為「Add member to group」,且 result 為「success」,則設為「Group membership modified」。
(剖析器邏輯) security_result.priority 如果 properties.riskLevelDuringSignIn 為「medium」,請設為「MEDIUM_PRIORITY」。
(剖析器邏輯) security_result.summary 如果 resultType 為 0,請設為「Successful login occurred」。
(剖析器邏輯) security_result.summary 如果 resultType 不是 0,也不是「」,請設為「Failed login occurred」。
(剖析器邏輯) security_result.summary 如果存在,請設為 properties.activityDisplayName。
(剖析器邏輯) security_result.severity 如果層級為「Information」、「Informational」、「0」或「4」,請設為 INFORMATIONAL。如果層級為「警告」、「1」或「3」,請設為「中」。如果層級為「Error」或「2」,請設為 ERROR。如果等級為「重大」,則設為「重大」。
(剖析器邏輯) security_result.severity 如果 resultType 不是 0 且不是「」,則設為 ERROR。

變更記錄

查看這個剖析器的變更記錄

還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。