Was ist ein primäres Aktualisierungstoken (Primary Refresh Token, PRT)?What is a Primary Refresh Token?

Ein primäres Aktualisierungstoken (Primary Refresh Token, PRT) ist ein Schlüsselartefakt der Azure AD-Authentifizierung auf Geräten mit Windows 10, Windows Server 2016 und höheren Versionen, iOS und Android.A Primary Refresh Token (PRT) is a key artifact of Azure AD authentication on Windows 10, Windows Server 2016 and later versions, iOS, and Android devices. Es handelt sich um ein JSON Web Token (JWT), das speziell für Microsoft-Erstanbieter-Tokenbroker ausgestellt wird, um einmaliges Anmelden (Single Sign-On, SSO) für die Anwendungen zu ermöglichen, die auf diesen Geräten verwendet werden.It is a JSON Web Token (JWT) specially issued to Microsoft first party token brokers to enable single sign-on (SSO) across the applications used on those devices. Dieser Artikel enthält Details dazu, wie ein PRT auf Windows 10-Geräten ausgestellt, verwendet und geschützt wird.In this article, we will provide details on how a PRT is issued, used, and protected on Windows 10 devices.

In diesem Artikel wird davon ausgegangen, dass Sie bereits mit den verschiedenen verfügbaren Gerätestatus in Azure AD und der Funktionsweise des einmaligen Anmeldens in Windows 10 vertraut sind.This article assumes that you already understand the different device states available in Azure AD and how single sign-on works in Windows 10. Weitere Informationen zu Geräten in Azure AD finden Sie im Artikel Worum handelt es sich bei der Geräteverwaltung in Azure Active Directory?.For more information about devices in Azure AD, see the article What is device management in Azure Active Directory?

Wichtige Terminologie und KomponentenKey terminology and components

Die folgenden Windows-Komponenten spielen beim Anfordern und Verwenden eines PRT eine wichtige Rolle:The following Windows components play a key role in requesting and using a PRT:

  • Cloud-Authentifizierungsanbieter (CloudAP): CloudAP ist der moderne Authentifizierungsanbieter für die Windows-Anmeldung, mit dem Benutzer überprüft werden, die sich an einem Windows 10-Gerät anmelden.Cloud Authentication Provider (CloudAP): CloudAP is the modern authentication provider for Windows sign in, that verifies users logging to a Windows 10 device. CloudAP verfügt über ein Plug-In-Framework, das von Identitätsanbietern als Grundlage für die Ermöglichung der Windows-Authentifizierung mit den Anmeldeinformationen des jeweiligen Identitätsanbieters genutzt werden kann.CloudAP provides a plugin framework that identity providers can build on to enable authentication to Windows using that identity provider’s credentials.
  • Web Account Manager (WAM): WAM ist der Standardtokenbroker auf Windows 10-Geräten.Web Account Manager (WAM): WAM is the default token broker on Windows 10 devices. WAM verfügt auch über ein Plug-In-Framework, das Identitätsanbieter als Grundlage verwenden können, um einmaliges Anmelden (SSO) für ihre Anwendungen über den jeweiligen Identitätsanbieter zu ermöglichen.WAM also provides a plugin framework that identity providers can build on and enable SSO to their applications relying on that identity provider.
  • Azure AD-CloudAP-Plug-In: Ein Azure AD-spezifisches Plug-In, das auf dem CloudAP-Framework basiert und mit dem die Anmeldeinformationen von Benutzern für Azure AD während der Windows-Anmeldung überprüft werden.Azure AD CloudAP plugin: An Azure AD specific plugin built on the CloudAP framework, that verifies user credentials with Azure AD during Windows sign in.
  • Azure AD-WAM-Plug-In: Ein Azure AD-spezifisches Plug-In, das auf dem WAM-Framework basiert und mit dem SSO für Anwendungen ermöglicht wird, für die Azure AD für die Authentifizierung genutzt wird.Azure AD WAM plugin: An Azure AD specific plugin built on the WAM framework, that enables SSO to applications that rely on Azure AD for authentication.
  • Dsreg: Eine Azure AD-spezifische Komponente unter Windows 10, mit der der Prozess der Geräteregistrierung für alle Gerätezustände verarbeitet wird.Dsreg: An Azure AD specific component on Windows 10, that handles the device registration process for all device states.
  • Trusted Platform Module (TPM): Ein TPM ist eine in ein Gerät integrierte Hardwarekomponente, mit der hardwarebasierte Sicherheitsfunktionen für Benutzer- und Gerätegeheimnisse bereitgestellt werden.Trusted Platform Module (TPM): A TPM is a hardware component built into a device, that provides hardware-based security functions for user and device secrets. Weitere Informationen finden Sie im Artikel Trusted Platform Module – Technologieübersicht.More details can be found in the article Trusted Platform Module Technology Overview.

Was enthält das PRT?What does the PRT contain?

Ein PRT enthält Ansprüche, die normalerweise Teil von Azure AD-Aktualisierungstoken sind.A PRT contains claims generally contained in any Azure AD refresh token. Darüber hinaus sind im PRT auch einige gerätespezifische Ansprüche enthalten.In addition, there are some device-specific claims included in the PRT. Dies sind:They are as follows:

  • Geräte-ID: Ein PRT wird für einen Benutzer auf einem bestimmten Gerät ausgestellt.Device ID: A PRT is issued to a user on a specific device. Mit dem Geräte-ID-Anspruch deviceID wird das Gerät ermittelt, auf dem das PRT für den Benutzer ausgestellt wurde.The device ID claim deviceID determines the device the PRT was issued to the user on. Dieser Anspruch wird später dann für Token ausgestellt, die über das PRT empfangen werden.This claim is later issued to tokens obtained via the PRT. Der Geräte-ID-Anspruch wird verwendet, um die Autorisierung für den bedingten Zugriff basierend auf dem Gerätezustand oder der Gerätekonformität zu ermitteln.The device ID claim is used to determine authorization for Conditional Access based on device state or compliance.
  • Sitzungsschlüssel: Der Sitzungsschlüssel ist ein verschlüsselter symmetrischer Schlüssel, der vom Azure AD-Authentifizierungsdienst generiert und als Teil des PRT ausgestellt wird.Session key: The session key is an encrypted symmetric key, generated by the Azure AD authentication service, issued as part of the PRT. Der Sitzungsschlüssel fungiert als Eigentumsnachweis, wenn ein PRT verwendet wird, um Token für andere Anwendungen zu beschaffen.The session key acts as the proof of possession when a PRT is used to obtain tokens for other applications.

Kann ich sehen, was in einem PRT enthalten ist?Can I see what’s in a PRT?

Ein PRT ist ein nicht transparentes Blob, das von Azure AD gesendet wird und dessen Inhalt für Clientkomponenten nicht einsehbar ist.A PRT is an opaque blob sent from Azure AD whose contents are not known to any client components. Sie können nicht sehen, was sich in einem PRT befindet.You cannot see what’s inside a PRT.

Wie wird ein PRT ausgestellt?How is a PRT issued?

Die Geräteregistrierung ist eine Voraussetzung für die gerätebasierte Authentifizierung in Azure AD.Device registration is a prerequisite for device based authentication in Azure AD. Ein PRT wird für Benutzer nur auf registrierten Geräten ausgestellt.A PRT is issued to users only on registered devices. Ausführlichere Informationen zur Geräteregistrierung finden Sie im Artikel Windows Hello for Business und Geräteregistrierung.For more in-depth details on device registration, see the article Windows Hello for Business and Device Registration. Während der Geräteregistrierung werden mit der dsreg-Komponente zwei Sätze mit kryptografischen Schlüsselpaaren generiert:During device registration, the dsreg component generates two sets of cryptographic key pairs:

  • Geräteschlüssel (dkpub/dkpriv)Device key (dkpub/dkpriv)
  • Transportschlüssel (tkpub/tkpriv)Transport key (tkpub/tkpriv)

