Skip to main content
The inventory is a worklist, not a dashboard. Every row is an AI service somebody reached from a managed device, and every row wants one of three decisions. Open it at Runtime Security → Shadow AI.

The worklist

Figures

Filters

One search box over host and provider, a row of state chips, and quiet scoping controls on the right. Chips only appear when they can match something, so an empty Workflow chip means no automation platform has been seen at all.

Columns

Click any row to expand it. The detail strip shows Why this ranking (the reasons behind the risk level), exact first and last seen timestamps, and the three action buttons.

How risk is ranked

Risk is derived from signals the inventory already carries. There is no hidden score and no model: recognition, capability, and exposure. Unknown hosts rank high because nobody has verified where the data goes. Workflow platforms rank high because an AI step inside an automation can relay records between systems without a human in the loop. Device spread ranks high because a tool on twenty laptops is a policy problem, not an individual one.
Risk is only meaningful for undecided services. Anything sanctioned, blocked, or managed resolves to low by definition, so the worklist shows rather than pretending the ranking still says something.

The three decisions

All three require the runtime_security.policy.manage permission and write an audit record.
Onboarding creates the App and the attribution; it does not start decrypting on its own. To actually inspect that traffic, add an inspect host rule pointing at the new App, see Set up discovery. Until you do, the service is governed but still uninspected.

Which decision to reach for

A weekly triage pass

1

Filter to Needs review, sorted by highest risk

The default sort already does this. Set the time range to the last 7 days for the new arrivals, or all time to clear the backlog.
2

Start with the unknown hosts

Expand each row and read Why this ranking. Resolve the hostname: is it an internal gateway, a new vendor, or something nobody can account for?
3

Check exposure before deciding

A service on one device is usually a person to talk to. A service on twenty is a policy to write. Use the device and user filters to see who is behind it.
4

Decide

Sanction, block, or onboard. Every row you leave undecided is a row the report will call ungoverned.
5

Confirm the block landed

Blocked services push a host rule to the fleet. Policy propagates within about 30 seconds, or immediately if you Push policy from Devices & Enrollment.

Insights

Runtime Security → Shadow AI → Insights is the read on the estate, where the worklist is the read on individual services. It deliberately repeats nothing from the inventory. The trend needs at least a day of rollup data. Until agents have reported, it says so rather than drawing a flat zero line.

Export the report

Export on the Shadow AI page generates a PDF built server-side. The report leads with a narrative summary, then the risk-ranked inventory, the traffic trend against the prior period, exposure breakdowns, and a methodology section that states plainly that detection is passive and destination-only.
Sanctioned services are approved tools, not shadow AI, so they are excluded from the report everywhere: the table, the totals, and the breakdowns. The inventory in the console still shows them, filtered behind the Sanctioned chip.
Filenames are stamped, shadow-ai-report-20260729.pdf or shadow-ai-summary-20260729.pdf, so a monthly export drops cleanly into an evidence folder.

API

The discovery routes live under /api/runtime-security/ and use the same workspace authentication as the rest of the dashboard API. runtime_security.view reads; runtime_security.policy.manage acts. GET /discovery accepts status, days, device_id, and user query parameters, matching the console’s filters:

Audit trail

Every decision is recorded in the audit trail against the rs_discovered_service entity, with the acting user and the hostname. Forward them to your SIEM with the audit webhook if shadow-AI decisions are part of your control evidence.

Common workflows

  1. Run the fleet observe-only for two weeks.
  2. Export the full report for the last 14 days.
  3. Walk the risk drivers and the department breakdown with the data-protection owner.
  4. Decide the enforcement policy with real numbers rather than hypotheticals.
  1. Chip: High risk. Sort: Most devices.
  2. Work top-down. Broad exposure first, since it affects the most people.
  3. Blocked services push a host rule immediately; tell the affected teams before you block a tool they use daily.
  1. Set the User filter to a team member, or read the department breakdown on Insights.
  2. Switch the drill-down between device and user while staying filtered, the breakdowns stay populated.
  3. Sanction the tools the team genuinely needs and onboard the one handling sensitive data.
  1. Onboard as app on the row. An App is created and linked.
  2. Configure thresholds, custom PII rules, and tool policy on the new App, see Apps.
  3. Add an inspect host rule for the hostname pointing at that App, in DLP policy → AI host rules.
  4. Confirm events start arriving with source=agent in Observability.
  1. Export the full report with Anonymize on if the audience should not see identities.
  2. Pair it with the audit trail export for the same period, which carries the decisions and who made them.
  3. The methodology section states the detection limits explicitly, which is usually the auditor’s first question.