Skip to content

Update Sentinel and Splunk analytics integrations - #33059

Open
ngayerie wants to merge 12 commits into
cloudflare:productionfrom
ngayerie:dee-3779-sentinel-splunk-updates
Open

Update Sentinel and Splunk analytics integrations#33059
ngayerie wants to merge 12 commits into
cloudflare:productionfrom
ngayerie:dee-3779-sentinel-splunk-updates

Conversation

@ngayerie

Copy link
Copy Markdown
Collaborator

Summary

What: Expand analytics/analytics-integrations/sentinel and analytics/analytics-integrations/splunk with the setup and operations details customers have been asking for.

Sentinel:

  • Detailed prerequisites: ADLS Gen2, RBAC roles, Event Grid resource provider, DCR/DCE, network access rules, and required storage/Sentinel co-location.
  • Refreshed Content hub and CCF connector-field walkthrough.
  • Log Analytics KQL verification query and expected ingestion window.
  • Troubleshooting entry for the InvalidTemplate: CreateDataFlowResources ARM error.
  • Deprecation notice for the legacy Azure Function-based solution.

Splunk:

  • HEC Global Settings guidance (enable All Tokens, Enable SSL).
  • Dataset-to-sourcetype mapping (cloudflare:json, cloudflare:dns, cloudflare:audit, cloudflare:access).
  • Confirmation-events note when validating a new Logpush job.

Why: Customers deploying these integrations were missing prerequisites, connector-field detail, and the troubleshooting path for the most common ARM template failure. No screenshots are added; steps link out to the relevant Microsoft and Splunk docs.

DEE-3779

Documentation checklist

  • Is there a changelog entry — not applicable, this is a docs enhancement to existing pages.
  • The change adheres to the documentation style guide.
  • No file has been renamed or relocated, so no redirects are needed.

@ngayerie
ngayerie requested review from a team, rianvdm and soheiokamoto as code owners August 27, 2026 09:35
@github-actions github-actions Bot added the product:analytics Related to Analytics product label Aug 27, 2026
@cloudflare-docs-bot

cloudflare-docs-bot Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Review

✅ No issues found in commit 06d7f39.

Code Review

This code review is in beta and may not always be helpful — use your judgment.

No code review issues found.

Conventions

No convention issues found.

Style Guide Review

No style-guide issues found.

Commands

Only codeowners can run commands. Post a comment with the command to trigger it.

Command Description
/review Runs a review now. Incremental if a prior review exists, full if not.
/full-review Re-reviews the entire PR diff from scratch, ignoring incremental history. Useful after a rebase, when you want a fresh review, or if the bot gets out of sync and reports issues that no longer exist.
/ignore-review-limit Permanently lifts the 2-review automatic limit for this PR. Future pushes will trigger reviews as normal.
/disable-auto-review Stops automatic reviews from triggering on future pushes to this PR. Codeowners can still run /review or /full-review manually.
/rebase Rebases the PR branch against production. On conflict, attempts to resolve automatically using AI. Stops with an explanation if confidence is not high enough.

@ngayerie
ngayerie marked this pull request as draft August 27, 2026 09:42

Copy link
Copy Markdown
Collaborator Author

[AI] Triage of the code-review bot findings on 0560d03 — all 6 look legitimate, none require clarification:

ID File / line Agree? Plan
CR-e7252f2c3d02 sentinel.mdx L40, L109 ✅ Agree Reword to "Cloudflare CCF connector service principal / application" and drop the Microsoft-Sentinel ownership phrasing.
SG-2d8ad00db9da sentinel.mdx L21 ✅ Agree Replace "documented below" with "documented in this guide".
SG-e13d4b76765b splunk.mdx L60 ✅ Agree "turned on" instead of "set to Enabled".
SG-5a06a4ee4266 splunk.mdx L106 ✅ Agree "turn on" instead of "enable".
SG-6d5acda3ec8a splunk.mdx L108 ✅ Agree Drop "below", keep the anchor link.
SG-c30ba167399b splunk.mdx L52 ✅ Agree "Select" instead of "Click" for the line I touched. Other pre-existing "Click" usages left as-is to keep scope tight.

Applying fixes now.

@ngayerie
ngayerie marked this pull request as ready for review August 27, 2026 10:53

Copy link
Copy Markdown
Collaborator Author

[AI] Triage of the flue review on 9ee874c — both findings are legitimate:

ID File / line Agree? Plan
SG-e900072a2c83 sentinel.mdx L20 ✅ Agree Drop the date from the admonition title; use "Legacy connector deprecation".
SG-e053572c78cc sentinel.mdx L21 ✅ Agree Remove the hard date from the body text; the linked changelog entry is the canonical source for the end-of-support date.

Applying now.