Die privaten Schlüssel sind an das TPM des Geräts gebunden, wenn das Gerät über ein gültiges und funktionierendes TPM verfügt, während die öffentlichen Schlüssel während des Prozesses für die Geräteregistrierung an Azure AD gesendet werden.The private keys are bound to the device’s TPM if the device has a valid and functioning TPM, while the public keys are sent to Azure AD during the device registration process. Diese Schlüssel werden verwendet, um den Gerätezustand bei PRT-Anforderungen zu überprüfen.These keys are used to validate the device state during PRT requests.

Das PRT wird während der Benutzerauthentifizierung auf einem Windows 10-Gerät in zwei Szenarien ausgestellt:The PRT is issued during user authentication on a Windows 10 device in two scenarios:

  • In Azure AD eingebunden oder Hybrid in Azure AD eingebunden: Ein PRT wird während der Windows-Anmeldung ausgestellt, wenn sich ein Benutzer mit seinen Anmeldeinformationen der Organisation anmeldet.Azure AD joined or Hybrid Azure AD joined: A PRT is issued during Windows logon when a user signs in with their organization credentials. Ein PRT wird mit allen von Windows 10 unterstützten Anmeldeinformationen ausgestellt, z. B. Kennwort und Windows Hello for Business.A PRT is issued with all Windows 10 supported credentials, for example, password and Windows Hello for Business. In diesem Szenario ist das Azure AD-CloudAP-Plug-In die primäre Autorität für das PRT.In this scenario, Azure AD CloudAP plugin is the primary authority for the PRT.
  • In Azure AD registriertes Gerät: Ein PRT wird ausgestellt, wenn ein Benutzer seinem Windows 10-Gerät ein sekundäres Geschäftskonto hinzufügt.Azure AD registered device: A PRT is issued when a user adds a secondary work account to their Windows 10 device. Benutzer haben zwei Möglichkeiten, um Windows 10 ein Konto hinzuzufügen:Users can add an account to Windows 10 in two different ways -
    • Hinzufügen eines Kontos über die Eingabeaufforderung Dieses Konto überall auf Ihrem Gerät verwenden nach dem Anmelden an einer App (z. B. Outlook)Adding an account via the Use this account everywhere on this device prompt after signing in to an app (for example, Outlook)
    • Hinzufügen eines Kontos über Einstellungen > Konten > Auf Arbeits- oder Schulkonto zugreifen > VerbindenAdding an account from Settings > Accounts > Access Work or School > Connect

In Szenarien für in Azure AD registrierte Geräte ist das Azure AD-WAM-Plug-In die primäre Autorität für das PRT, da die Windows-Anmeldung mit diesem Azure AD-Konto nicht durchgeführt wird.In Azure AD registered device scenarios, the Azure AD WAM plugin is the primary authority for the PRT since Windows logon is not happening with this Azure AD account.

Hinweis

Identitätsanbieter von Drittanbietern müssen das WS-Trust-Protokoll unterstützen, damit die PRT-Ausstellung auf Windows 10-Geräten ermöglicht wird.3rd party identity providers need to support the WS-Trust protocol to enable PRT issuance on Windows 10 devices. Ohne WS-Trust kann PRT nicht für Benutzer auf in Azure AD Hybrid oder in Azure AD eingebunden Geräten ausgestellt werden.Without WS-Trust, PRT cannot be issued to users on Hybrid Azure AD joined or Azure AD joined devices. Für AD FS sind nur „usernamemixed“-Endpunkte erforderlich.On ADFS only usernamemixed endpoints are required. Die Endpunkte „adfs/services/trust/2005/windowstransport“ und „adfs/services/trust/13/windowstransport“ dürfen nur als Endpunkte mit Intranetzugriff aktiviert und NICHT als Endpunkte mit Extranetzugriff über den Webanwendungsproxy verfügbar gemacht werden.Both adfs/services/trust/2005/windowstransport and adfs/services/trust/13/windowstransport should be enabled as intranet facing endpoints only and must NOT be exposed as extranet facing endpoints through the Web Application Proxy

Welche Lebensdauer hat ein PRT?What is the lifetime of a PRT?

Nach der Ausstellung ist ein PRT 14 Tage lang gültig und wird fortlaufend verlängert, solange das Gerät vom Benutzer aktiv genutzt wird.Once issued, a PRT is valid for 14 days and is continuously renewed as long as the user actively uses the device.

Wie wird ein PRT verwendet?How is a PRT used?

Ein PRT wird in Windows von zwei wichtigen Komponenten verwendet:A PRT is used by two key components in Windows:

  • Azure AD-CloudAP-Plug-In: Während der Windows-Anmeldung fordert das Azure AD-CloudAP-Plug-In ein PRT von Azure AD an, indem die vom Benutzer bereitgestellten Anmeldeinformationen verwendet werden.Azure AD CloudAP plugin: During Windows sign in, the Azure AD CloudAP plugin requests a PRT from Azure AD using the credentials provided by the user. Darüber hinaus wird das PRT hierbei zwischengespeichert, um die Nutzung der zwischengespeicherten Anmeldung zu ermöglichen, wenn der Benutzer keinen Zugriff auf eine Internetverbindung hat.It also caches the PRT to enable cached sign in when the user does not have access to an internet connection.
  • Azure AD-WAM-Plug-In: Wenn Benutzer versuchen, auf Anwendungen zuzugreifen, wird das PRT vom Azure AD-WAM-Plug-In genutzt, um SSO unter Windows 10 zu ermöglichen.Azure AD WAM plugin: When users try to access applications, the Azure AD WAM plugin uses the PRT to enable SSO on Windows 10. Das Azure AD-WAM-Plug-In nutzt das PRT, um Aktualisierungs- und Zugriffstoken für Anwendungen anzufordern, für die WAM für Tokenanforderungen verwendet wird.Azure AD WAM plugin uses the PRT to request refresh and access tokens for applications that rely on WAM for token requests. Außerdem wird hiermit SSO in Browsern ermöglicht, indem das PRT in Browseranforderungen eingefügt wird.It also enables SSO on browsers by injecting the PRT into browser requests. SSO für Browser unter Windows 10 wird für Microsoft Edge (nativ) und Chrome (über die Windows 10-Konten oder die Office Online-Erweiterungen) unterstützt.Browser SSO in Windows 10 is supported on Microsoft Edge (natively) and Chrome (via the Windows 10 Accounts or Office Online extensions).

Wie wird ein PRT verlängert?How is a PRT renewed?

