Einmaliges Anmelden mit Microsoft-Konten (Windows Store-Apps)
Zweck
Auf einem Computer unter Windows 8 kann ein Benutzer ein Microsoft-Konto mit einem lokalen Konto oder einem Domänenkonto auf diesem Computer verknüpfen. Wenn sich der Benutzer dann auf diesem Computer anmeldet, kann er sich mit diesem Microsoft-Konto anstelle des lokalen Kontos anmelden. Wenn Ihre Apps die LiveConnect-APIs verwenden, wird automatisch erkannt, dass der Benutzer bereits mit einem Microsoft-Konto angemeldet ist, und er muss sich nicht erneut anmelden.
Da sich Benutzer unter Windows 8 mithilfe eines Microsoft-Kontos auf ihren Geräten anmelden können, können App-Entwickler für Windows Store-Apps das einmalige Anmelden bereitstellen. Wenn Benutzer beispielsweise auf einem Computer unter Windows 8 angemeldet sind, sind sie auch bereits bei teilnehmenden Windows Store-Apps angemeldet, die die Anmeldung mit ihrem Microsoft-Konto unterstützen.
Die einfachste Möglichkeit zum Aktivieren des einmaligen Anmeldens in einer App besteht in der Verwendung des Anmelde-Steuerelements für Microsoft-Konten, das Teil des Live Software Development Kit (SDK) ist. Bei dieser Methode kann die App den Benutzer problemlos authentifizieren und Zugriff auf das Profil des Benutzers oder andere Informationen anfordern. Weitere Informationen finden Sie unter Anmelde-Steuerelement für Microsoft-Konten.
Eine App, die einen lokalen Benutzer bei ihrem eigenen Webdienst authentifizieren muss, kann ein Authentifizierungstoken verwenden, das eine App-spezifische Benutzer-ID enthält und als JavaScript Object Notation-Webtoken (JSON) codiert ist. Kurz gesagt, die App sendet das Token an ihren Webdienst, der es decodiert, die Daten aus jedem Segment des Tokens speichert und dann den Wert der Benutzer-ID zum Vergleich verwendet, um den Benutzer bei nachfolgenden Anmeldungen zu identifizieren.
Das Authentifizierungstoken wird durch Verketten einer codierten Version der JSON-Nutzlast mit einer signierten und codierten Version der JSON-Nutzlast erstellt. Das Token enthält zwei Gruppen von Daten: den Header mit den Metadaten zum Token und den Textkörper mit den tatsächlichen Tokendaten.
In der folgenden Tabelle ist der Inhalt des Tokens beschrieben.
Eigenschaft | Name | Notes (Hinweise) |
---|---|---|
Algorithm |
alg |
Der zum Signieren des Tokens verwendete Kryptografiealgorithmus. Nur "HMAC SHA-256" wird unterstützt. |
Type |
typ |
Der Tokentyp. Nur "JWT" wird unterstützt. JWT steht für JSON-Webtoken. |
KID |
kid |
Das Schlüsselversionsfeld der App. Es kann auf der Registerkarte mit den App-Einstellungen auf der App-Verwaltungswebsite gefunden werden. |
Version |
ver |
Die Versions-ID des Tokens. |
Issuer |
iss |
Der Prinzipal, der das Token ausgestellt hat. |
Expiration |
exp |
Die Ablaufzeit, zu der oder nach der das Token nicht mehr zur Verarbeitung angenommen werden darf. Sie wird als Anzahl der Sekunden ab Mitternacht des 1. Januar 1970 in der koordinierten Weltzeit (UTC) ausgedrückt. |
Audience |
aud |
Die JWT-Zielgruppe, für die das Token vorgesehen ist. In diesem Fall ist dies der Domänennamen des App-Namens. |
User Identifier |
uid |
Die Benutzer-ID, die für die App eindeutig ist. |
Package SID |
urn:microsoft:appurl |
Die Windows-Client-ID der App, wenn sie über eine verfügt. |
Wir bieten ein Codebeispiel, das den serverseitigen Code zum Verarbeiten eines Authentifizierungstokens darstellt, das von einer App empfangen wurden. Das Token kann dann mit einer zuvor gespeicherten Version des Tokens überprüft werden, um den Benutzer durch Vergleichen von Benutzer-IDs zu authentifizieren. Details finden Sie im Thema zum Einmaligen Anmelden für Apps und Websites im Live Connect Developer Center.