YA DISPONIBLE

Azure App Service: control de cookies SameSite y revisión 4.7.2 de .NET Framework

Fecha de publicación: 18 enero, 2020

Con la actualización de enero de 2020 de Azure App Service, se instalan las revisiones de .NET Framework que actualizan el modo en el que las aplicaciones de .NET Framework controlan la propiedad de cookie SameSite. El servicio también implementa un comportamiento de compatibilidad de App Service que se aplica a todas las aplicaciones que se ejecutan en App Service en escenarios en los que una cookie tiene establecida la propiedad SameSite en "None".

Las versiones de .NET Core en la plataforma de App Service ya contienen las actualizaciones para el control de las cookies SameSite y no cambiarán con la actualización del servicio de enero de 2020.

La carga de Azure App Service se está implementando a lo largo de enero de 2020, con una fecha de finalización estimada de finales del mismo mes en la nube pública de Azure, todos los entornos de App Service y las nubes nacionales.  Consulte la información más reciente sobre la implementación.

Puesto que las actualizaciones se implementan de forma gradual en el servicio, las aplicaciones comenzarán a ejecutarse en la nueva carga de App Service en momentos diferentes durante el período de implementación.  Los desarrolladores pueden comprobar la versión de App Service en el sitio de SCM para determinar si las aplicaciones se ejecutan en la carga de App Service actualizada. El sitio de SCM está disponible en el portal, en Herramientas de desarrollo --> Herramientas avanzadas.  Como alternativa, los desarrolladores pueden ir directamente al sitio de SCM de una aplicación con el siguiente formato de dirección URL: https://nombre-del-sitio.scm.azurewebsites.net.

En el caso de los sitios de App Service en Windows, la página principal del sitio de SCM muestra la versión de Azure App Service.  Si la versión es 86.0.7.148 (o posterior), la aplicación asociada se ejecuta en la versión recién actualizada de App Service.

En el caso de los sitios de App Service en Linux, al hacer clic en la opción Entorno en el menú de la parte superior del sitio de SCM, se devolverá una página con todas las variables de entorno de los sitios. La página resultante tendrá una dirección URL con el formato https://nombre-del-sitio.scm.azurewebsites.net/Env.  La variable de entorno PLATFORM_VERSION muestra la versión actual de App Service.  Si la versión es 86.0.7.148 (o posterior), la aplicación asociada se ejecuta en la versión recién actualizada de App Service.

Detalles de la revisión de .NET Framework para SameSite

En este artículo se describen de forma específica las diferencias en el control de cookies SameSite que incluye la revisión 4.7.2 de .NET Framework. 

Con la revisión de .NET Framework instalada, .NET Framework cambia el valor predeterminado de la propiedad de configuración cookieSameSite para Estado de la sesión y Autenticación de formularios a "Lax".   .NET Framework también envía automáticamente la propiedad de cookie SameSite=None en la conexión cuando HttpCookie.SameSite se ha establecido en "None".

Encontrará más información sobre el control de las cookies SameSite con .NET Framework en este artículo y en la documentación.

En este artículo se ofrece más información sobre el valor predeterminado de cookieSameSite para la autenticación de formularios. 

En este artículo se ofrece más información sobre el valor predeterminado de cookieSameSite para el estado de la sesión.

En este artículo se ofrece más información sobre el control de las cookies SameSite con .NET Core. 

Detalles sobre el comportamiento de compatibilidad de Azure App Service

Además de la revisión de .NET Framework, Azure App Service ha incorporado un comportamiento de compatibilidad para los casos en los que una respuesta HTTP/HTTPS incluye un encabezado de cookie con una propiedad SameSite establecida en "None" y el agente de usuario solicitante coincide con un subconjunto específico de exploradores antiguos que no admiten el último estándar de SameSite de 2019 y, por tanto, no reconocen la propiedad SameSite de "None".  Cuando se detecte un explorador antiguo, Azure App Service quitará automáticamente la propiedad de cookie SameSite=None si se detecta en los encabezados de respuesta.

El efecto neto del comportamiento de compatibilidad de App Service es que un subconjunto específico de exploradores más antiguos no recibirá un valor SameSite desconocido (que puede hacer que estos exploradores vuelvan al comportamiento de SameSite=Strict), mientras que los exploradores más recientes, como Chrome v80, recibirán la propiedad de cookie SameSite=None.

La lógica de detección específica que utiliza App Service para decidir cuándo quitar la propiedad SameSite=None de una respuesta sigue la pseudológica documentada en este artículo.

Los desarrolladores deben revisar el uso y la dependencia (si la hay) de sus aplicaciones en la propiedad de cookie SameSite y actualizar la lógica de las aplicaciones con la detección de agente de usuario y el control especial según corresponda al escenario de cada aplicación. El comportamiento de compatibilidad de la plataforma App Service está pensado únicamente como mitigación parcial para ayudar a los desarrolladores mientras las aplicaciones se actualizan para controlar el comportamiento de SameSite de 2019 implementado en las versiones más recientes de los exploradores.

Los desarrolladores deben revisar también los requisitos adicionales de los exploradores cuando las cookies incluyan la propiedad SameSite=None. Por ejemplo, Chrome v80 solo aceptará SameSite=None si la cookie también está marcada con el atributo Secure y la cookie se transmite a través de una conexión HTTPS. Más detalles.  

El comportamiento de compatibilidad de Azure App Service se implementa en la infraestructura perimetral de la red de App Service. El comportamiento está activo para todos los sitios que se ejecutan en App Service, independientemente del lenguaje o la plataforma que use el sitio. La funcionalidad de compatibilidad funciona para los sitios que se ejecutan en las variaciones de Linux y Windows de App Service, en entornos de App Service Environment y en todas las implementaciones en nubes nacionales de Azure App Service.

 

  • App Service
  • Services

Productos relacionados