Es gibt zwei Verfahren, um ein PRT zu verlängern:A PRT is renewed in two different methods:

  • Alle vier Stunden per Azure AD-CloudAP-Plug-In: Das CloudAP-Plug-In verlängert das PRT während der Windows-Anmeldung alle vier Stunden.Azure AD CloudAP plugin every 4 hours: The CloudAP plugin renews the PRT every 4 hours during Windows sign in. Wenn der Benutzer während dieses Zeitraums nicht über eine Internetverbindung verfügt, verlängert das CloudAP-Plug-In das PRT, nachdem das Gerät mit dem Internet verbunden wurde.If the user does not have internet connection during that time, CloudAP plugin will renew the PRT after the device is connected to the internet.
  • Azure AD-WAM-Plug-In bei Anforderungen von App-Token: Mit dem WAM-Plug-In wird SSO auf Windows 10-Geräten ermöglicht, indem automatische Tokenanforderungen für Anwendungen aktiviert werden.Azure AD WAM plugin during app token requests: The WAM plugin enables SSO on Windows 10 devices by enabling silent token requests for applications. Das WAM-Plug-In kann das PRT während dieser Tokenanforderungen auf zwei Arten verlängern:The WAM plugin can renew the PRT during these token requests in two different ways:
    • Eine App fordert WAM automatisch für ein Zugriffstoken an, aber für die App ist kein Aktualisierungstoken vorhanden.An app requests WAM for an access token silently but there’s no refresh token available for that app. In diesem Fall nutzt WAM das PRT, um ein Token für die App anzufordern, und erhält als Antwort ein neues PRT.In this case, WAM uses the PRT to request a token for the app and gets back a new PRT in the response.
    • Eine App fordert WAM für ein Zugriffstoken an, aber das PRT ist ungültig, oder für Azure AD ist eine zusätzliche Autorisierung erforderlich (z. B. Azure AD Multi-Factor Authentication).An app requests WAM for an access token but the PRT is invalid or Azure AD requires additional authorization (for example, Azure AD Multi-Factor Authentication). In diesem Szenario initiiert WAM eine interaktive Anmeldung, bei der der Benutzer sich erneut authentifizieren oder eine zusätzliche Überprüfung durchführen muss. Nach der erfolgreichen Authentifizierung wird ein neues PRT ausgestellt.In this scenario, WAM initiates an interactive logon requiring the user to reauthenticate or provide additional verification and a new PRT is issued on successful authentication.

In einer ADFS-Umgebung ist keine direkte Sichtlinie zum Domänencontroller erforderlich, um das PRT zu verlängern.In an ADFS environment, direct line of sight to the domain controller isn't required to renew the PRT. Für die PRT-Verlängerung müssen lediglich die Endpunkte „/adfs/services/trust/2005/usernamemixed“ und „/adfs/services/trust/13/usernamemixed“ mithilfe des WS-Trust-Protokolls für den Proxy aktiviert werden.PRT renewal requires only /adfs/services/trust/2005/usernamemixed and /adfs/services/trust/13/usernamemixed endpoints enabled on proxy by using WS-Trust protocol.

Windows-Transportendpunkte werden nur für die Kennwortauthentifizierung benötigt, wenn ein Kennwort geändert wird, nicht aber für die PRT-Verlängerung.Windows transport endpoints are required for password authentication only when a password is changed, not for PRT renewal.

Wichtige AspekteKey considerations

  • Ein PRT wird nur während einer nativen App-Authentifizierung ausgestellt und verlängert.A PRT is only issued and renewed during native app authentication. Ein PRT wird während einer Browsersitzung nicht verlängert oder ausgestellt.A PRT is not renewed or issued during a browser session.
  • Auf Geräten vom Typ „In Azure AD eingebunden“ und „Hybrid in Azure AD eingebunden“ ist das CloudAP-Plug-In die primäre Autorität für ein PRT.In Azure AD joined and hybrid Azure AD joined devices, the CloudAP plugin is the primary authority for a PRT. Wenn ein PRT während einer WAM-basierten Tokenanforderung verlängert wird, wird es zurück an das CloudAP-Plug-In gesendet. Dort wird die Gültigkeit des PRT für Azure AD überprüft, bevor es akzeptiert wird.If a PRT is renewed during a WAM-based token request, the PRT is sent back to CloudAP plugin, which verifies the validity of the PRT with Azure AD before accepting it.

Wie wird das PRT geschützt?How is the PRT protected?

Ein PRT wird geschützt, indem es an das Gerät gebunden wird, an dem sich der Benutzer angemeldet hat.A PRT is protected by binding it to the device the user has signed in to. Für Azure AD und Windows 10 wird der PRT-Schutz anhand der folgenden Methoden ermöglicht:Azure AD and Windows 10 enable PRT protection through the following methods:

  • Während der ersten Anmeldung: Während der ersten Anmeldung wird ein PRT ausgestellt, indem Anforderungen mit dem Geräteschlüssel signiert werden, der während der Geräteregistrierung kryptografisch generiert wurde.During first sign in: During first sign in, a PRT is issued by signing requests using the device key cryptographically generated during device registration. Auf einem Gerät mit einem gültigen und funktionierenden TPM wird der Geräteschlüssel per TPM geschützt, um schädliche Zugriffe zu verhindern.On a device with a valid and functioning TPM, the device key is secured by the TPM preventing any malicious access. Es wird kein PRT ausgestellt, wenn die entsprechende Geräteschlüsselsignatur nicht überprüft werden kann.A PRT is not issued if the corresponding device key signature cannot be validated.
  • Bei Tokenanforderungen und -verlängerungen: Wenn ein PRT ausgestellt wird, wird von Azure AD auch ein verschlüsselter Sitzungsschlüssel für das Gerät ausgestellt.During token requests and renewal: When a PRT is issued, Azure AD also issues an encrypted session key to the device. Er wird mit dem öffentlichen Transportschlüssel (tkpub) generiert und im Rahmen der Geräteregistrierung an Azure AD gesendet.It is encrypted with the public transport key (tkpub) generated and sent to Azure AD as part of device registration. Dieser Sitzungsschlüssel kann nur mit dem privaten Transportschlüssel (tkpriv) entschlüsselt werden, der per TPM geschützt ist.This session key can only be decrypted by the private transport key (tkpriv) secured by the TPM. Der Sitzungsschlüssel ist der Schlüssel für den Eigentumsnachweis (Proof-of-Possession, POP) für alle Anforderungen, die an Azure AD gesendet werden.The session key is the Proof-of-Possession (POP) key for any requests sent to Azure AD. Der Sitzungsschlüssel ist außerdem durch das TPM geschützt, und keine anderen Betriebssystemkomponenten können darauf zugreifen.The session key is also protected by the TPM and no other OS component can access it. Tokenanforderungen oder Anforderungen zur PRT-Verlängerung werden mit diesem Sitzungsschlüssel über das TPM auf sichere Weise signiert und können daher nicht manipuliert werden.Token requests or PRT renewal requests are securely signed by this session key through the TPM and hence, cannot be tampered with. Von Azure AD werden alle Anforderungen von diesem Gerät ungültig gemacht, die nicht mit dem entsprechenden Sitzungsschlüssel signiert sind.Azure AD will invalidate any requests from the device that are not signed by the corresponding session key.

Indem diese Schlüssel mit dem TPM geschützt werden, können böswillige Akteure weder die Schlüssel stehlen, noch das PRT an einem anderen Ort wiedergeben. Auf das TPM kann auch dann nicht zugegriffen werden, wenn sich das Gerät physisch im Besitz eines Angreifers befindet.By securing these keys with the TPM, malicious actors cannot steal the keys nor replay the PRT elsewhere as the TPM is inaccessible even if an attacker has physical possession of the device. Durch die Nutzung eines TPM wird der Schutz von Geräten vom Typ „In Azure AD eingebunden“, „Hybrid in Azure AD eingebunden“ und „Bei Azure AD registriert“ vor einem Diebstahl von Anmeldeinformationen stark verbessert.Thus, using a TPM greatly enhances the security of Azure AD Joined, Hybrid Azure AD joined, and Azure AD registered devices against credential theft. In Bezug auf Leistung und Zuverlässigkeit ist TPM 2.0 die empfohlene Version für alle Szenarien der Azure AD-Geräteregistrierung unter Windows 10.For performance and reliability, TPM 2.0 is the recommended version for all Azure AD device registration scenarios on Windows 10.

