Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Handbuch werden die Schritte beschrieben, die zum Bereitstellen und Erzwingen des Tokenschutzes für Anmeldesitzungstoken erforderlich sind, die von Webanwendungen (browserbasierten) Anwendungen verwendet werden, die auf Azure Resource Manager (ARM) zugreifen.
Eine Übersicht über den Tokenschutz und die unterstützten Plattformen finden Sie unter Token Protection in Microsoft Entra Conditional Access. Lesen Sie die Übersichtsdokumentation, bevor Sie dieses Bereitstellungshandbuch verwenden.
Note
Tokenschutz für Webanwendungen befindet sich derzeit in der Vorschau. Vorschaufeatures befinden sich noch in der Entwicklung, und ihre Funktionen können sich im Laufe der Zeit ändern. Diese Funktionen sind vor einer offiziellen Veröffentlichung verfügbar, damit Kunden frühzeitig zugreifen und Feedback geben können.
Note
Da sich die Unterstützung für Webanwendungen in der Vorschau befindet, empfehlen wir, zuerst Tokenschutz für systemeigene Anwendungen bereitzustellen, einschließlich der Erzwingung der Richtlinie für mindestens eine Pilotgruppe von Benutzern, bevor Sie diese Vorschau für Webanwendungen ausprobieren. Anleitungen finden Sie in den Bereitstellungshandbüchern für Windows- und Apple-Geräte.
Voraussetzungen
Für die Verwendung dieses Features sind Microsoft Entra ID P1-Lizenzen erforderlich. Informationen zur richtigen Lizenz für Ihre Anforderungen finden Sie unter Vergleich der allgemein verfügbaren Features von Microsoft Entra ID.
Unterstützte Anwendungen, Ressourcen und Browser
Applications
- Azure portal
- Microsoft Intune Admin Center
- Microsoft Entra Verwaltungszentrum
- Microsoft Engage Center
- Microsoft Hub einbinden
Nur die vorherigen Webanwendungen werden unterstützt. Der Zugriff der Benutzer auf andere Webanwendungen, die auf ARM zugreifen, wird blockiert , wenn die Richtlinie erzwungen wird. Die wichtigsten Webanwendungen, die auf ARM zugreifen, aber nicht unterstützt werden, sind jedoch nicht beschränkt auf:
- Microsoft 365 Security and Compliance Center
- Microsoft AppSource
- Azure Data Factory
- Azure AI Studio-App
- Azure Synapse Studio
- Microsoft Power BI
- Microsoft Entwicklerportal
- Azure OpenAI Studio
- Admin Center von Power Platform
Unterstützte Ressourcen
- Azure Resource Manager (ARM), konfiguriert in bedingtem Zugriff als Windows Azure Dienstverwaltungs-API-Ressource.
Unterstützte Plattformen und Browser
| Platform | Unterstützte Browser | Geräteanforderung |
|---|---|---|
| Windows 11 (Build 26100.8246 / 26200.8246 oder höher) | Microsoft Edge, Google Chrome | Microsoft Entra beigetreten, hybrid eingebunden oderregistriert 1 |
| macOS | Microsoft Edge, Google Chrome | Nur mdmverwaltet |
1 Einige Geräteregistrierungstypen werden nicht unterstützt. Sehen Sie sich die Liste der nicht unterstützten Geräteregistrierungstypen an.
Aktivieren des Tokenschutzes für ARM auf Windows und macOS
Um die Wahrscheinlichkeit von Benutzerunterbrechungen aufgrund von App-, Browser- oder Geräteinkompatibilität zu minimieren, befolgen Sie die folgenden Empfehlungen:
- Beginnen Sie mit einer Pilotgruppe von Benutzern, und erweitern Sie sie im Laufe der Zeit.
- Erstellen Sie eine Richtlinie für bedingten Zugriff für den Tokenschutz im Nur-Bericht-Modus , bevor Sie sie erzwingen.
- Erfassen Sie interaktive und nicht interaktive Anmeldeprotokolle.
- Analysieren Sie diese Protokolle lang genug, um die normale Anwendungsverwendung abzudecken. Anweisungen zum Analysieren und Verstehen der Auswirkungen der Benutzer werden in den folgenden Abschnitten beschrieben.
- Fügen Sie bekannte, zuverlässige Benutzer zu einer Benutzergruppe hinzu und erzwingen Sie die Richtlinie.
Dieser Prozess hilft bei der Bewertung der Bereitschaft Ihrer Benutzer zur Erzwingung des Tokenschutzes.
Schritt 1: Konfigurieren von Endbenutzergeräten
Führen Sie auf jedem Gerät entweder manuell oder über Gruppenrichtlinien oder Intune die folgenden Schritte aus.
Windows
Stellen Sie sicher, dass das Gerät Windows 11 Build 26100.8246 / 26200.8246 oder höher ausgeführt wird.
Aktivieren Sie diese Vorschau, indem Sie den folgenden Registrierungswert festlegen:
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\BrowserCore] "EnablePlatformAuth"=dword:00000001Installieren Sie die Browsererweiterung Microsoft single Sign-On:
- Google Chrome: Installieren Sie Microsoft einmaliges Anmelden aus dem Chrome Web Store, wählen Sie "Zur Chrome-Erweiterung>hinzufügen" aus, und bestätigen Sie, dass sie auf der Symbolleiste angezeigt wird.
-
Microsoft Edge: Wechseln Sie zu
edge://extensions, aktivieren Sie Erweiterungen aus anderen Stores zulassen, installieren Sie die Microsoft Single Sign On-Erweiterung, und bestätigen Sie, dass sie aktiviert ist.
macOS
- Installieren Sie die Microsoft Unternehmensportal, oder stellen Sie sie über Ihre MDM-Lösung bereit. Unternehmensportal dient als Authentifizierungsbroker für Microsoft Entra Anmeldungen.
- Aktivieren Sie die hardwaregestützte Registrierung mit einer der folgenden Optionen:
- Option A: Aktivieren Sie das Microsoft Enterprise-SSO-Plug-In.
- Option B: Konfigurieren von Plattform-SSO für macOS. Plattform-SSO verwendet standardmäßig hardwaregestützten Speicher und erfordert keine zusätzliche Flagkonfiguration. Anweisungen zum Einrichten finden Sie unter Configure Platform SSO für macOS-Geräte in Microsoft Intune.
- Installieren Sie die browsererweiterung Microsoft Single Sign-On in Microsoft Edge oder Google Chrome, wie im vorherigen abschnitt Windows beschrieben.
Was sie nach Schritt 1 erwarten müssen
Sobald das Gerät die Voraussetzungen und Konfigurationen erfüllt, beenden Authentifizierungsanforderungen von unterstützten Anwendungen und Browsern vollständig im Browser und werden stattdessen vom Plattformauthentifizierungsbroker verarbeitet. Dieses Verhalten ermöglicht es diesen Anwendungen, gerätegebundene Anmeldesitzungstoken wie primäre Aktualisierungstoken (PRTs) zu verwenden und die Richtlinie für den bedingten Zugriff mit Tokenschutz zu erfüllen.
Planen Sie Folgendes:
- Lassen Sie mindestens 24 Stunden zu, bis die Änderung wirksam wird. Der Wechsel zur brokerbasierten Authentifizierung erfolgt nicht unmittelbar nach Anwendung des Registrierungswerts, der Erweiterung oder des Plattform-SSO-Profils. Wechseln Sie erst nach Schritt 2, wenn dieses Fenster übergeben wird, oder ihre nur berichtsgeschützten Daten zeigen die Bereitschaft nicht genau an.
- Der Übergang erfolgt in den meisten Fällen automatisch. Benutzer ergreifen im Allgemeinen keine Maßnahmen; Vorhandene Browsersitzungen funktionieren weiterhin, während die Änderung verteilt wird.
- Einige Benutzer sehen ein kurzes Anmeldedialogfeld. Während der Vorschau wird benutzern, die auf das Azure Portal zugreifen, möglicherweise kurz ein "Anmelden... " Meldung, dass ein neues Fenster geöffnet wird. Es wird kein neues Fenster angezeigt, und es ist keine Benutzeraktion erforderlich, und die Anmeldung wird eigenständig abgeschlossen. Optional kommunizieren Sie dieses Verhalten im Voraus mit Ihrer Pilotgruppe, sodass es nicht als Fehler gemeldet wird.
Schritt 2: Erstellen der Richtlinie für bedingten Zugriff im modus "Nur Bericht"
Nachdem Sie 24 Stunden nach Abschluss von Schritt 1 gewartet haben, können Sie weiterhin eine Richtlinie im Nur-Bericht-Modus festlegen, um die Erzwingungsbereitschaft zu überprüfen.
- Melden Sie sich bei der Microsoft Entra Admin Center als Administrator für bedingten Zugriff an.
- Navigieren Sie zu Entra ID>Conditional Access>Policies, und wählen Sie dann "Neue Richtlinie" aus, und geben Sie ihm einen Namen.
- Schließen Sie unter "Benutzer von> Aufgaben" Ihre Pilot- oder Testbenutzer ein. Schließen Sie nicht die Notfallzugriffs- oder Break-Glass-Konten Ihrer Organisation ein.
- Wählen Sie unter "Ressourcen für Zielressourcen>" (früher Cloud-Apps)>> "Ressourcen auswählen" Windows Azure Dienstverwaltungs-API aus.
- Legen Sie unter Bedingungen>Geräteplattformen "Konfigurieren" auf "Ja" fest, und schließen Sie Windows, macOS oder beides ein.
- Legen Sie unter Bedingungen>Client-Apps " Konfigurieren" auf "Ja " fest, und schließen Sie "Browser" ein. Stellen Sie sicher, dass Sie für diese Vorschau keine mobilen Apps und Desktopclients auswählen.
- Wählen Sie unter "Sitzung für Zugriffssteuerungen>" die Option "Tokenschutz für Anmeldesitzungen anfordern" und dann "Auswählen" aus.
- Legen Sie Richtlinie aktivieren auf Nur Bericht fest, und wählen Sie Erstellen aus.
Tip
Da Richtlinien für bedingten Zugriff, die tokenschutz erfordern, derzeit nur für Windows- und Apple-Geräte verfügbar sind, müssen Sie Ihre Umgebung vor potenzieller Richtlinienumgehung schützen, wenn ein Angreifer möglicherweise von einer anderen Plattform stammen könnte.
Darüber hinaus sollten Sie die folgenden Richtlinien konfigurieren:
Schritt 3: Überprüfen der Durchsetzungsbereitschaft mit Protokollen und Metriken
Nachdem die Report-only-Richtlinie eingerichtet und ausgeführt wurde, sollten Sie den Einfluss der Richtlinie überprüfen, Ihre Sign-In-Protokolle analysieren und mit Log Analytics untersuchen, um die Bereitschaft zur Durchsetzung zu überprüfen.
Anmeldeprotokolle
So zeigen Sie an, um Token Protection-bezogene Anmeldevorgänge im Admin-Center anzuzeigen:
- Melden Sie sich beim Microsoft Entra Admin Center mindestens als Administrator für bedingten Zugriff an.
- Navigieren Sie zu
Entra ID Überwachung & Gesundheit Sign-In-Protokollen . - Fügen Sie der Ansicht die Spalte "Tokenschutz – Anmeldesitzungsstatuscode " hinzu, um verwandte Anmeldeereignisse schnell anzuzeigen. Filtern Sie außerdem nach der Azure Resource Manager Ressource, und legen Sie die Client-App auf Browser fest, um die Anmeldeanforderungen im Zusammenhang mit dieser Vorschau zu isolieren.
- Wählen Sie das Anmeldeereignis aus, das Sie untersuchen.
- Überprüfen Sie die Registerkarten "Bedingter Zugriff " und " Nur Bericht" je nach Richtlinienstatus, und wählen Sie Ihre Tokenschutzrichtlinie aus.
- Überprüfen Sie unter "Sitzungssteuerelemente", ob die Richtlinienanforderungen erfüllt wurden.
- Wählen Sie die Registerkarte "Grundlegende Informationen " aus, und überprüfen Sie das Feld "Tokenschutz – Anmeldesitzung" , um weitere Informationen zu erhalten.
Die Anmeldeprotokolle enthalten eine tokenProtectionStatusDetails Eigenschaft, die angibt, ob eine Anforderung ein gerätegebundenes Token verwendet:
"tokenProtectionStatusDetails": {
"signInSessionStatus": "bound | unbound",
"signInSessionStatusCode": <code>
}
Note
Nur unter macOS werden Benutzer auf Geräten, die für Microsoft Entra ID registriert wurden, bevor die Tokenschutzrichtlinie erzwungen wurde, aufgefordert, die Authentifizierung erneut zu authentifizieren, nachdem die Richtlinie erzwungen wurde. Sie schließen ein einmaliges Geräteregistrierungsupgrade ab, das durch erneutes Anmelden für den Zugriff auf Ressourcen erreicht wird. Sie können diese Benutzer anhand der Statuscodes 1003 und 1004 identifizieren. Da Benutzer in diesem Zustand sich selbst korrigieren können, sind sie für die Richtlinienerzwingung berechtigt.
Anmeldesitzungsstatuscodes
Um zu verstehen, warum eine Anforderung als ungebunden angezeigt wird oder um zu ermitteln, auf welche Benutzer Sie die Richtlinie anwenden können, lesen Sie die folgenden Statuscodes.
| Statuscode | Description | Aktion erforderlich |
|---|---|---|
| 1002 | Ungebunden – Anforderung ist aufgrund des Fehlenden Microsoft Entra ID Gerätezustands ungebunden. | Der Benutzer muss das Gerät registrieren oder beitreten. |
| 1003 | Ungebunden – Gerät, das nicht mit sicheren Anmeldeinformationen registriert ist (Legacyregistrierung). |
Windows: Dieser Fehler kann auf einen nicht unterstützten Geräteregistrierungstyp zurückzuführen sein, oder das Gerät wurde nicht mit den anmeldeinformationen für die neu angemeldete Anmeldung registriert. macOS: Der Benutzer führt ein einmaliges Geräteregistrierungsupgrade aus (selbsterrichtbar). |
| 1004 (nur macOS) | Ungebunden – Die Geräteregistrierung wird nicht hardwaregesichert. | Der Benutzer führt ein einmaliges Geräteregistrierungsupgrade aus (selbsterrichtbar). |
| 1005 | Ungebunden – nicht angegebener Grund. | Variiert; untersuchen mit der Korrelations-ID. |
| 1006 | Ungebunden – Betriebssystemversion wird nicht unterstützt. | Der Benutzer aktualisiert das Betriebssystem auf Windows 11 Build 26100.8246 / 26200.8246 oder höher oder auf eine unterstützte macOS-Version. |
| 1007 | Ungebunden – nicht hardwaregesichert; der angemeldete Benutzer nicht der registrierte Gerätebesitzer ist. | Der Benutzer registriert sich erneut, oder der registrierte Besitzer führt das Upgrade aus. |
| 1008 | Ungebunden – Der Client verwendet keinen Authentifizierungsbroker, z. B. WAM. | Der Client ist nicht in den Plattformbroker integriert, oder der Broker oder die Erweiterung ist nicht installiert. Installieren und aktivieren Sie für Browser die Microsoft Single Sign-On-Erweiterung, und aktivieren Sie die Plattformauthentifizierung. |
Tip
Für das Browserszenario sind 1008 und 1002 die Codes, die während des Onboardings am häufigsten angezeigt werden. Sie bedeuten in der Regel, dass die Microsoft Single Sign-On Browsererweiterung fehlt oder deaktiviert ist, die Plattformauthentifizierung nicht aktiviert ist (auf Windows, der EnablePlatformAuth Registrierungswert ist nicht festgelegt), ein nicht unterstützter Browser wie Firefox oder Safari verwendet wird oder die App den Tokenschutz nicht unterstützt.
Identifizieren von selbstbehebungsfähigen Benutzern (nur macOS)
Unter macOS können Die Codes 1003 und 1004 über ein einmaliges Geräteregistrierungsupgrade selbst wartungsfähig sein.
Um Anforderungen zu identifizieren, die mit der Benutzeraktion kompatibel oder upgradebar sind, filtern Sie nach:
-
signInSessionStatus == boundoder -
signInSessionStatus == unbound1003mitsignInSessionStatusCodeoder1004.
Beispiel Microsoft Graph Abfrage für nicht interaktive Anmeldungen:
GET https://graph.microsoft.com/beta/auditLogs/signIns?$filter=(
signInEventTypes/any(t: t eq 'nonInteractiveUser')
and resourceDisplayName eq 'Azure Resource Manager'
and (tokenProtectionStatusDetails/signInSessionStatusCode eq 1003
or tokenProtectionStatusDetails/signInSessionStatusCode eq 1004
or tokenProtectionStatusDetails/signInSessionStatus eq 'bound'))
Wenn der Tokenschutz für diese Benutzer erzwungen wird, werden sie aufgefordert, sich erneut anzumelden, und können nach Abschluss der Authentifizierung auf Ressourcen zugreifen.
Log Analytics
Sie können auch Log Analytics verwenden, um interaktive und nicht interaktive Anmeldeprotokolle nach Anforderungen abzufragen, die aufgrund von Tokenschutz-Erzwingungsfehlern blockiert wurden. Diese Abfragen sind nur Beispiele und können geändert werden. Sie filtern nach der Azure Resource Manager Ressource und fügen Bereitschaftsmetriken hinzu, damit Sie harte Blöcke von selbstbehebungsfähigen Blöcken unterscheiden können.
Anfragen pro Anwendung
In der folgenden Beispielabfrage werden die nicht interaktiven Anmeldeprotokolle für die letzten sieben Tage durchsucht, blockierte und zulässige Anforderungen an ARM nach Anwendung hervorgehoben und Blöcke gekennzeichnet, die Benutzer selbst korrigieren können.
SigninLogs Tauschen Sie sich aus, um stattdessen interaktive Browseranmeldungen zu überprüfen.
// Select the log to query (SigninLogs or AADNonInteractiveUserSignInLogs)
// SigninLogs
AADNonInteractiveUserSignInLogs
// Adjust the time range below
| where TimeGenerated > ago(7d)
| project Id, ConditionalAccessPolicies, Status, UserPrincipalName, AppDisplayName,
ResourceDisplayName, TokenProtectionStatusDetails
| where ConditionalAccessPolicies != "[]"
| where ResourceDisplayName == "Azure Resource Manager"
// Add UserPrincipalName if you want to filter to a specific user
// | where UserPrincipalName == "<user_principal_name>"
| mv-expand todynamic(ConditionalAccessPolicies)
| where ConditionalAccessPolicies["enforcedSessionControls"] contains '["Binding"]'
or ConditionalAccessPolicies["enforcedSessionControls"] contains '["SignInTokenProtection"]'
| where ConditionalAccessPolicies.result != "reportOnlyNotApplied"
and ConditionalAccessPolicies.result != "notApplied"
| extend SessionNotSatisfyResult = ConditionalAccessPolicies["sessionControlsNotSatisfied"]
| extend Result = case(
SessionNotSatisfyResult contains 'SignInTokenProtection'
or SessionNotSatisfyResult contains 'Binding', 'Block', 'Allow')
| extend parsedBindingDetails = parse_json(TokenProtectionStatusDetails)
| extend bindingStatusCode = tostring(parsedBindingDetails["signInSessionStatusCode"])
| extend IsSelfRemediable = Result == "Block"
and (bindingStatusCode == "1003" or bindingStatusCode == "1004")
| summarize by Id, UserPrincipalName, AppDisplayName, Result, IsSelfRemediable
| summarize Requests = count(),
Users = dcount(UserPrincipalName),
Allow = countif(Result == "Allow"),
Block = countif(Result == "Block"),
BlockSelfRemediable = countif(IsSelfRemediable == true),
BlockedUsers = dcountif(UserPrincipalName, Result == "Block"),
BlockedUsersSelfRemediable = dcountif(UserPrincipalName, IsSelfRemediable == true)
by AppDisplayName
| extend PctAllowed = round(100.0 * Allow / (Allow + Block), 2)
| extend PctEnforceable = round(100.0 * (Allow + BlockSelfRemediable) / (Allow + Block), 2)
| project AppDisplayName, Requests, Users, Allow, Block,
BlockSelfRemediable, BlockedUsers, BlockedUsersSelfRemediable,
PctAllowed, PctEnforceable
| sort by Requests desc
Anforderungen nach Benutzer
Die folgende Abfrage untersucht die nicht interaktiven Anmeldeprotokolle für die letzten sieben Tage, wobei blockierte und zulässige Anforderungen an ARM vom Benutzer hervorgehoben werden, wobei die gleichen selbsterwachbaren und erzwingbaren Metriken vorhanden sind.
// Per-user query for the Azure portal -> ARM web app scenario
// SigninLogs
AADNonInteractiveUserSignInLogs
// Adjust the time range below
| where TimeGenerated > ago(7d)
| project Id, ConditionalAccessPolicies, UserPrincipalName, AppDisplayName,
ResourceDisplayName, TokenProtectionStatusDetails
| where ConditionalAccessPolicies != "[]"
| where ResourceDisplayName == "Azure Resource Manager"
// Add UserPrincipalName if you want to filter to a specific user
// | where UserPrincipalName == "<user_principal_name>"
| mv-expand todynamic(ConditionalAccessPolicies)
| where ConditionalAccessPolicies["enforcedSessionControls"] contains '["Binding"]'
or ConditionalAccessPolicies["enforcedSessionControls"] contains '["SignInTokenProtection"]'
| where ConditionalAccessPolicies.result != "reportOnlyNotApplied"
and ConditionalAccessPolicies.result != "notApplied"
| extend SessionNotSatisfyResult = ConditionalAccessPolicies.sessionControlsNotSatisfied
| extend Result = case(
SessionNotSatisfyResult contains 'SignInTokenProtection'
or SessionNotSatisfyResult contains 'Binding', 'Block', 'Allow')
| extend parsedBindingDetails = parse_json(TokenProtectionStatusDetails)
| extend bindingStatusCode = tostring(parsedBindingDetails["signInSessionStatusCode"])
| extend IsSelfRemediable = Result == "Block"
and (bindingStatusCode == "1003" or bindingStatusCode == "1004")
| summarize by Id, UserPrincipalName, AppDisplayName, ResourceDisplayName, Result, IsSelfRemediable
| summarize Requests = count(),
Allow = countif(Result == "Allow"),
Block = countif(Result == "Block"),
BlockSelfRemediable = countif(IsSelfRemediable == true)
by UserPrincipalName, AppDisplayName, ResourceDisplayName
| extend PctAllowed = round(100.0 * Allow / (Allow + Block), 2)
| extend PctEnforceable = round(100.0 * (Allow + BlockSelfRemediable) / (Allow + Block), 2)
| project UserPrincipalName, AppDisplayName, ResourceDisplayName,
Requests, Allow, Block, BlockSelfRemediable,
PctAllowed, PctEnforceable
| sort by UserPrincipalName asc
Schritt 4: Erzwingen der Richtlinie
Verschieben Sie nach der Überprüfung der Anmeldeprotokolldaten und der Bestätigung, dass Ihre Zielbenutzer und Geräte bereit sind, den Schalter für „Richtlinie aktivieren“ von „Nur Bericht“ auf „Ein“.