Как узнать, может ли веб-приложение ASP.Net обрабатывать привязку на основе файлов cookie?
Я читал эту статью об устранении проблем привязки сеанса шлюза приложений Azure и в качестве возможной причины в ней указано: "Мое приложение не может обрабатывать привязку на основе файлов cookie", как мне узнать, может ли мое веб-приложение ASP.Net обрабатывать привязку на основе файлов cookie или не?
Спасибо,
1 ответ
Во-первых, поскольку вы размещаете веб-сайт на виртуальной машине Azure, вы обычно будете действовать так же, как и локально, в отличие от виртуальной машины службы приложений Azure - для этого параметра вы можете просто переключить переключатель, чтобы включить или отключить сопоставление ARR. через Портал Azure> Параметры приложения.
Пожалуйста, ознакомьтесь с последними изменениями в этом блоге " Предстоящие изменения файлов cookie SameSite в ASP.NET и ASP.NET Core".
Просто для пояснения - шлюз приложений может выполнять привязку на основе сеанса только с помощью cookie. Судя по описанию проблемы, вы установили "cookieBasedAffinity": "Включено", как указано в документе, это правильно? Вы можете использовать в зависимости от потребностей вашего приложения.
<httpCookies domain="" httpOnlyCookies="true|false" requireSSL="true|false" />
Вы не можете добавить файлы cookie в web.config, но можете добавить настраиваемый раздел для доступа к файлам cookie. Вы можете справиться с этим с помощью кода, используя свойство System.Web.HttpCookie.HttpOnly. как упоминалось в этой статье.
myHttpOnlyCookie.HttpOnly = true;
myHttpOnlyCookie.Name = "MyHttpOnlyCookie";
Response.AppendCookie(myHttpOnlyCookie);
Как упоминалось в том же документе, на который вы ссылаетесь, вы можете просмотреть журналы сеанса, чтобы определить, есть ли в файлах cookie, предоставленных клиентом, сведения об ARRAffinity. Если вы не найдете сведения о ARRAffinity, такие как "ARRAffinity= ARRAffinityValue", в установлен cookie, это означает, что клиент не отвечает cookie ARR.
Дополнительное обсуждение этой темы - Аутентификация токена против файлов cookie