Wie sind App-Token und Browsercookies geschützt?How are app tokens and browser cookies protected?

App-Token: Wenn eine App Token per WAM anfordert, stellt Azure AD ein Aktualisierungstoken und ein Zugriffstoken aus.App tokens: When an app requests token through WAM, Azure AD issues a refresh token and an access token. Von WAM wird aber nur das Zugriffstoken an die App zurückgegeben und das Aktualisierungstoken im Cache geschützt, indem es mit dem DPAPI-Schlüssel (Data Protection Application Programming Interface) des Benutzers verschlüsselt wird.However, WAM only returns the access token to the app and secures the refresh token in its cache by encrypting it with the user’s data protection application programming interface (DPAPI) key. Von WAM wird das Aktualisierungstoken auf sichere Weise verwendet, indem Anforderungen mit dem Sitzungsschlüssel signiert werden, um weitere Zugriffstoken auszustellen.WAM securely uses the refresh token by signing requests with the session key to issue further access tokens. Der DPAPI-Schlüssel wird mit einem Azure AD-basierten symmetrischen Schlüssel direkt in Azure AD geschützt.The DPAPI key is secured by an Azure AD based symmetric key in Azure AD itself. Wenn das Gerät das Benutzerprofil mit dem DPAPI-Schlüssel entschlüsseln muss, stellt Azure AD den mit dem Sitzungsschlüssel verschlüsselten DPAPI-Schlüssel bereit. Für den Sitzungsschlüssel fordert das CloudAP-Plug-In die Entschlüsselung durch das TPM an.When the device needs to decrypt the user profile with the DPAPI key, Azure AD provides the DPAPI key encrypted by the session key, which CloudAP plugin requests TPM to decrypt. Mit dieser Funktionalität wird sichergestellt, dass das Schützen von Aktualisierungstoken einheitlich erfolgt, und es wird vermieden, dass Anwendungen ihre eigenen Schutzmechanismen implementieren.This functionality ensures consistency in securing refresh tokens and avoids applications implementing their own protection mechanisms.

Browsercookies: In Windows 10 unterstützt Azure AD SSO für Browser in Internet Explorer und Microsoft Edge auf native Weise, und in Google Chrome über die Kontoerweiterung für Windows 10.Browser cookies: In Windows 10, Azure AD supports browser SSO in Internet Explorer and Microsoft Edge natively or in Google Chrome via the Windows 10 accounts extension. Die Sicherheit dient nicht nur zum Schützen der Cookies, sondern auch der Endpunkte, an die die Cookies gesendet werden.The security is built not only to protect the cookies but also the endpoints to which the cookies are sent. Browsercookies werden genauso wie ein PRT geschützt, indem der Sitzungsschlüssel genutzt wird, um die Cookies zu signieren und zu schützen.Browser cookies are protected the same way a PRT is, by utilizing the session key to sign and protect the cookies.

Wenn ein Benutzer eine Browserinteraktion initiiert, ruft der Browser (bzw. die Erweiterung) einen nativen COM-Clienthost auf.When a user initiates a browser interaction, the browser (or extension) invokes a COM native client host. Der native Clienthost stellt sicher, dass die Seite aus einer der zulässigen Domänen stammt.The native client host ensures that the page is from one of the allowed domains. Der Browser kann auch andere Parameter an den nativen Clienthost senden, z. B. eine Nonce, aber der native Clienthost garantiert die Überprüfung des Hostnamens.The browser could send other parameters to the native client host, including a nonce, however the native client host guarantees validation of the hostname. Der native Clienthost fordert ein PRT-Cookie vom CloudAP-Plug-In an. Das Plug-In erstellt und signiert es mit dem per TPM geschützten Sitzungsschlüssel.The native client host requests a PRT-cookie from CloudAP plugin, which creates and signs it with the TPM-protected session key. Da das PRT-Cookie mit dem Sitzungsschlüssel signiert ist, kann es nicht manipuliert werden.As the PRT-cookie is signed by the session key, it cannot be tampered with. Dieses PRT-Cookie ist in den Anforderungsheader für Azure AD integriert, um das Ursprungsgerät zu überprüfen.This PRT-cookie is included in the request header for Azure AD to validate the device it is originating from. Bei Verwendung des Chrome-Browsers ist der Aufruf nur mit der Erweiterung möglich, die im Manifest des nativen Clienthosts explizit definiert ist, damit keine anderen Erweiterungen diese Anforderungen senden können.If using the Chrome browser, only the extension explicitly defined in the native client host’s manifest can invoke it preventing arbitrary extensions from making these requests. Nachdem das PRT-Cookie von Azure AD überprüft wurde, wird ein Sitzungscookie für den Browser ausgestellt.Once Azure AD validates the PRT cookie, it issues a session cookie to the browser. Dieses Sitzungscookie enthält auch den gleichen Sitzungsschlüssel, der mit einem PRT ausgestellt wird.This session cookie also contains the same session key issued with a PRT. Während der nachfolgenden Anforderungen wird der Sitzungsschlüssel auf effektive Weise überprüft, und das Cookie wird an das Gerät gebunden. So werden Wiedergaben von anderen Orten verhindert.During subsequent requests, the session key is validated effectively binding the cookie to the device and preventing replays from elsewhere.

Wann erhält ein PRT einen MFA-Anspruch?When does a PRT get an MFA claim?

