Connect and baseline
Delegated read-only Graph consent, register domains and websites, run the first assessment.
Monitoring
A clean assessment stops being true the first time an administrator changes something. Continuous monitoring is the schedule that re-checks each tenant, detects what changed, and gets the ones that matter to the right person. SecurityScore.me runs it across the whole portfolio.
Monitoring is a set of scheduled checks per customer workspace, each comparing the current result against the previous run.
The full posture assessment runs again on a schedule: Secure Score, Conditional Access, Defender, identity signals, sharing, and admin configuration. A control that changed state since the last run becomes a finding.
Each run is compared against both the tenant’s baseline and its previous result, so the output is "what moved" rather than a fresh wall of settings to re-read every time.
Conditional Access policy state, new exclusions, MFA registration, and privileged role changes, because identity is where regressions appear fastest and matter most.
A policy that was enforced last week and is report-only this week, or an account added to an exclusion, is the kind of change that never generates a portal notification and is exactly what monitoring is for.
DNS and email authentication, exposed services, and web checks for the customer’s registered domains and websites, so a firewall rule opened this week is caught this week.
Passive subdomain discovery runs alongside, so a host that appears between reviews is picked up rather than waiting for someone to tell you it exists.
TLS certificates across every customer domain and every discovered subdomain, with tiered warnings so renewals are scheduled rather than scrambled.
Expiry is entirely predictable and still causes outages, because across a portfolio no single person owns the renewal calendar. A rollup with lead-time and urgent tiers puts that back in view.
Detecting a change is only useful if it reaches someone. Routing is configured per customer and per team so monitoring does not become noise.
Decide which monitoring events generate a notification, based on severity and event type, so a new critical finding is treated differently from an informational change.
The same mechanism decides what stays silent. Routine informational changes are recorded in the activity log and the findings queue without paging anyone.
Assign recipients so the technician who owns a customer, or the customer contact, gets the events for that customer rather than every event for every client.
Groups map to how the MSP is actually structured: a pod that owns a set of customers, an on-call rota, or a single escalation address for critical findings only.
Because alerts are scoped by severity and by customer, the volume stays low enough that people still read them. An alert stream nobody opens is the same as no monitoring.
Delegated read-only Graph consent, register domains and websites, run the first assessment.
Set scan schedules, notification policies, and alert groups for the customer.
Scheduled checks raise changed findings; alerts route to the owner while the change is fresh.
Customer reports show what monitoring caught and resolved since the last review.
The posture state that monitoring keeps current.
Notification policies, alert groups, and routing in detail.
Where changed findings from monitoring land.
The baseline monitoring compares each run against.
The external asset checks on the monitoring schedule.
How monitoring fits the wider MSP workflow.