<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>article Palo Alto Cortex XDR Event Forwarding to Google SecOps (Chronicle) in General Articles</title>
    <link>https://live.paloaltonetworks.com/t5/general-articles/palo-alto-cortex-xdr-event-forwarding-to-google-secops-chronicle/ta-p/600621</link>
    <description>&lt;P&gt;&lt;SPAN&gt;This document provides detailed steps for a customer to achieve Cortex XDR Events / Telemetry forwarding to &lt;/SPAN&gt;&lt;SPAN&gt;Google Security Operations (SIEM/Chronicle).&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;You can contact&amp;nbsp;&lt;A href="mailto:google-tech@paloaltonetworks.com" target="_blank" rel="noopener"&gt;google-tech@paloaltonetworks.com&lt;/A&gt;&amp;nbsp;if you have any further questions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT color="#FF6600"&gt;&lt;STRONG&gt;&lt;SPAN&gt;Cortex XDR Event Forwarding to Google SecOps (Chronicle) Solution&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;The telemetry data is pulled into an intermediary bucket in the customer tenant and the native integration is set up from there.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;The following diagram demonstrates this.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_2-1728953430741.png" style="width: 999px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62797iD6A7CF2D60BD4355/image-size/large?v=v2&amp;amp;px=999" role="button" title="Danielma911_2-1728953430741.png" alt="Danielma911_2-1728953430741.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT color="#FF6600"&gt;&lt;STRONG&gt;Steps To Setup The Integration (with an example)&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;H3&gt;&lt;SPAN&gt;Create Required GCS Bucket&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P&gt;&lt;SPAN&gt;The customer creates a GCS bucket in the Customer/MDR tenant. Let’s call it &lt;/SPAN&gt;&lt;STRONG&gt;Project1&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;For this example, we are using the following bucket (your bucket name &lt;/SPAN&gt;&lt;STRONG&gt;will&lt;/STRONG&gt;&lt;SPAN&gt; be different)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;cortex-xdr-events-destination&lt;/STRONG&gt;&lt;SPAN&gt; - Used to hold the XDR telemetry data temporarily.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Make sure that the bucket is in the same region as the customer’s Chronicle Region.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_3-1728953746394.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62798i1E8CDFA5D553ABE1/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_3-1728953746394.png" alt="Danielma911_3-1728953746394.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3&gt;&lt;STRONG&gt;Set up Cortex XDR Event Forwarding&amp;nbsp;&lt;/STRONG&gt;&lt;/H3&gt;