Ein PRT kann in bestimmten Szenarien einen MFA-Anspruch (Multi-Factor Authentication) erhalten.A PRT can get a multi-factor authentication (MFA) claim in specific scenarios. Wenn ein MFA-basiertes PRT zum Anfordern von Token für Anwendungen verwendet wird, wird der MFA-Anspruch auf diese App-Token übertragen.When an MFA-based PRT is used to request tokens for applications, the MFA claim is transferred to those app tokens. Diese Funktionalität ermöglicht Benutzern eine reibungslose Vorgehensweise, weil die MFA-Überprüfung für alle Apps, für die dies erforderlich ist, verhindert wird.This functionality provides a seamless experience to users by preventing MFA challenge for every app that requires it. Ein PRT kann einen MFA-Anspruch auf folgende Arten erhalten:A PRT can get an MFA claim in the following ways:

  • Anmeldung mit Windows Hello for Business: Bei Windows Hello for Business werden anstelle von Kennwörtern kryptografische Schlüssel verwendet, um für eine sichere zweistufige Authentifizierung zu sorgen.Sign in with Windows Hello for Business: Windows Hello for Business replaces passwords and uses cryptographic keys to provide strong two-factor authentication. Windows Hello for Business gilt spezifisch für einen Benutzer auf einem Gerät und erfordert selbst einen MFA-Vorgang für die Bereitstellung.Windows Hello for Business is specific to a user on a device, and itself requires MFA to provision. Wenn sich ein Benutzer mit Windows Hello for Business anmeldet, erhält das PRT des Benutzers einen MFA-Anspruch.When a user logs in with Windows Hello for Business, the user’s PRT gets an MFA claim. Dieses Szenario gilt auch für Benutzer, die sich mit Smartcards anmelden, wenn bei der Authentifizierung per Smartcard ein MFA-Anspruch von AD FS erstellt wird.This scenario also applies to users logging in with smartcards if smartcard authentication produces an MFA claim from ADFS.
    • Da Windows Hello for Business als mehrstufige Authentifizierung gilt, wird der MFA-Anspruch aktualisiert, wenn das PRT selbst aktualisiert wird. Die MFA-Dauer wird also fortlaufend verlängert, wenn sich Benutzer mit Windows Hello for Business anmelden.As Windows Hello for Business is considered multi-factor authentication, the MFA claim is updated when the PRT itself is refreshed, so the MFA duration will continually extend when users sign in with WIndows Hello for Business
  • MFA während der interaktiven WAM-Anmeldung: Für eine Tokenanforderung per WAM gilt Folgendes: Wenn ein Benutzer einen MFA-Vorgang durchführen muss, um auf die App zuzugreifen, wird das PRT, das während dieser Interaktion verlängert wird, mit einem MFA-Anspruch versehen.MFA during WAM interactive sign in: During a token request through WAM, if a user is required to do MFA to access the app, the PRT that is renewed during this interaction is imprinted with an MFA claim.
    • In diesem Fall wird der MFA-Anspruch nicht fortlaufend aktualisiert, und die MFA-Dauer basiert auf der Lebensdauer, die für das Verzeichnis festgelegt ist.In this case, the MFA claim is not updated continuously, so the MFA duration is based on the lifetime set on the directory.
    • Wenn ein vorheriges vorhandenes primäres Aktualisierungstoken (Primary Refresh Token, PRT) und Aktualisierungstoken (Refresh Token, RT) für den Zugriff auf eine App verwendet werden, werden das PRT und RT als erster Authentifizierungsnachweis angesehen.When a previous existing PRT and RT are used for access to an app, the PRT and RT will be regarded as the first proof of authentication. Ein neues Authentifizierungstoken wird mit einem zweiten Nachweis und gedruckten MFA-Anspruch benötigt.A new AT will be required with a second proof and an imprinted MFA claim. Hierdurch werden auch ein neues PRT und RT ausgestellt.This will also issue a new PRT and RT.
  • MFA während der Geräteregistrierung: Wenn ein Administrator seine Geräteeinstellungen in Azure AD so konfiguriert hat, dass zum Registrieren von Geräten ein MFA-Vorgang erforderlich ist, muss der Benutzer diesen MFA-Vorgang durchführen, um die Registrierung abzuschließen.MFA during device registration: If an admin has configured their device settings in Azure AD to require MFA to register devices, the user needs to do MFA to complete the registration. Während dieses Prozesses erhält das PRT, das für den Benutzer ausgestellt wird, den MFA-Anspruch, der während der Registrierung beschafft wird.During this process, the PRT that is issued to the user has the MFA claim obtained during the registration. Diese Funktion gilt nur für den Benutzer, der den Beitrittsvorgang durchgeführt hat, und nicht für andere Benutzer, die sich an diesem Gerät anmelden.This capability only applies to the user who did the join operation, not to other users who sign in to that device.
    • Ähnlich wie bei der interaktiven WAM-Anmeldung wird der MFA-Anspruch nicht fortlaufend aktualisiert, sodass die MFA-Dauer auf der Lebensdauer basiert, die für das Verzeichnis festgelegt ist.Similar to the WAM interactive sign in, the MFA claim is not updated continuously, so the MFA duration is based on the lifetime set on the directory.

Unter Windows 10 wird für jeden Satz von Anmeldeinformationen eine partitionierte Liste mit PRTs geführt.Windows 10 maintains a partitioned list of PRTs for each credential. Es ist also ein PRT für jede Windows Hello for Business-Instanz, jedes Kennwort bzw. jede Smartcard vorhanden.So, there’s a PRT for each of Windows Hello for Business, password, or smartcard. Mit dieser Partitionierung wird sichergestellt, dass MFA-Ansprüche anhand der verwendeten Anmeldeinformationen isoliert und bei Tokenanforderungen nicht verwechselt werden.This partitioning ensures that MFA claims are isolated based on the credential used, and not mixed up during token requests.

Wann wird ein PRT ungültig gemacht?How is a PRT invalidated?

Ein PRT wird in den folgenden Szenarien ungültig gemacht:A PRT is invalidated in the following scenarios:

  • Ungültiger Benutzer: Wenn ein Benutzer in Azure AD gelöscht oder deaktiviert wird, wird das zugehörige PRT ungültig gemacht und kann nicht verwendet werden, um Token für Anwendungen zu erhalten.Invalid user: If a user is deleted or disabled in Azure AD, their PRT is invalidated and cannot be used to obtain tokens for applications. Wenn sich ein gelöschter oder deaktivierter Benutzer vorher an einem Gerät angemeldet hat, wird die Anmeldung für ihn über die zwischengespeicherte Anmeldung durchgeführt, bis CloudAP über den ungültigen Zustand informiert wird.If a deleted or disabled user already signed in to a device before, cached sign-in would log them in, until CloudAP is aware of their invalid state. Nachdem von CloudAP ermittelt wurde, dass der Benutzer ungültig ist, werden nachfolgende Anmeldungen blockiert.Once CloudAP determines that the user is invalid, it blocks subsequent logons. Für einen ungültigen Benutzer wird die Anmeldung auf neuen Geräten, für die die Anmeldeinformationen nicht zwischengespeichert werden, automatisch gesperrt.An invalid user is automatically blocked from sign in to new devices that don’t have their credentials cached.
  • Ungültiges Gerät: Wenn ein Gerät in Azure AD gelöscht oder deaktiviert wird, wird das auf diesem Gerät erhaltene PRT ungültig gemacht und kann nicht verwendet werden, um Token für andere Anwendungen abzurufen.Invalid device: If a device is deleted or disabled in Azure AD, the PRT obtained on that device is invalidated and cannot be used to obtain tokens for other applications. Wenn ein Benutzer bereits auf einem ungültigen Gerät angemeldet ist, ist dies weiterhin möglich.If a user is already signed in to an invalid device, they can continue to do so. Alle Token auf dem Gerät werden aber ungültig gemacht, und der Benutzer kann für Ressourcen über dieses Gerät kein SSO nutzen.But all tokens on the device are invalidated and the user does not have SSO to any resources from that device.
  • Kennwortänderung: Nachdem ein Benutzer sein Kennwort geändert hat, wird das PRT, das mit dem vorherigen Kennwort beschafft wurde, von Azure AD ungültig gemacht.Password change: After a user changes their password, the PRT obtained with the previous password is invalidated by Azure AD. Eine Kennwortänderung führt dazu, dass der Benutzer ein neues PRT erhält.Password change results in the user getting a new PRT. Token können hierbei auf zwei Arten ungültig gemacht werden:This invalidation can happen in two different ways:
    • Wenn sich der Benutzer bei Windows mit seinem neuen Kennwort anmeldet, verwirft CloudAP das alte PRT und sendet eine Anforderung an Azure AD, dass ein neues PRT mit dem neuen Kennwort ausgestellt werden soll.If user signs in to Windows with their new password, CloudAP discards the old PRT and requests Azure AD to issue a new PRT with their new password. Wenn der Benutzer nicht über eine Internetverbindung verfügt, kann das neue Kennwort nicht überprüft werden. Es kann sein, dass der Benutzer von Windows aufgefordert wird, das alte Kennwort einzugeben.If user does not have an internet connection, the new password cannot be validated, Windows may require the user to enter their old password.
    • Wenn sich ein Benutzer mit seinem alten Kennwort angemeldet oder das Kennwort nach dem Anmelden an Windows geändert hat, wird das alte PRT für alle WAM-basierten Tokenanforderungen verwendet.If a user has logged in with their old password or changed their password after signing into Windows, the old PRT is used for any WAM-based token requests. In diesem Szenario wird der Benutzer aufgefordert, während der WAM-Tokenanforderung eine erneute Authentifizierung durchzuführen, und ein neues PRT wird ausgestellt.In this scenario, the user is prompted to reauthenticate during the WAM token request and a new PRT is issued.
  • TPM-Probleme: Es kann vorkommen, dass das TPM eines Geräts nicht reibungslos funktioniert oder ausfällt, sodass auf die mit dem TPM geschützten Schlüssel nicht mehr zugegriffen werden kann.TPM issues: Sometimes, a device’s TPM can falter or fail, leading to inaccessibility of keys secured by the TPM. In diesem Fall kann das Gerät kein PRT abrufen oder Token über ein vorhandenes PRT anfordern, da der Nachweis über den Besitz von kryptografischen Schlüsseln nicht erbracht werden kann.In this case, the device is incapable of getting a PRT or requesting tokens using an existing PRT as it cannot prove possession of the cryptographic keys. Aus diesem Grund werden alle vorhandenen PRTs von Azure AD ungültig gemacht.As a result, any existing PRT is invalidated by Azure AD. Wenn Windows 10 einen Fehler erkennt, wird ein Wiederherstellungsverfahren initiiert, um das Gerät mit neuen kryptografischen Schlüsseln wieder zu registrieren.When Windows 10 detects a failure, it initiates a recovery flow to re-register the device with new cryptographic keys. Bei der Azure AD-Hybrideinbindung wird die Wiederherstellung – wie auch bei der ersten Registrierung – automatisch ohne Benutzereingabe durchgeführt.With Hybrid Azure Ad join, just like the initial registration, the recovery happens silently without user input. Für in Azure AD eingebundene oder registrierte Geräte muss die Wiederherstellung von einem Benutzer durchgeführt werden, der auf dem Gerät über Administratorrechte verfügt.For Azure AD joined or Azure AD registered devices, the recovery needs to be performed by a user who has administrator privileges on the device. In diesem Szenario wird das Wiederherstellungsverfahren über eine Windows-Eingabeaufforderung initiiert, in der für den Benutzer die Schritte zur erfolgreichen Wiederherstellung des Geräts angegeben werden.In this scenario, the recovery flow is initiated by a Windows prompt that guides the user to successfully recover the device.

