IE 9-10 и Edge не сохраняют cookie во время перенаправления 403
Я пытался понять это весь день. У меня есть одно приложение, которое перенаправляет в другое приложение для обработки входов в систему. Первое приложение перенаправляет на URL webAPI. Этот URL затем принимает один из параметров и создает токен. Затем он отправляет ответ 403 с заголовком Set-Cookie. Файл cookie, который отправляется, заключается в том, что заголовок никогда не устанавливается.
После нескольких исследований я подумал, что может понадобиться заголовок P # P, поэтому я попробовал различные комбинации этого.
Вот код:
Public Function Authenticate(t As String, forwardURL As String) As HttpResponseMessage
Dim resp As New HttpResponseMessage()
If VestigoBusinessObjects.UserToken.IsValid(t, EncType.AES) Then
Dim user As New UserToken(t, EncType.AES)
user.ResetExperation()
'Create usertoken cookie
Dim Cookie = New CookieHeaderValue("t", user.GetEncTicket())
Cookie.Expires = DateTimeOffset.Now.AddDays(1)
Cookie.Domain = Request.RequestUri.Host
Cookie.Path = "/"
resp.Headers.AddCookies(New CookieHeaderValue() {Cookie})
resp.StatusCode = HttpStatusCode.RedirectMethod
resp.Headers.Location = New Uri(forwardURL)
resp.Headers.Add("Pragma", "no-cache")
resp.Headers.Add("Cache-Control", "no-cache")
Return resp
End If
resp.StatusCode = HttpStatusCode.Unauthorized
Return resp
End Function
Вот заголовки, которые я вижу в браузере:
URL запроса: удален, потому что он не позволяет мне публиковать их?
т = ЬВ%2B%2FpRLq%2BzobRcXgQuw5rjMa8Yeb1Wxb7qIZCtjLfwiN8RNT%2BQYjzIuWI9j3JPn4qnpXpgK%2F%2B6ucL96lBmpD6ryIbFJvP3yPOfJjXuZsECfWlj58etczEco79q0SNJj0c%2BwKLREh5FWMfTvN%2BQxSn8nMEr6JzS06CuPizM1k0Kef52ZrHVkxHDv6qVyGLJrxRFebwbpFT0LNMCCihJ%2BZ%2FbmfvvKl9lfg18vHT8nhL1dDtAlR0Fd%2FdSuB5L6Yg3Yj%3F%3FHKZNy0zYBTVwdL7NXMFGXw%3D%3D&forwardurl= HTTP%3A%2F%2Flocalhost%3A4644%2FInternalMonitor.html
Метод запроса:GET
Код статуса:303 См. Другое
Удаленный адрес:[::1]:4644
Заголовки ответа
Cache-Control: нет кэша
Content-Length:0
Дата: вторник, 29 ноября 2016 г. 22:58:11 GMT
Местоположение: удалено, потому что не позволяет публиковать их
P3P:CP="IDC DSP COR IVAi IVDi НАШ TST"
Pragma: нет кэша
Сервер:Microsoft-IIS/10,0
Set-Cookie: т =; истекает = ср, 30 ноября 2016 г. 22:58:12 мск; домен = локальный; Путь = /
X-Сеть САШ-версия: 4.0.30319
X-Powered-By: ASP.NET
X-файлы исходного кода:? = UTF-8 В?
YzpcVEZTXFZlc3RpZ29cVGVzdFxDZW50cmFsTW9uaXRvclxhcGlcQXV0aGVudGljYXRpb25Db250cm9s
bGVyXEF1dGhlbnRpY2F0ZQ ==? =
Заголовки запроса
Примите:text/html,application/xhtml+xml,application/xml;q=0,9, image / webp,/; q = 0. 8
Accept-Encoding: gzip, deflate, sdch, br
Accept-Language: EN-US, ан; д = 0,8
Cache-Control: нет кэша
Подключение: держать-жив
Печенье:ASP.NET_SessionId=cnru1r4g0svzeomwglkwestw; .ASPXAUTH=1566301093F4FC41F147432F8A4B044E3A19EFC46C47A1BE54F95A98E08EE8952197E5212230F0416776480CA3496036DCA0C0B8AEF0D08675D4B20E655E107F055E1D60150BF84334F65FE63E134B0252EF3B8F02E1E0BC372DBA80006300215AAE095F4333F48BB04D0DF315D825BF1A1B0F27A81E32E82ACEEA791BF11551A8F96A1B0AED9EC11EEA5EF34AE03406; hoursDiffGMTTime=-5; ScreenResolution=1920x1080; BrowserResolution=1920x950; т =FDB
Ведущий: локальный: 4644
Pragma: нет кэша
Обновление нестабильным-запросов: 1
Пользователь-агент:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/54.0.2840.99 Safari/537.36
Параметры строки запроса
т: ББ +/pRLq+zobRcXgQuw5rjMa8Yeb1Wxb7qIZCtjLfwiN8RNT+QYjzIuWI9j3JPn4qnpXpgK/+6ucL96lBmpD6ryIbFJvP3yPOfJjXuZsECfWlj58etczEco79q0SNJj0c+wKLREh5FWMfTvN+QxSn8nMEr6JzS06CuPizM1k0Kef52ZrHVkxHDv6qVyGLJrxRFebwbpFT0LNMCCihJ+Z/bmfvvKl9lfg18vHT8nhL1dDtAlR0Fd/dSuB5L6Yg3Yj??HKZNy0zYBTVwdL7NXMFGXw== forwardurl: удален, потому что он не позволит мне разместить их
Любой вклад будет действительно оценен.