@ngayerie
ngayerie force-pushed the dee-3779-sentinel-splunk-updates branch from aaeacf4 to 4b64248 Compare August 28, 2026 09:25

Copy link
Copy Markdown
Collaborator Author

[AI] Triage of the flue review on 5fcfa3d — all 5 findings agreed:

ID File / line Agree? Plan
CR-3138e225a15c splunk.mdx L221 ✅ Agree http_refererhttp_referrer (matches CIM Web).
CR-1025419467c2 splunk.mdx L252 ✅ Agree Remove QuerySize — CIM DNS has no clean byte-size equivalent, and query_count is semantically wrong.
CR-15e6a491a88d splunk.mdx L306 ✅ Agree ssidsession_id.
CR-a506e8058cfe splunk.mdx L244 ✅ Agree Rename DNS logs to Zero Trust Gateway DNS; these fields apply to gateway_dns, not zone dns_logs.
SG-9389419bc184 sentinel.mdx L164 ✅ Agree Replace "the tables below" with "the following tables".

Applying in commit 5760952.

@ngayerie
ngayerie force-pushed the dee-3779-sentinel-splunk-updates branch from 5760952 to 846efb3 Compare August 28, 2026 16:39

Copy link
Copy Markdown
Collaborator Author

[AI] Triage of the flue review on 846efb3 — all three findings are legitimate:

ID Agree? Plan
SG-b99d376e2a6a ✅ Agree Replace the directional phrase “The tables below” with “The following tables”.
SG-b4967f99fc94 ✅ Agree Rewrite the two deploying-user RBAC requirements as prose.
SG-1e6934c1cdd0 ✅ Agree Rewrite the two service-principal storage roles as prose.

Applying these fixes now.

Copy link
Copy Markdown
Collaborator Author

[AI] Triage of the flue review on c5be653:

ID Agree? Plan
CR-5aaa49121544 ✅ Agree Clarify that Microsoft Sentinel Contributor or Contributor covers resource deployment but not RBAC assignments. Require Owner or User Access Administrator at the storage-account scope for the role assignments created by the template.

Applying this fix now.

@ngayerie
ngayerie force-pushed the dee-3779-sentinel-splunk-updates branch from c5be653 to 2a0e09f Compare August 28, 2026 17:39

Copy link
Copy Markdown
Collaborator Author

[AI] Triage of the flue review on 2a0e09f — both findings are legitimate:

ID Agree? Plan
CR-c5b5cb5f3c69 ✅ Agree Add --subscription <subscription-id> to az provider show so it checks the same subscription used by the registration command.
SG-ef0098bcdd73 ✅ Agree Change the Task 2 heading to sentence case.

Applying these fixes now.

@ngayerie
ngayerie force-pushed the dee-3779-sentinel-splunk-updates branch from 2a0e09f to 77b7c4c Compare August 28, 2026 18:09

Copy link
Copy Markdown
Collaborator Author

[AI] Triage of the flue review on 77b7c4c:

ID Decision Plan / rationale
CR-9177bfeaeb0a Disagree Keep the link. The entry exists at src/content/changelog/logs/2026-08-26-sentinel-functions-connector-deprecation.mdx; changelog routes omit the product directory.
CR-2e9ed8b321fd Disagree Keep the ADLS Gen2 requirement. The connector setup source explicitly requires an Azure Storage account with hierarchical namespace enabled; the generic Logpush-to-Azure page does not define this connector-specific prerequisite.
SG-f47e65d5d4e4 Agree Rewrite the storage-account description in active voice.
SG-d7722a4c27eb Agree Replace “once the resources are aligned” with “after you align the resources.”
SG-b249e2e8abd8 Agree Replace “Once the job is created” with “After you create the job.”
SG-ebf65e3327f8 Agree Replace “as soon as the job is enabled” with “as soon as you enable the job.”

Applying the four style fixes now.

@ngayerie
ngayerie force-pushed the dee-3779-sentinel-splunk-updates branch 2 times, most recently from 4208dea to f29ada9 Compare August 28, 2026 18:40

Copy link
Copy Markdown
Collaborator Author

[AI] Triage of the flue review on f29ada9:

ID Agree? Plan
CR-a1fcde97b2ee ✅ Agree Add CASB findings, Zero Trust Gateway HTTP, and Zero Trust Gateway Network to the Task 2 sourcetype list. These datasets use cloudflare:json — the app applies CIM field mappings via props.conf aliases based on the fields present in the JSON payload.

Applying this fix now.

Expand the Sentinel page around the recommended CCF connector: detailed
prerequisites (ADLS Gen2, RBAC roles, Event Grid resource provider,
DCR/DCE, network access), refreshed Content hub and connector fields
walkthrough, a Log Analytics verification query, and a troubleshooting
entry for the CreateDataFlowResources ARM template error. Add a
deprecation notice for the Azure Function-based solution.