Ausführliche VerfahrenDetailed flows

Im folgenden Diagramm sind die zugrunde liegenden Details für das Ausstellen, Verlängern und Verwenden eines PRT zum Anfordern eines Zugriffstokens für eine Anwendung dargestellt.The following diagrams illustrate the underlying details in issuing, renewing, and using a PRT to request an access token for an application. Darüber hinaus wird mit diesen Schritten auch beschrieben, wie die oben erwähnten Sicherheitsmechanismen bei diesen Interaktionen angewendet werden.In addition, these steps also describe how the aforementioned security mechanisms are applied during these interactions.

PRT-Ausstellung während der ersten AnmeldungPRT issuance during first sign in

PRT-Ausstellung während der ersten Anmeldung: Ausführliches Verfahren

Hinweis

Für in Azure AD eingebundene Geräte wird dieser Austausch synchron durchgeführt, damit ein PRT ausgestellt wird, bevor sich der Benutzer bei Windows anmelden kann.In Azure AD joined devices, this exchange happens synchronously to issue a PRT before the user can logon to Windows. Für in Azure AD eingebundene Hybridgeräte ist die lokale Active Directory-Instanz die primäre Autorität.In hybrid Azure AD joined devices, on-premises Active Directory is the primary authority. Der Benutzer wartet also nur darauf, dass ein TGT für die Anmeldung abgerufen werden kann, während die PRT-Ausstellung asynchron erfolgt.So, the user is only waiting until they can acquire a TGT to login, while the PRT issuance happens asynchronously. Dieses Szenario gilt nicht für in Azure AD registrierte Geräte, da für die Anmeldung keine Azure AD-Anmeldeinformationen verwendet werden.This scenario does not apply to Azure AD registered devices as logon does not use Azure AD credentials.

SchrittStep BESCHREIBUNGDescription
EinA Benutzer geben ihr Kennwort auf der Benutzeroberfläche für die Anmeldung ein.User enters their password in the sign in UI. Die Benutzeroberfläche für die Anmeldung (LogonUI) übergibt die Anmeldeinformationen in einem Authentifizierungspuffer an die lokale Sicherheitsautorität, von der sie wiederum intern an CloudAP übergeben werden.LogonUI passes the credentials in an auth buffer to LSA, which in turns passes it internally to CloudAP. CloudAP leitet diese Anforderung an das CloudAP-Plug-In weiter.CloudAP forwards this request to the CloudAP plugin.
BB Das CloudAP-Plug-In initiiert eine Bereichsermittlungsanforderung, um den Identitätsanbieter für den Benutzer zu identifizieren.CloudAP plugin initiates a realm discovery request to identify the identity provider for the user. Wenn für den Mandanten des Benutzers ein Verbundanbieter eingerichtet wurde, gibt Azure AD den Metadatenaustausch-Endpunkt (MEX-Endpunkt) des Verbundanbieters zurück.If user’s tenant has a federation provider setup, Azure AD returns the federation provider’s Metadata Exchange endpoint (MEX) endpoint. Wenn nicht, gibt Azure AD den Hinweis zurück, dass der Benutzer verwaltet wird und die Authentifizierung mit Azure AD durchführen kann.If not, Azure AD returns that the user is managed indicating that user can authenticate with Azure AD.
CC Wenn der Benutzer verwaltet wird, erhält CloudAP die Nonce von Azure AD.If the user is managed, CloudAP will get the nonce from Azure AD. Falls der Benutzer Teil eines Verbunds ist, fordert das CloudAP-Plug-In ein SAML-Token mit den Anmeldeinformationen des Benutzers vom Verbundanbieter an.If the user is federated, CloudAP plugin requests a SAML token from the federation provider with the user’s credentials. Nach Erhalt des SAML-Tokens fordert es eine Nonce von Azure AD an.Once it receives, the SAML token, it requests a nonce from Azure AD.
DD Das CloudAP-Plug-In erstellt die Authentifizierungsanforderung mit den Anmeldeinformationen des Benutzers, einer Nonce und einem Brokerbereich, signiert die Anforderung mit dem Geräteschlüssel (dkpriv) und sendet sie an Azure AD.CloudAP plugin constructs the authentication request with the user’s credentials, nonce, and a broker scope, signs the request with the Device key (dkpriv) and sends it to Azure AD. In einer Verbundumgebung nutzt das CloudAP-Plug-In nicht die Anmeldeinformationen des Benutzers, sondern das vom Verbundanbieter zurückgegebene SAML-Token.In a federated environment, CloudAP plugin uses the SAML token returned by the federation provider instead of the user’ credentials.
EE Azure AD überprüft die Anmeldeinformationen des Benutzers, die Nonce und die Gerätesignatur, stellt sicher, dass das Gerät im Mandanten gültig ist, und stellt das verschlüsselte PRT aus.Azure AD validates the user credentials, the nonce, and device signature, verifies that the device is valid in the tenant and issues the encrypted PRT. Zusammen mit dem PRT stellt Azure AD auch einen symmetrischen Schlüssel aus, der als Sitzungsschlüssel bezeichnet wird. Er wird von Azure AD mit dem Transportschlüssel (tkpub) verschlüsselt.Along with the PRT, Azure AD also issues a symmetric key, called the Session key encrypted by Azure AD using the Transport key (tkpub). Darüber hinaus wird der Sitzungsschlüssel auch in das PRT eingebettet.In addition, the Session key is also embedded in the PRT. Dieser Sitzungsschlüssel fungiert als Eigentumsnachweis (Proof-of-Possession, PoP) für nachfolgende Anforderungen mit dem PRT.This Session key acts as the Proof-of-possession (PoP) key for subsequent requests with the PRT.
FF Das CloudAP-Plug-In übergibt das verschlüsselte PRT und den Sitzungsschlüssel an CloudAP.CloudAP plugin passes the encrypted PRT and Session key to CloudAP. CloudAP fordert vom TPM die Entschlüsselung des Sitzungsschlüssels mit dem Transportschlüssel (tkpriv) und die erneute Verschlüsselung mit dem eigenen Schlüssel des TPM an.CloudAP request the TPM to decrypt the Session key using the Transport key (tkpriv) and re-encrypt it using the TPM’s own key. CloudAP speichert den verschlüsselten Sitzungsschlüssel zusammen mit dem PRT in seinem Cache.CloudAP stores the encrypted Session key in its cache along with the PRT.

