Azure 应用程序网关中的安全 cookie 和 TLS 终止

问题描述 投票:0回答:1

我的应用程序的一个要求是其 cookie 仅通过 HTTPS 提供(安全属性)。它还将托管在配置了 TLS 终止的 Azure 应用程序网关后面:客户端到网关的连接是安全的,而网关到后端的连接则不安全。

这会导致应用程序拒绝安全 cookie,因为其连接不安全:

应用程序配置为发出安全 cookie。这些 cookie 要求浏览器通过 SSL(https 协议)发出请求。但是,当前请求不是通过 SSL 进行的。

我如何配置:

  • 通过不安全连接接受安全cookie的应用程序 或
  • 应用程序网关将 cookie 作为非安全的传递到后端?

似乎没有其他关于此专门针对 Azure 应用程序网关的问题,并且 Microsoft 的文档从未提及任何有关 cookie 安全性的内容。

session-cookies azure-application-gateway
1个回答
0
投票

Cookie 要么发送到服务器,要么不发送;除了 cookie 的初始发布之外,不会传输任何与安全相关的内容。客户端将根据初始

Secure
标头中设置的
Set-Cookie
标志设置的 cookie 发出方式来确定是否执行此操作,即使如此,这仍然是客户端的决定。然而,除此之外,您的应用程序期望仅在 HTTPS 上接收此 cookie,如果是在纯文本 HTTP 上接收的,则明确拒绝它。

应用程序网关已经将 cookie 作为“非安全”传递,因为它是通过 HTTP 进行传递的,并且

Cookie
标头不包含任何标志;只是键和值。您要么必须更改后端应用程序以通过 HTTP 接受此 cookie,要么通过 HTTPS 将应用程序网关连接到后端,这违背了您的要求。应用程序网关与 cookie 的唯一相关性与亲和性 Cookie 和标头重写(不建议)有关,这就是为什么没有任何特定于 cookie 安全性的文档,因为它对于应用程序网关在代理流量中的角色并不重要。

© www.soinside.com 2019 - 2024. All rights reserved.