&lt;P&gt;&lt;SPAN&gt;Setup the Cortex XDR event forwarding and download the service account key. We will call it &lt;/SPAN&gt;&lt;STRONG&gt;xdr_sa_key.json&lt;/STRONG&gt;&lt;SPAN&gt; going forward. For the complete guide to event forwarding please refer to &lt;/SPAN&gt;&lt;A href="https://docs-cortex.paloaltonetworks.com/r/Cortex-XDR/Cortex-XDR-Pro-Administrator-Guide/Parsing-Rules-Raw-Dataset" target="_blank" rel="noopener"&gt;&lt;SPAN&gt;this link&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt;. The following screenshot shows the customer performing this action. At the end of this step the customer must have&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Storage Path (GCS Bucket URL)&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Service account JSON key.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_4-1728953818011.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62799i21A9E1AA3E9DDF7D/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_4-1728953818011.png" alt="Danielma911_4-1728953818011.png" /&gt;&lt;/span&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;H3&gt;&lt;STRONG&gt;Secret Manager Setup&lt;/STRONG&gt;&lt;/H3&gt;
&lt;P&gt;&lt;SPAN&gt;Create a secret called &lt;/SPAN&gt;&lt;STRONG&gt;EVENT_FRWD_CRTX_KEY&lt;/STRONG&gt;&lt;SPAN&gt; and add the contents of the SA&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;JSON &lt;/SPAN&gt;&lt;STRONG&gt;xdr_sa_key.json&lt;/STRONG&gt;&lt;SPAN&gt; as the value of the secret&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_5-1728953868964.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62800iAF37382CC4B1B25D/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_5-1728953868964.png" alt="Danielma911_5-1728953868964.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3&gt;&lt;SPAN&gt;Set up Native Chronicle Feed Integration&lt;/SPAN&gt;&lt;/H3&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Create a new feed by navigating to &lt;/SPAN&gt;&lt;STRONG&gt;SIEM Settings - Feeds - ADD NEW&lt;/STRONG&gt;&lt;SPAN&gt;.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_6-1728953938295.png" style="width: 505px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62801i122D4862FA812470/image-dimensions/505x224?v=v2" width="505" height="224" role="button" title="Danielma911_6-1728953938295.png" alt="Danielma911_6-1728953938295.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;&amp;nbsp;Provide a feed name and select options as shown below. Click GET A SERVICE ACCOUNT. Click Next.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_10-1728954123904.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62805i9D47CD26C9E35355/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_10-1728954123904.png" alt="Danielma911_10-1728954123904.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Provide the bucket name and select the options as shown below. Please add a namespace if that’s relevant to you/ your customer. It is recommended to add an ingestion label. Copy the service account name.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_11-1728954194057.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62806i93BF723184710056/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_11-1728954194057.png" alt="Danielma911_11-1728954194057.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;SPAN&gt;Review the details added and Submit&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_12-1728954260708.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62807i20241EBA4B10CAB9/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_12-1728954260708.png" alt="Danielma911_12-1728954260708.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;The feed should be available in feeds now (the feed name in the example below is different as we are using a feed created earlier)&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_13-1728954324210.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62808iE40553F4CCB09A64/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_13-1728954324210.png" alt="Danielma911_13-1728954324210.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;For now, disable the feed. We will enable it later.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_14-1728954372465.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62809iD65FA047BA82F3BC/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_14-1728954372465.png" alt="Danielma911_14-1728954372465.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3&gt;&lt;STRONG&gt;IAM Setup&lt;/STRONG&gt;&lt;/H3&gt;
&lt;P&gt;&lt;SPAN&gt;The Cortex XDR service account created during the event forwarding setup already has access to the source bucket. Now go ahead and provide the &lt;/SPAN&gt;&lt;STRONG&gt;Storage Object Admin &lt;/STRONG&gt;&lt;SPAN&gt;and &lt;/SPAN&gt;&lt;STRONG&gt;Storage Legacy Bucket Reader&lt;/STRONG&gt;&lt;SPAN&gt; access to this service account on the bucket (&lt;/SPAN&gt;&lt;STRONG&gt;cortex-xdr-events-destination&lt;/STRONG&gt;&lt;SPAN&gt;) created in Step 1.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;Also, grant the account (the chronicle service account, see below when you adding feeds in Chronicle) created during feed creation of the &lt;/SPAN&gt;&lt;STRONG&gt;Storage Object Viewer &lt;/STRONG&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;roles/storage.objectViewer&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_0-1728955978355.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62816i454A31E1956E3B02/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_0-1728955978355.png" alt="Danielma911_0-1728955978355.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3&gt;&lt;SPAN&gt;Set up the Solution (One-time setup)&lt;/SPAN&gt;&lt;/H3&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Enable Following APIs&lt;/SPAN&gt;&lt;/LI&gt;
&lt;OL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Cloud Run&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Artifact Registry&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;LI&gt;&lt;SPAN&gt;Open Cloud Shell and download the code using:&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;git clone https://github.com/PaloAltoNetworks/google-cloud-cortex-chronicle.git&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;cd google-cloud-cortex-chronicle/ &lt;/SPAN&gt;&lt;SPAN&gt;The contents of this directory are shown below&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_2-1728956127266.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62818i4CF5755877EFE600/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_2-1728956127266.png" alt="Danielma911_2-1728956127266.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="Danielma911_3-1728955417032.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62813i39AF20FEB392E863/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_3-1728955417032.png" alt="Danielma911_3-1728955417032.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;Open the file &lt;/SPAN&gt;&lt;SPAN&gt;env.properties&lt;/SPAN&gt;&lt;SPAN&gt; with the editor of your choice. Update the values of the variables as shown below. Job Schedule minutes can be adjusted based on the size and frequency of data pushed by Cortex.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;REGION=us-central1 # update this to the region you want
REPO_NAME=panw-chronicle # The repo name to create
IMAGE_NAME=sync_cortex_bucket # The image name to create
GCP_PROJECT_ID=xdrxxxxxtion # update this to your project ID
JOB_NAME=cloud-run-job-cortex-data-sync # The Cloud Job name to create
PROJECT_NUMBER=80xxxxx9 # update this to your project number
# JOB ENV VARIABLES
SRC_BUCKET=xdr-us-xxxxx-event-forwarding # update this to Cortex XDR GCS bucket
DEST_BUCKET=cortex-xdr-events-destination # Update to the GCS name you created
SECRET_NAME=EVENT_FRWD_CRTX_KEY # Need to match exactly the secret you created
JOB_SCHEDULE_MINS=30
&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;Provide execute permissions to the deploy.sh using the command&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;chmod 744 deploy.sh&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Run the &lt;/SPAN&gt;&lt;SPAN&gt;deploy.sh&lt;/SPAN&gt;&lt;SPAN&gt; using command &lt;/SPAN&gt;&lt;SPAN&gt;./deploy.sh&lt;/SPAN&gt;&lt;SPAN&gt;. This step does following&lt;/SPAN&gt;&lt;/LI&gt;
&lt;OL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Creates an artifact registry repository&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Build an image for a cloud run job&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Pushes the image to the Artifact registry&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Creates a Cloud Run Job using this image&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;Creates a trigger for this cloud run job every &lt;SPAN&gt;JOB_SCHEDULE_MINS&lt;/SPAN&gt;&lt;SPAN&gt; minutes (configured in &lt;/SPAN&gt;&lt;SPAN&gt;env.properties&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;LI&gt;&lt;SPAN&gt;&lt;SPAN&gt;After the script finishes, you would need to grant permission to access the Secret Manager Secret you created before to the service account (you can see the service account used by the Cloud Jobs from the script output; see below).&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;DIV id="tinyMceEditorDanielma911_4" class="mceNonEditable lia-copypaste-placeholder"&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_5-1728955691985.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62815i74F8CA6567AF8C14/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_5-1728955691985.png" alt="Danielma911_5-1728955691985.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&lt;SPAN&gt;Grant permission through the Secret Manager -&amp;gt; Permissions (Secret Manager Secret Accessor):&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_1-1728955993010.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62817i58577909B46FA30F/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_1-1728955993010.png" alt="Danielma911_1-1728955993010.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;H3&gt;&lt;SPAN&gt;Verify setup&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Verify if artifacts mentioned above are created.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;You can wait for &lt;/SPAN&gt;&lt;SPAN&gt;JOB_SCHEDULE_MINS&lt;/SPAN&gt;&lt;SPAN&gt; minutes or perform the following steps to force execute the job. &lt;/SPAN&gt;&lt;STRONG&gt;This is required/recommended to be done only once to test.&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Go to the Cloud run job. In your case, it might show “no executions” in the status.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_3-1728956137613.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62819i523B71E8F266E360/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_3-1728956137613.png" alt="Danielma911_3-1728956137613.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;Force Execute&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_5-1728956227537.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62821i64AA7974C00FC043/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_5-1728956227537.png" alt="Danielma911_5-1728956227537.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;Check logs&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_6-1728956316094.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62822iFCB07DB9073CE9A3/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_6-1728956316094.png" alt="Danielma911_6-1728956316094.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Now check the destination bucket&lt;/SPAN&gt;&lt;/LI&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;It should have the files downloaded from the XDR Bucket&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_7-1728956503193.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62823iC2AF02EF669DE7DD/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_7-1728956503193.png" alt="Danielma911_7-1728956503193.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;Download one of the files and unzip it and note down one or more event ids as shown below&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_8-1728956635895.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62824iCBF71FE14F86C017/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_8-1728956635895.png" alt="Danielma911_8-1728956635895.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;Now go to Chronicle - SIEM Settings - [Your Feed Name] -&amp;gt; Enable Feed&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_9-1728956715776.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62825iAED3B772C39FE5D3/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_9-1728956715776.png" alt="Danielma911_9-1728956715776.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;Search for the event id in Chronicle with RAW search / UDM search (you may have to wait for a few minutes for UDM search). You should find the event in the Chronicle.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_10-1728956779158.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62826i593FA81528FEB63F/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_10-1728956779158.png" alt="Danielma911_10-1728956779158.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT size="5"&gt;&lt;STRONG&gt;Regular Usage &amp;amp; Monitoring&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;You do not have to change anything going forward for this integration.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;The feed should remain enabled from this point forward unless you want to troubleshoot.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;You can change the schedule based on your requirements. Recommended 30 minutes initially when there’s too much data in the source bucket and gradually reducing to about 5 minutes as things stabilize. You can change that directly on the trigger as shown below&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_11-1728956880491.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62827iDE2DF26407669BA3/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_11-1728956880491.png" alt="Danielma911_11-1728956880491.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;Monitor the Job Run execution History in Cloud run.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_12-1728956949082.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62828i655297AA5A975B94/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_12-1728956949082.png" alt="Danielma911_12-1728956949082.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT color="#FF6600"&gt;&lt;STRONG&gt;Cloud Billing Costs&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;SPAN&gt;Predominantly this solution uses the following resources that are billed.&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;GCS cloud bucket&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Cloud Run Batch job&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Artifact Registry&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;SPAN&gt;Assuming the deployment region to be &lt;/SPAN&gt;&lt;SPAN&gt;us-central1&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;about 10GB of data persistently stored every day and a cloud run job that runs every 10 minutes for 30 days, the estimated cost is&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;about USD 10 per month.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;These are approximate costs. Your costs may vary based on the amount of data and the frequency of the job.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT color="#FF6600"&gt;&lt;STRONG&gt;Troubleshooting&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;UL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;If the data is not available in the Chronicle&lt;/SPAN&gt;&lt;/LI&gt;
&lt;OL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Check if the feed is enabled&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Check the cloud run job logs&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;For the very first time, the job may have to deal with GBs of data if you had the forwarding setup enabled for many days. Please check the job logs and wait for it to finish.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Wait for a few minutes if the event is from a recent file&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Sometimes Cortex sends older files, so try to expand the search time range by a few hours.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Troubleshooting the Cloud run job&lt;/SPAN&gt;&lt;/LI&gt;
&lt;OL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Check for logs for any errors&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;If there are no files logged by the job please check with Cortex XDR support as the files may not be present in the source bucket.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;How to reduce GCS costs?&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;You can set up the Lifecycle Management rule to delete the object after 14 days. Follow the steps shown in the screenshots below&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_0-1728957534041.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62829i9DB2E693CCE16D99/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_0-1728957534041.png" alt="Danielma911_0-1728957534041.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_1-1728957574746.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62830i4650ECC736FAAF35/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_1-1728957574746.png" alt="Danielma911_1-1728957574746.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_2-1728957614077.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62831i607F5686DEA88660/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_2-1728957614077.png" alt="Danielma911_2-1728957614077.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-60px"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Danielma911_3-1728957648309.png" style="width: 400px;"&gt;&lt;img src="https://live.paloaltonetworks.com/t5/image/serverpage/image-id/62832i71D3DA64A9939CED/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Danielma911_3-1728957648309.png" alt="Danielma911_3-1728957648309.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;H2&gt;&amp;nbsp;&lt;/H2&gt;
&lt;H2&gt;&lt;FONT color="#FF6600"&gt;&lt;STRONG&gt;Uninstallation&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Go to the installation folder, provide execute permissions to the uninstall.sh, and execute it by using the command &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;chmod 744 uninstall.sh &amp;amp;&amp;amp; ./uninstall.sh&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 15 Nov 2024 22:24:09 GMT</pubDate>
    <dc:creator>Danielma911</dc:creator>
    <dc:date>2024-11-15T22:24:09Z</dc:date>
    <item>
      <title>Palo Alto Cortex XDR Event Forwarding to Google SecOps (Chronicle)</title>
      <link>https://live.paloaltonetworks.com/t5/general-articles/palo-alto-cortex-xdr-event-forwarding-to-google-secops-chronicle/ta-p/600621</link>
      <description>&lt;P&gt;&lt;SPAN&gt;This document provides detailed steps for a customer to achieve Cortex XDR Events / Telemetry forwarding to &lt;/SPAN&gt;&lt;SPAN&gt;Google Security Operations (SIEM/Chronicle)&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 15 Nov 2024 22:24:09 GMT</pubDate>
      <guid>https://live.paloaltonetworks.com/t5/general-articles/palo-alto-cortex-xdr-event-forwarding-to-google-secops-chronicle/ta-p/600621</guid>
      <dc:creator>Danielma911</dc:creator>
      <dc:date>2024-11-15T22:24:09Z</dc:date>
    </item>
  </channel>
</rss>