PRT-Verlängerung bei nachfolgenden AnmeldungenPRT renewal in subsequent logons

PRT-Verlängerung bei nachfolgenden Anmeldungen

SchrittStep BESCHREIBUNGDescription
EinA Benutzer geben ihr Kennwort auf der Benutzeroberfläche für die Anmeldung ein.User enters their password in the sign in UI. Die Benutzeroberfläche für die Anmeldung (LogonUI) übergibt die Anmeldeinformationen in einem Authentifizierungspuffer an die lokale Sicherheitsautorität, von der sie wiederum intern an CloudAP übergeben werden.LogonUI passes the credentials in an auth buffer to LSA, which in turns passes it internally to CloudAP. CloudAP leitet diese Anforderung an das CloudAP-Plug-In weiter.CloudAP forwards this request to the CloudAP plugin.
BB Wenn sich der Benutzer bereits vorher am Gerät angemeldet hat, initiiert Windows die zwischengespeicherte Anmeldung und überprüft die Anmeldeinformationen, um die Anmeldung für den Benutzer durchzuführen.If the user has previously logged on to the user, Windows initiates cached sign in and validates credentials to log the user in. Alle vier Stunden initiiert das CloudAP-Plug-In asynchron die PRT-Verlängerung.Every 4 hours, the CloudAP plugin initiates PRT renewal asynchronously.
CC Das CloudAP-Plug-In initiiert eine Bereichsermittlungsanforderung, um den Identitätsanbieter für den Benutzer zu identifizieren.CloudAP plugin initiates a realm discovery request to identify the identity provider for the user. Wenn für den Mandanten des Benutzers ein Verbundanbieter eingerichtet wurde, gibt Azure AD den Metadatenaustausch-Endpunkt (MEX-Endpunkt) des Verbundanbieters zurück.If user’s tenant has a federation provider setup, Azure AD returns the federation provider’s Metadata Exchange endpoint (MEX) endpoint. Wenn nicht, gibt Azure AD den Hinweis zurück, dass der Benutzer verwaltet wird und die Authentifizierung mit Azure AD durchführen kann.If not, Azure AD returns that the user is managed indicating that user can authenticate with Azure AD.
DD Falls der Benutzer Teil eines Verbunds ist, fordert das CloudAP-Plug-In ein SAML-Token mit den Anmeldeinformationen des Benutzers vom Verbundanbieter an.If the user is federated, CloudAP plugin requests a SAML token from the federation provider with the user’s credentials. Nach Erhalt des SAML-Tokens fordert es eine Nonce von Azure AD an.Once it receives, the SAML token, it requests a nonce from Azure AD. Wenn der Benutzer verwaltet wird, erhält CloudAP die Nonce direkt von Azure AD.If the user is managed, CloudAP will directly get the nonce from Azure AD.
EE Das CloudAP-Plug-In erstellt die Authentifizierungsanforderung mit den Anmeldeinformationen des Benutzers, einer Nonce und dem vorhandenen PRT, signiert die Anforderung mit dem Sitzungsschlüssel und sendet sie an Azure AD.CloudAP plugin constructs the authentication request with the user’s credentials, nonce, and the existing PRT, signs the request with the Session key and sends it to Azure AD. In einer Verbundumgebung nutzt das CloudAP-Plug-In nicht die Anmeldeinformationen des Benutzers, sondern das vom Verbundanbieter zurückgegebene SAML-Token.In a federated environment, CloudAP plugin uses the SAML token returned by the federation provider instead of the user’ credentials.
FF Azure AD überprüft die Signatur des Sitzungsschlüssels, indem sie mit dem Sitzungsschlüssel verglichen wird, der in das PRT eingebettet ist. Anschließend wird die Nonce überprüft und sichergestellt, dass das Gerät im Mandanten gültig ist, und es wird ein neues PRT ausgestellt.Azure AD validates the Session key signature by comparing it against the Session key embedded in the PRT, validates the nonce and verifies that the device is valid in the tenant and issues a new PRT. Wie bereits beschrieben, verfügt das PRT auch hier wieder über den Sitzungsschlüssel, der mit dem Transportschlüssel (tkpub) verschlüsselt ist.As seen before, the PRT is again accompanied with the Session key encrypted by Transport key (tkpub).
GG Das CloudAP-Plug-In übergibt das verschlüsselte PRT und den Sitzungsschlüssel an CloudAP.CloudAP plugin passes the encrypted PRT and Session key to CloudAP. CloudAP fordert vom TPM die Entschlüsselung des Sitzungsschlüssels mit dem Transportschlüssel (tkpriv) und die erneute Verschlüsselung mit dem eigenen Schlüssel des TPM an.CloudAP requests the TPM to decrypt the Session key using the Transport key (tkpriv) and re-encrypt it using the TPM’s own key. CloudAP speichert den verschlüsselten Sitzungsschlüssel zusammen mit dem PRT in seinem Cache.CloudAP stores the encrypted Session key in its cache along with the PRT.

Hinweis

Ein PRT kann extern verlängert werden, ohne dass eine VPN-Verbindung erforderlich ist, wenn „usernamemixed“-Endpunkte extern aktiviert werden.A PRT can be renewed externally without the need of a VPN connection when usernamemixed endpoints are enabled externally.

PRT-Nutzung bei App-TokenanforderungenPRT usage during app token requests

PRT-Nutzung bei App-Tokenanforderungen

