Tenancy and provider hierarchy
A provider organisation manages a fleet of client tenants with delegated onboarding, audited
impersonation for support, and an opt-in approval gate that must be satisfied before a provider acts
inside a managed tenant. Every product gets multi-client support without building it.
One connector framework, one Entra app per product
Every product registers its connector through the same framework, with the same onboarding flow, the
same secret handling and the same audit trail. What is not shared is the grant: each
product has its own Entra application and asks for its own consent, scoped to the permissions
that product actually needs.
That is a deliberate trade. It means enabling a second product is a second consent
rather than a switch — but it also means no product inherits another's permissions, and revoking
one revokes exactly one. The adjacent services are separate again: Exchange admin, Power Platform,
Azure and DNS each need their own one-time setup, and write-back is its own opt-in on top of the
read grant.
A shared findings substrate
The scanning products write findings into one store with severity, waivers and control-reference tags. This
is the reason a security finding can become compliance evidence with no second integration, and the
reason one board can show all of it.
Tamper-evident audit
A hash-chained audit trail across the platform. When a client or an auditor asks what was checked,
what changed, and who approved it, the answer is a record that can be shown to have not been edited
after the fact.
Worth being exact about what that covers: the chain protects the audit trail
and the evidence snapshots taken from a point in time. Findings themselves are live
records — they open, change severity and close as the environment does. Chaining them would make them
immutable, which is the opposite of what a finding is for.
Entitlements and metered billing
A catalog of features gated per plan and wired to metered billing.
Scheduling, reporting, notifications
Scheduled scans with live progress, a report engine that produces evidence packs, and a notification system.
Shared by every product rather than rebuilt in each one.
Onboarding is one flow you learn once, not one grant that covers everything.
ShareCare, SecurityPortal, CompliancePortal and Dredd read
through the shared Graph connector. MailTrust and PosturePortal do not: MailTrust authorises DNS
providers directly and ingests DMARC reports from a mailbox, and PosturePortal connects to nothing at
all — it reads the findings the others have already written.
A finding becomes evidence
ShareCare finds an external share. SecurityPortal finds a Conditional Access gap. Both land in
CompliancePortal already tagged to the controls they satisfy — so the thing you fixed is the
thing your auditor sees, with no export in between.
Each product asks for its own consent
Every product has its own Entra app, scoped to what that product needs — so nothing inherits
permissions it has no use for, and revoking one product revokes exactly one. Adding a product is
a second consent, through the same onboarding you already know.
Every product answers to the same trail
Whatever any product checked, changed or waived is in one hash-chained record you can show a
client or an auditor. Waivers expire on their own; nothing quietly stays green.