Aegis Eight

Permissions Aegis Eight requests

Aegis Eight is a read-only, multi-tenant Microsoft Entra application. When a Global Administrator grants consent, it can read the security configuration needed to assess your Essential Eight posture — and nothing else.

The short version

What we access

  • Security and policy configuration (e.g. Conditional Access, MFA policies)
  • Which MFA and authentication methods are registered
  • Device compliance and operating-system version state
  • Admin roles and privileged-access configuration
  • Microsoft 365 Backup protection and restore evidence

What we never access

  • Your email or mailbox content
  • Your files in OneDrive or SharePoint
  • Your Teams messages
  • Passwords or MFA settings — we cannot change anything
  • Any tenant other than the one that granted consent

Why we need these permissions

Each permission maps to a specific ASD Essential Eight control. Aegis Eight requests the minimum set of read scopes required to score your maturity automatically — instead of relying on a questionnaire. The detailed breakdown below names every scope, what it reads, and which control it supports.

For the wider operational picture — data flows, retention, tenant isolation, sub-processors — see the Security & Privacy page.

We preserve evidence, not just a score

Most Essential Eight tools are questionnaire engines with a few API checks bolted on. Aegis Eight is different: every Graph response that informs a finding is captured, sha256-hashed, and the hash is stamped into the finding itself.

The result is a cryptographically verifiable evidence chain — an auditor, cyber insurer, or regulator can confirm that the data we scored is exactly what your tenant returned, without taking our word for it. See how it works in the evidence-chain section of the whitepaper.

Detailed permission breakdown

Every permission below is read-only.

AuditLog.Read.All

Reads the Microsoft Graph authentication-methods registration report (who has MFA registered) and Entra ID sign-in logs (whether MFA was actually requested on real sign-ins, including any privileged-user bypass).

Essential Eight control: Multi-factor authentication

UserAuthenticationMethod.Read.All

Identifies which MFA methods users have configured so Aegis Eight can detect phishing-resistant factors (Authenticator, FIDO2, Windows Hello).

Essential Eight control: Multi-factor authentication

User.Read.All

Resolves user identifiers to user principal names in findings (e.g. "[email protected] has no MFA registered").

Essential Eight control: MFA, Restrict administrative privileges

Directory.Read.All

Reads tenant organisation details (display name, verified domain) and group memberships used for context.

Essential Eight control: Restrict administrative privileges

Policy.Read.All

Lists Conditional Access policies and runs Microsoft’s what-if simulator to determine whether MFA or block controls would apply to real sign-in scenarios (e.g. privileged user from an untrusted location).

Essential Eight control: Multi-factor authentication, Restrict administrative privileges

RoleManagement.Read.Directory

Counts Global Administrators and other privileged role members, and reads Privileged Identity Management eligibility schedules, active JIT activations, and activation request history (Entra ID P2).

Essential Eight control: Restrict administrative privileges

DeviceManagementManagedDevices.Read.All

Reads device compliance state and operating-system version information. Where available, Aegis Eight uses these signals as evidence of patch deployment and patch timeliness against ASD’s Patch operating systems and Patch applications strategies. (Compliance state is a deployment signal, not a guarantee that every individual update is installed.)

Essential Eight control: Patch operating systems, Patch applications

DeviceManagementConfiguration.Read.All

Reads Intune configuration profiles to detect application control, Office macro, and user-application hardening policies assigned in the tenant.

Essential Eight control: Application control, Configure Office macros, User application hardening

DeviceManagementScripts.Read.All

Reads platform script run states for the opt-in synthetic application-control test (verifies a test executable was blocked on the sentinel device).

Essential Eight control: Application control

BackupRestore-Configuration.Read.All

Reads Microsoft 365 Backup protection policies for Exchange, SharePoint, and OneDrive to confirm important data is being backed up at the cadence and retention you have configured.

Essential Eight control: Regular backups

BackupRestore-Restore.Read.All