SchrittStep BESCHREIBUNGDescription
EinA Eine Anwendung (z. B. Outlook, OneNote usw.) initiiert das Senden einer Tokenanforderung an WAM.An application (for example, Outlook, OneNote etc.) initiates a token request to WAM. Von WAM erhält das Azure AD-WAM-Plug-In wiederum die Aufforderung, die Tokenanforderung zu verarbeiten.WAM, in turn, asks the Azure AD WAM plugin to service the token request.
BB Wenn für die Anwendung bereits ein Aktualisierungstoken verfügbar ist, wird es vom Azure AD-WAM-Plug-In verwendet, um ein Zugriffstoken anzufordern.If a Refresh token for the application is already available, Azure AD WAM plugin uses it to request an access token. Um die Gerätebindung nachzuweisen, wird die Anforderung vom WAM-Plug-In mit dem Sitzungsschlüssel signiert.To provide proof of device binding, WAM plugin signs the request with the Session key. Azure AD überprüft den Sitzungsschlüssel und stellt ein Zugriffstoken und ein neues Aktualisierungstoken mit Verschlüsselung per Sitzungsschlüssel für die App aus.Azure AD validates the Session key and issues an access token and a new refresh token for the app, encrypted by the Session key. Das WAM-Plug-In fordert das CloudAP-Plug-In auf, die Token zu entschlüsseln. Das CloudAP-Plug-In fordert wiederum das TPM auf, die Entschlüsselung mit dem Sitzungsschlüssel durchzuführen, sodass das WAM-Plug-In beide Token erhält.WAM plugin requests Cloud AP plugin to decrypt the tokens, which, in turn, requests the TPM to decrypt using the Session key, resulting in WAM plugin getting both the tokens. Als Nächstes stellt das WAM-Plug-In nur das Zugriffstoken für die Anwendung bereit, während es das Aktualisierungstoken per DPAPI wieder verschlüsselt und im eigenen Cache speichert.Next, WAM plugin provides only the access token to the application, while it re-encrypts the refresh token with DPAPI and stores it in its own cache
CC Wenn für die Anwendung kein Aktualisierungstoken verfügbar ist, verwendet das Azure AD-WAM-Plug-In das PRT, um ein Zugriffstoken anzufordern.If a Refresh token for the application is not available, Azure AD WAM plugin uses the PRT to request an access token. Als Eigentumsnachweis signiert das WAM-Plug-In die Anforderung, die das PRT enthält, mit dem Sitzungsschlüssel.To provide proof of possession, WAM plugin signs the request containing the PRT with the Session key. Azure AD überprüft die Sitzungsschlüsselsignatur, indem sie mit dem Sitzungsschlüssel verglichen wird, der in das PRT eingebettet ist. Anschließend wird überprüft, ob das Gerät gültig ist, und für die Anwendung werden ein Zugriffstoken und ein Aktualisierungstoken ausgestellt.Azure AD validates the Session key signature by comparing it against the Session key embedded in the PRT, verifies that the device is valid and issues an access token and a refresh token for the application. Außerdem kann Azure AD ein neues PRT ausstellen (basierend auf dem Aktualisierungszyklus), wobei alle Token mit dem Sitzungsschlüssel verschlüsselt werden.in addition, Azure AD can issue a new PRT (based on refresh cycle), all of them encrypted by the Session key.
DD Das WAM-Plug-In fordert das CloudAP-Plug-In auf, die Token zu entschlüsseln. Das CloudAP-Plug-In fordert wiederum das TPM auf, die Entschlüsselung mit dem Sitzungsschlüssel durchzuführen, sodass das WAM-Plug-In beide Token erhält.WAM plugin requests Cloud AP plugin to decrypt the tokens, which, in turn, requests the TPM to decrypt using the Session key, resulting in WAM plugin getting both the tokens. Als Nächstes stellt das WAM-Plug-In nur das Zugriffstoken für die Anwendung bereit, während es das Aktualisierungstoken per DPAPI wieder verschlüsselt und im eigenen Cache speichert.Next, WAM plugin provides only the access token to the application, while it re-encrypts the refresh token with DPAPI and stores it in its own cache. Das WAM-Plug-In nutzt das Aktualisierungstoken ab jetzt für diese Anwendung.WAM plugin will use the refresh token going forward for this application. Darüber hinaus gibt das WAM-Plug-In das neue PRT an das CloudAP-Plug-In zurück, von dem das PRT mit Azure AD überprüft wird, bevor der eigene Cache aktualisiert wird.WAM plugin also gives back the new PRT to Cloud AP plugin, which validates the PRT with Azure AD before updating it in its own cache. Das CloudAP-Plug-In nutzt ab jetzt das neue PRT.Cloud AP plugin will use the new PRT going forward.
EE Das neu ausgestellte Zugriffstoken wird für WAM bereitgestellt, von wo es wiederum an die aufrufende Anwendung zurückgegeben wird.WAM provides the newly issued access token to WAM, which in turn, provides it back to the calling application

Browser-SSO mit PRTBrowser SSO using PRT

Browser-SSO mit PRT

SchrittStep BESCHREIBUNGDescription
EinA Der Benutzer meldet sich mit seinen Anmeldeinformationen an Windows an, um ein PRT zu erhalten.User logs in to Windows with their credentials to get a PRT. Nachdem der Benutzer den Browser geöffnet hat, werden die URLs vom Browser (bzw. der Erweiterung) aus der Registrierung geladen.Once user opens the browser, browser (or extension) loads the URLs from the registry.
BB Wenn ein Benutzer eine Azure AD-Anmelde-URL öffnet, überprüft der Browser bzw. die Erweiterung die URL mit den URLs aus der Registrierung.When a user opens an Azure AD login URL, the browser or extension validates the URL with the ones obtained from the registry. Wenn sie übereinstimmen, ruft der Browser den nativen Clienthost für den Tokenabruf auf.If they match, the browser invokes the native client host for getting a token.
CC Der native Clienthost überprüft, ob die URLs zu den Microsoft-Identitätsanbietern gehören (Microsoft-Konto oder Azure AD), extrahiert eine von der URL gesendete Nonce und sendet einen Aufruf zum Beschaffen eines PRT-Cookies an das CloudAP-Plug-In.The native client host validates that the URLs belong to the Microsoft identity providers (Microsoft account or Azure AD), extracts a nonce sent from the URL and makes a call to CloudAP plugin to get a PRT cookie.
DD Das CloudAP-Plug-In erstellt das PRT-Cookie, signiert es mit dem an TPM gebundenen Sitzungsschlüssel und sendet es zurück an den nativen Clienthost.The CloudAP plugin will create the PRT cookie, sign in with the TPM-bound session key and send it back to the native client host. Da das Cookie mit dem Sitzungsschlüssel signiert ist, kann es nicht manipuliert werden.As the cookie is signed by the session key, it cannot be tampered with.
EE Der native Clienthost gibt dieses PRT-Cookie an den Browser zurück, der es in den Anforderungsheader „x-ms-RefreshTokenCredential“ einfügt und Token von Azure AD anfordert.The native client host will return this PRT cookie to the browser, which will include it as part of the request header called x-ms-RefreshTokenCredential and request tokens from Azure AD.
FF Azure AD überprüft die Sitzungsschlüsselsignatur im PRT-Cookie, überprüft die Nonce, stellt sicher, dass das Gerät im Mandanten gültig ist, und stellt ein ID-Token für die Webseite und ein verschlüsseltes Sitzungscookie für den Browser aus.Azure AD validates the Session key signature on the PRT cookie, validates the nonce, verifies that the device is valid in the tenant, and issues an ID token for the web page and an encrypted session cookie for the browser.

Hinweis

Der in den obigen Schritten beschriebene Browser-SSO-Flow gilt nicht für Sitzungen in privaten Modi wie InPrivate in Microsoft Edge oder Incognito in Google Chrome (bei Verwendung der Erweiterung für Microsoft-Konten).The Browser SSO flow described in the steps above does not apply for sessions in private modes such as InPrivate in Microsoft Edge, or Incognito in Google Chrome (when using the Microsoft Accounts extension).

Nächste SchritteNext steps

Weitere Informationen zur Behandlung von PRT-Problemen finden Sie im Artikel Beheben von Problemen mit Geräten unter Windows 10 und Windows Server 2016 mit Hybrideinbindung in Azure Active Directory.For more information on troubleshooting PRT-related issues, see the article Troubleshooting hybrid Azure Active Directory joined Windows 10 and Windows Server 2016 devices.