JETZT VERFÜGBAR

Azure App Service: Verarbeitung von SameSite-Cookies und Patches für .NET Framework 4.7.2

Veröffentlichungsdatum: 18 Januar, 2020

Im Rahmen des Updates für Azure App Service im Januar 2020 wurde im .NET Framework gepatcht, wie .NET Framework-Apps die Installation von SameSite-Cookieeigenschaften verarbeiten. Der Dienst beinhaltet zudem ein App Service-Kompatibilitätsverhalten, das für alle in App Service ausgeführten Anwendungen gilt, bei denen die SameSite-Eigenschaft auf „None“ festgelegt ist.

Die .NET Core-Versionen der App Service-Plattform beinhalten die Updates für die Verarbeitung von SameSite-Cookies bereits und sind deshalb von den Änderungen des Dienstupdates im Januar 2020 nicht betroffen.

Die Azure App Service-Nutzlast wird im gesamten Januar 2020 bereitgestellt. Das Abschlussdatum für die öffentliche Azure-Cloud, alle App Service-Umgebungen und nationale Clouds wird auf Ende Januar 2020 geschätzt.  Hier finden Sie aktuelle Informationen zur Bereitstellung.

Da die Updates im Dienst inkrementell bereitgestellt werden, werden Anwendungen zu unterschiedlichen Zeitpunkten der Bereitstellungsphase mit der neuen App Service-Nutzlast ausgeführt.  Entwickler können feststellen, ob Anwendungen mit der aktualisierten App Service-Nutzlast ausgeführt werden, indem sie die App Service-Version auf der SCM-Website überprüfen. Sie können die SCM-Website im Portal über Entwicklungstools > Erweiterte Tools aufrufen.  Alternativ können Entwickler direkt zur SCM-Website einer Anwendung navigieren, indem sie folgendes URL-Format verwenden: https://persönlicher-websitename.scm.azurewebsites.net.

Die Azure App Service-Version für App Service-Websites unter Windows wird auf der Homepage der SCM-Website angezeigt.  Wenn es sich um Version 86.0.7.148 oder höher handelt, wird die zugehörige Anwendung mit der neu gepatchten App Service-Version ausgeführt.

Für App Service-Websites unter Linux wird eine Seite mit den Umgebungsvariablen aller Websites angezeigt, wenn Sie im oberen Menü der SCM-Website auf Umgebung klicken. Die resultierende Seite weist folgendes URL-Format auf: https://persönlicher-websitename.scm.azurewebsites.net/Umgebungsvariable.  Die Umgebungsvariable PLATFORM_VERSION steht für die aktuelle Version von App Service.  Wenn es sich um Version 86.0.7.148 oder höher handelt, wird die zugehörige Anwendung mit der neu gepatchten App Service-Version ausgeführt.

Details zum .NET Framework-Patch für SameSite

Ausführliche Informationen zu den Unterschieden bei der Verarbeitung von SameSite-Cookies im Patch für .NET Framework 4.7.2 finden Sie in diesem Artikel

Wenn der Patch für das .NET Framework installiert ist, werden die Standardwerte der Konfigurationseigenschaft cookieSameSite für Sitzungszustand und Formularauthentifizierung in „Lax“ geändert.   Das .NET Framework sendet die Cookieeigenschaft „SameSite=None“ automatisch bei der Übertragung, wenn für HttpCookie.SameSite der Wert „None“ festgelegt wurde.

Weitere Informationen zur Verarbeitung von SameSite-Cookies im .NET Framework finden Sie in diesem Artikel und in unserer Dokumentation.

Weitere Informationen zum Standardwert cookieSameSite der Formularauthentifizierung finden Sie in diesem Artikel

Weitere Informationen zum Standardwert cookieSameSite des Sitzungszustands finden Sie in diesem Artikel.

Weitere Informationen zur Verarbeitung von SameSite-Cookies in .NET Core finden Sie in diesem Artikel

Details zum Azure App Service-Kompatibilitätsverhalten

Neben dem Patch für das .NET Framework wurde in Azure App Service auch ein Kompatibilitätsverhalten für den Fall festgelegt, dass eine HTTP- oder HTTPS-Antwort einen Cookieheader mit einer auf „None“ festgelegten SameSite-Eigenschaft enthält und beim anfordernden Benutzer-Agent ein älterer Browser erkannt wird, der den SameSite-Standard aus dem Jahr 2019 nicht unterstützt und den Wert „None“ der SameSite-Eigenschaft nicht erkennt.  Wenn ein älterer Browser erkannt wird, wird die Cookieeigenschaft „SameSite=None“ automatisch durch Azure App Service entfernt, wenn sie in den Antwortheadern ermittelt wird.

Letztendlich hat das App Service-Kompatibilitätsverhalten zur Folge, dass bestimmte ältere Browser keinen unbekannten SameSite-Wert empfangen (was dazu führen kann, dass ältere Browser zum Verhalten „SameSite=Strict“ zurückkehren), während neuere Browser wie Chrome 80 die Cookieeigenschaft „SameSite=None“ empfangen.

Die von App Service eingesetzte spezifische Erkennungslogik, mit der entschieden wird, wann die Eigenschaft „SameSite=None“ aus einer Antwort entfernt werden soll, folgt der in diesem Artikel dokumentierten Pseudologik.

Entwickler sollten prüfen, wie ihre Anwendungen die SameSite-Cookieeigenschaft nutzen und welche Abhängigkeiten (falls vorhanden) zu dieser bestehen. Zudem sollten sie die Anwendungslogik um die Erkennung des Benutzer-Agents und spezielle Vorgehensweisen für jedes Anwendungsszenario erweitern. Das Kompatibilitätsverhalten der App Service-Plattform dient nur als Teillösung, die Entwickler unterstützen soll, während ihre Anwendungen aktualisiert werden, sodass das SameSite-Verhalten aus dem Jahr 2019 verarbeitet werden kann, das in neueren Browserversionen verwendet wird.

Darüber hinaus sollten Entwickler sich mit zusätzlichen Browseranforderungen vertraut machen, wenn ihre Cookies die Eigenschaft „SameSite=None“ enthalten. Chrome 80 berücksichtigt „SameSite=None“ beispielsweise nur, wenn das Cookie ebenfalls mit dem Attribut Secure versehen und über eine HTTPS-Verbindung übertragen wird. Hier finden Sie weitere Informationen.  

Das Azure App Service-Kompatibilitätsverhalten wird in die Netzwerkedgeinfrastruktur von App Service implementiert. Das Verhalten ist für alle in App Service ausgeführten Websites aktiv und von Sprache oder Framework unabhängig. Die Kompatibilitätsfunktion gilt auch für Websites, die unter Linux- oder Windows-Varianten von App Service ausgeführt werden, sowie für App Service-Umgebungen und alle nationalen Cloudbereitstellungen von Azure App Service.

 

  • App Service
  • Services

Verwandte Produkte