Skip to content

CA What-If Simulation

Die Conditional Access What-If Simulation evaluiert CA Policies gegen simulierte Anmeldeszenarien -- vollständig offline ohne Graph API-Aufrufe. Alle Evaluierungen werden anhand von Snapshot-Daten durchgeführt.


Übersicht

Conditional Access Policies sind komplex und interagieren auf nicht offensichtliche Weise miteinander. Die What-If Simulation ermöglicht Administratoren, die Auswirkungen ihrer CA-Konfiguration zu verstehen, bevor Änderungen in Produktion gehen -- oder bestehende Konfigurationen aus erfassten Snapshots zu analysieren.

Kernfunktionen

  • Offline-Evaluation ohne Live-API-Calls zum Tenant
  • 10 vordefinierte Preset-Szenarien für gängige Anmeldesituationen
  • Benutzerdefinierte Szenarien mit granularer Parametrisierung
  • Policy-Konflikterkennung und -Analyse
  • Empfehlungen zur Policy-Verbesserung
  • Integration mit Snapshot-Daten für historische Analyse

Funktionsweise

flowchart LR
    A[Snapshot-Daten<br>CA Policies] --> C[CA What-If Engine]
    B[Anmeldeszenario<br>definieren] --> C
    C --> D[Jede Policy<br>evaluieren]
    D --> E{Ergebnis}
    E --> F[Zugelassen]
    E --> G[Zugelassen mit Controls]
    E --> H[Blockiert]
    D --> I[Konflikte erkennen]
    D --> J[Empfehlungen generieren]

Die Engine laedt alle CA Policies aus dem Snapshot, evaluiert jede Policy gegen das definierte Szenario und bestimmt:

  • Welche Policies greifen
  • Welche Grant Controls erforderlich sind
  • Ob Konflikte zwischen Policies bestehen

10 Preset-Szenarien

Szenario Beschreibung
External User Login Gastbenutzer meldet sich von ausserhalb der Organisation an
Admin Portal Access Administrator greift auf Azure Portal zu
Mobile Device Access Benutzer meldet sich von nicht-verwaltetem Mobilgeraet an
Legacy Client Anwendung verwendet Legacy-Authentifizierungsprotokoll
Risky Sign-In Anmeldung als mittleres oder hohes Risiko eingestuft
New Device Benutzer meldet sich von nicht-registriertem Gerät an
VPN Connection Benutzer verbindet sich über VPN-Endpoint
Trusted Location Benutzer meldet sich von vertrauenswuerdigem Named Location an
Service Account Service Principal-Authentifizierung
Break-Glass Access Notfallzugangs-Konto-Anmeldung

Benutzerdefinierte Szenarien

Neben Presets können benutzerdefinierte Szenarien erstellt werden:

{
  "user": {
    "type": "member",
    "roles": ["Global Administrator"],
    "groups": ["IT Security Team"],
    "riskLevel": "none"
  },
  "device": {
    "platform": "Windows",
    "compliant": true,
    "managed": true
  },
  "application": {
    "id": "00000003-0000-0000-c000-000000000000",
    "name": "Microsoft Graph"
  },
  "location": {
    "type": "trusted",
    "countryCode": "DE"
  },
  "clientApp": "browser"
}

Simulationsergebnisse

{
  "scenario": "Admin Portal Access",
  "outcome": "allowed_with_controls",
  "appliedPolicies": [
    {
      "policyName": "MFA für Admins erfordern",
      "state": "enabled",
      "applies": true,
      "grantControls": ["mfa"],
      "sessionControls": ["signInFrequency:1h"]
    },
    {
      "policyName": "Legacy Auth blockieren",
      "state": "enabled",
      "applies": false,
      "reason": "Client App-Bedingung nicht erfüllt"
    }
  ],
  "requiredControls": ["mfa"],
  "conflicts": [],
  "recommendations": [
    "Device Compliance-Anforderung für Admin-Zugriff hinzufügen erwägen"
  ]
}

API-Endpoints

Methode Endpoint Beschreibung
POST /api/v1/ca-whatif/simulate What-If Simulation ausführen
GET /api/v1/ca-whatif/scenarios Preset-Szenarien auflisten
POST /api/v1/ca-whatif/scenarios Benutzerdefiniertes Szenario erstellen

Best Practices

  1. Vor Änderungen simulieren -- Policy-Änderungen immer zuerst in der Simulation testen
  2. Alle Presets durchlaufen -- Regelmäßig alle 10 Szenarien gegen aktuelle Konfiguration testen
  3. Break-Glass-Zugang validieren -- Sicherstellen, dass Notfallkonten nicht durch CA Policies blockiert werden
  4. Konflikte untersuchen -- Erkannte Policy-Konflikte zeitnah beheben
  5. Historische Snapshots vergleichen -- Simulation gegen verschiedene Snapshot-Zeitpunkte ausführen um Policy-Evolution zu verstehen