Reads recovery points (evidence that backups are occurring) and restore sessions (evidence that restoration activities have been performed) so Aegis Eight can score ASD’s "restoration is tested as part of disaster recovery exercises" requirement automatically.

Essential Eight control: Regular backups

Opt-in modules for broader Essential Eight coverage

These permissions are grouped into optional capability modules, each backed by its own read-only Microsoft Entra application registration. The core scan above uses a single core app; each module below is a separate app you consent to only if you enable it (per ADR-0010). Modules you do not enable are never granted at the Microsoft layer. Enabling a module later triggers its own admin-consent screen — never bundled with the core app.

Identity Risk

Adds Entra ID Identity Protection signals (risky users, risk detections) to detect compromised or at-risk accounts that undermine MFA effectiveness.

IdentityRiskyUser.Read.AllOPTIONAL

Reads the risky-users register so Aegis Eight can flag accounts left enabled while in an active medium/high risk state — a direct signal that MFA controls were bypassed or an account is compromised.

Why we’d ask: At-risk enabled-user findings and account-compromise detection.

Essential Eight control: Multi-factor authentication (effectiveness)

IdentityRiskEvent.Read.AllOPTIONAL

Reads risk detections (leaked credentials, impossible travel, anonymous IP, high-risk sign-ins) to quantify recent identity threats against the tenant.

Why we’d ask: Recent risk-detection counts and top risk event types.

Essential Eight control: Multi-factor authentication (effectiveness)

Security Operations

Surfaces open Microsoft 365 Defender incidents, Secure Score cross-checks, and Defender TVM patch-age evidence.

SecurityIncident.Read.AllOPTIONAL

Reads open Microsoft 365 Defender incidents (severity, status, age) as incident-response and security-governance evidence.

Why we’d ask: Open / stale high-severity incident reporting for governance and cyber insurance.

Essential Eight control: Security governance (supplementary)

SecurityEvents.Read.AllOPTIONAL

Reads the Microsoft Secure Score and Secure Score control profiles (Graph endpoints /security/secureScores and /security/secureScoreControlProfiles) to cross-check Essential Eight posture. SecurityEvents.Read.All is the documented least-privilege permission for these endpoints.

Why we’d ask: Secure Score cross-check appendix and security event context.

Essential Eight control: All strategies (supplementary context)

ThreatHunting.Read.AllOPTIONAL

Queries Microsoft Defender for Endpoint vulnerability data to assess patch-window compliance beyond Intune compliance proxies.

Why we’d ask: Defender TVM patch-age evidence (Good tier) for patch controls.

Essential Eight control: Patch operating systems, Patch applications

Governance

Adds tenant governance signals such as role-assignable group hygiene for ISO 27001 / NIST / CIS alignment.

Group.Read.AllOPTIONAL

Reads role-assignable groups (privileged groups that can be granted directory roles) and flags any containing guest accounts.

Why we’d ask: Role-assignable group hygiene findings (guest members in privileged groups).

Essential Eight control: Restrict administrative privileges

Reports.Read.AllOPTIONAL

Reads tenant usage and activity reports to identify licensed-but-inactive users and dormant accounts for governance reviews.

Why we’d ask: Inactive licensed-user and dormant-account governance reporting.

Essential Eight control: Security governance (supplementary)

Data-handling promises

Full details, sub-processor list, and certification posture in the Security & Privacy whitepaper.

Revoking consent

A Global Administrator can remove Aegis Eight’s access at any time via Microsoft Entra admin centre → Enterprise applications → Aegis Eight → Properties → Delete. Revocation is immediate from Microsoft’s side: any subsequent API call from Aegis Eight fails authorization and no new tenant data can be collected. Aegis Eight detects the loss of access on the next scan attempt and stops. You can additionally request deletion of any data already collected (purged within 30 days — see the Security & Privacy whitepaper).

Questions about a specific permission? Email [email protected]. For the full operational detail, see the Security & Privacy whitepaper.