build-identity-graph
Identity-centric view of traffic: which ACCOUNT the communicating process ran as, which workloads it acted from, what it reached, and over what period.
Instructions
Identity-centric view of traffic: which ACCOUNT the communicating process ran as, which workloads it acted from, what it reached, and over what period. Answers least-privilege questions that workload labels cannot -- what can this account reach, and from how many places. Resolves DOMAIN\user and user@realm to one identity, so a person appearing as both CRYSTAL\jdoe and jdoe is not counted twice. Classifies service accounts (root, SYSTEM, mysql) separately from interactive ones, because wide host spread is normal for a daemon and notable for a person. Findings are ranked by how unexpected they are, and are observations, not verdicts.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| top | No | Destinations/ports/processes listed per identity (default 10) | |
| end_date | No | YYYY-MM-DD; defaults to today | |
| identity | No | Restrict to these accounts. Domain-qualified or bare both work: 'CRYSTAL\jdoe' and 'jdoe' select the same identity. | |
| start_date | No | YYYY-MM-DD; defaults to lookback_days ago | |
| include_edges | No | Include the identity -> workload -> destination edges. Capped at 400, ranked by connections; the identity rollup answers most questions without them. | |
| lookback_days | No | Used when start_date is omitted (default 30) | |
| include_sources | No | Label filters, e.g. ['app=vdi'] | |
| policy_decisions | No | allowed, blocked, potentially_blocked | |
| include_destinations | No | Label filters on the destination side | |
| include_service_accounts | No | Include daemon accounts (root, SYSTEM, mysql, ...). Default true. Set false to look only at interactive users. |