Extend the Splunk page with HEC Global Settings guidance for enabling
SSL, dataset-to-sourcetype mapping for the Cloudflare App for Splunk,
and a confirmation-events note when validating a new Logpush job.

DEE-3779
Tie the Function-based connector deprecation notice to the public
changelog entry and to Microsoft's Azure Monitor HTTP Data Collector API
end-of-life on 2026-09-14.

DEE-3779
- Reword Sentinel CCF connector identity references to point to the
  Cloudflare CCF connector application and its service principal
  (CR-e7252f2c3d02).
- Drop directional 'below' references (SG-2d8ad00db9da, SG-6d5acda3ec8a).
- Replace 'set to Enabled' / 'Only enable' toggle jargon with the
  style-guide 'turned on' / 'turn on' phrasing (SG-e13d4b76765b,
  SG-5a06a4ee4266).
- Use 'Select' instead of 'Click' for the '+Add new' step
  (SG-c30ba167399b).

DEE-3779
Move the exact 2026-09-14 end-of-support date out of the page body
and admonition title into the linked changelog entry, per the style
guide on time-sensitive dates outside the changelog (SG-e900072a2c83,
SG-e053572c78cc).

DEE-3779
Splunk: add a Splunk CIM field mappings section documenting the
Cloudflare-to-CIM field mapping the Cloudflare App for Splunk applies
per Logpush dataset — HTTP requests, CASB findings, DNS logs, Audit
logs, Access requests, Zero Trust Gateway HTTP, Zero Trust Gateway
Network.

Sentinel: replace the parser/workbook/analytic-rules/hunting-queries
field lists with the ASIM-normalized names the CCF connector actually
emits (SrcIpAddr, HttpRequestMethod, HttpStatusCode, DvcAction, etc.),
so KQL queries against the connector output match the documented names.

DEE-3779
- Fix Splunk CIM referrer field name: http_referer -> http_referrer
  (CR-3138e225a15c).
- Remove QuerySize mapping in the Gateway DNS table: CIM query_count
  refers to per-transaction query counts, not payload byte size
  (CR-1025419467c2).
- Fix Splunk CIM session identifier for Zero Trust Gateway Network:
  ssid -> session_id (CR-15e6a491a88d).
- Rename the DNS mapping section to 'Zero Trust Gateway DNS' since the
  fields listed apply to the gateway_dns dataset, not zone dns_logs
  (CR-a506e8058cfe).
- Replace 'the tables below' with 'the following tables' in the
  Sentinel field-mappings intro (SG-9389419bc184).

DEE-3779
Rewrite the two-item RBAC role lists as prose and replace a
directional table reference with neutral wording.

DEE-3779
Document that Contributor roles do not grant permission to create the
storage-account role assignments required by the connector template.

DEE-3779
Scope the Event Grid registration check to the requested subscription
and use sentence case for the Splunk Task 2 heading.

DEE-3779
Address the remaining active-voice suggestions while retaining the
verified connector-specific requirements and changelog link.

DEE-3779
Add CASB findings, Zero Trust Gateway HTTP, and Zero Trust Gateway
Network to the Task 2 source-type list. These datasets use
cloudflare:json; the Splunk app applies the CIM field mappings via
props.conf aliases based on the JSON fields present in each dataset.

DEE-3779
@ngayerie
ngayerie force-pushed the dee-3779-sentinel-splunk-updates branch from 7dbc52a to 6bdab9a Compare August 28, 2026 23:08

Copy link
Copy Markdown
Collaborator Author

[AI] Triage of the flue review on 6bdab9a — all 11 findings are legitimate:

Finding(s) Decision Plan
CR-1bc495fcf616 ✅ Agree Replace the remaining raw Workbook names ClientIP and EdgeResponseStatus with SrcIpAddr and HttpStatusCode, removing the duplicate status entry.
CR-c5fee7dd31aa ✅ Agree Include Zero Trust Gateway DNS in the cloudflare:dns guidance.
CR-b78764760b5d ✅ Agree Remove misleading step-specific link labels and refer to Task 1 as a section.
SG-6dbe42f2a0fd, SG-e1205c5dd59c, SG-8521ebea648f, SG-99ff7574c233, SG-5d2dcf9a77d8, SG-ece1f3738e0d, SG-64accf369f33 ✅ Agree Add a complete introductory sentence ending in a colon before each CIM table.
SG-3b3f6b3e27ec ✅ Agree Rewrite the CIM introduction in active voice.

Applying the fixes now.

Align the remaining Sentinel workbook names with ASIM, document the
Gateway DNS source type, remove misleading step-specific links, add
required table introductions, and use active voice in the CIM overview.
Also correct the Gateway Network session mapping to session_id.

DEE-3779
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

product:analytics Related to Analytics product size/m

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants