Non-Standard Policy Development (NSPD) is the engineering discipline for creating Microsoft Purview sensitive information types (SITs), DLP rules, and DLP policies for operational artifacts that built-in SITs cannot reliably detect — documents such as subpoenas, internal investigations, personnel actions, governance markings, and other intent-bearing content.
Where standard DLP relies on structured PII patterns (credit card numbers, SSNs), NSPD targets meaning and intent: a subpoena is dangerous not because of the numbers it contains, but because of what it is. The NSPD framework uses the SitPak 2026 methodology to build context-rich, interpretable detection that dramatically reduces false positives and surfaces actionable telemetry directly in Activity Explorer.
Detects legal demand documents using primary anchors, authority language, case reference facets, and deadline facets. Complex variant requires primary + supporting + facet. Simple variant requires primary + supporting only.
- Subpoena
- Search Warrant
- Law Enforcement Inquiry
- Preservation Request
- Grand Jury Correspondence
subpoena*.pdf · subpoena*.docx · search-warrant*.pdf · search-warrant*.docx
LE-inquiry*.msg · preservation-request*.xlsx · grand-jury*.pdf
Anchor terms: "subpoena," "search warrant," "law enforcement," "grand jury," "preservation notice"
Structure terms: "you are hereby commanded," "produce and permit," "records and documents," "return date"
Risk amplifiers: agency names, court identifiers, case numbers, compliance deadline language, sealed matter references
Training materials, mock examples, templates, compliance guides, helpdesk articles
Detects sensitive internal security investigation and incident documents. Targets content describing active investigations, damage assessments, and threats — not generic security policy documentation.
- Internal Investigation
- Damage Assessment
- Threat of Violence
- Breach Impact Assessment
- Insider Threat Reports
internal-investigation*.pdf · damage-assessment*.docx · threat-of-violence*.msg
breach-impact*.pdf · incident-report*.docx · insider-threat*.pdf
Detects sensitive HR investigation and disciplinary documents. Distinguishes actual active investigations from routine HR policy communications, training documents, or process guides.
- HR Investigation
- Employee Investigation
- Harassment Investigation
- Workplace Investigation
- Disciplinary Actions
HR-investigation*.pdf · employee-investigation*.docx · harassment-investigation*.pdf
workplace-investigation*.docx · disciplinary*.pdf
Detects controlled unclassified information (CUI) and TLP-marked documents. Targets the presence of formal governance markings and their accompanying authorization and handling instructions.
- CUI (Controlled Unclassified Information)
- TLP:RED
- TLP:AMBER
- Official Use Only
CUI*.pdf · CUI-marked*.docx · TLP-RED*.pdf · TLP-AMBER*.docx
controlled-unclassified*.pdf · official-use-only*.docx
Multiple individual SITs combined at the policy layer. Each facet is a separate SIT with its own Activity Explorer entry. Maximum telemetry granularity. Best for stable, well-defined identifiers (CCN, banking, driver's license).
- Very high telemetry detail per facet
- Higher administrative overhead
- Multiple SIT objects to manage
Single custom SIT with multiple internal patterns. All primary, dictionary, and facet logic is encapsulated. Lower overhead. Best for non-standard document-class artifacts like subpoenas, investigations, CUI, and TLP markings.
- Single SIT object — easier to manage
- Lower administrative overhead
- Facets internal to patterns (less granular telemetry)
| Method | True Positives | False Positives | Undetermined | Triage Time |
|---|---|---|---|---|
| Built-in Single SIT | 47% | 34% | 18% | Minutes per event |
| v1/v2 SitPak (Multi-Dictionary) | 87% | 0.08% | 0.02% | Seconds per event |
Before converting content analysis into Purview objects, the AI agent scores candidate evidence to determine where each finding should go — SIT, dictionary, facet, exception, or rejection. This model is an engineering aid, not a Purview-native object.
The AI agent operates from a structured prompt manifest. The operator provides a domain declaration; the agent executes all downstream pipeline steps and emits the full artifact bundle.
Import-Module ExchangeOnlineManagement
Connect-IPPSSession -UserPrincipalName admin@yourtenant.onmicrosoft.com
Get-DlpCompliancePolicy | ConvertTo-Json -Depth 100
Get-DlpSensitiveInformationTypeRulePackage
Get-DlpSensitiveInformationType
New-DlpSensitiveInformationTypeRulePackage
-FileData ([System.IO.File]::ReadAllBytes('Legal-Complex.xml'))
Set-DlpSensitiveInformationTypeRulePackage
-FileData ([System.IO.File]::ReadAllBytes('Legal-Complex-v2.xml'))
New-DlpCompliancePolicy -Name "Legal-NSP"
-Mode TestWithNotifications
-ExchangeLocation All -SharePointLocation All
New-DlpComplianceRule -Name "Legal-Rule"
-Policy "Legal-NSP"
-ContentContainsSensitiveInformation @{Name="Legal-Complex";minConfidence=75}
Get-DlpSensitiveInformationTypeRulePackage and save to a versioned XML file. This is the rollback artifact.
- Owner (person, not team)
- Domain (Legal / Security / HR / Governance)
- Version and creation date
- Source corpus reference (where discovery candidates came from)
- Approval record (Gate 1, 2, 3 sign-offs)
- Test status (discovery / test / enforcement)
- Rollback XML (pre-import baseline export)
- Retirement criteria (what triggers deprecation)
- Named owner
- Scope rationale (why these workloads, not others)
- Mode documented (Test / Audit / Enforce) and date of each promotion
- Exception rules for known-good content
- Linked SIT(s) with version references
- Test period minimum: one full week before notifications, two weeks before enforcement
- False positive rate baseline before enforcement promotion
- Export current DLP policy and SIT baseline — compare to last quarter's snapshot
- Review Activity Explorer for each active domain SitPak — check TP/FP rates
- Update SIT dictionaries for new vocabulary (agency names, form numbers, terminology changes)
- Review exception lists — remove stale suppressors, add new known-good patterns
- Review ownership assignments — confirm owners are still active and responsible
- Simulate upcoming SIT changes in Test mode before promoting
- Create a custom SIT using PowerShell
- Modify a custom SIT using PowerShell
- Learn about sensitive information types
- New-DlpCompliancePolicy
- New-DlpComplianceRule
- Connect to Security & Compliance PowerShell
- Power Automate approval workflows
- Export DLP policies and rules using PowerShell (Tech Community)