gpt4 book ai didi

angularjs - IE11 覆盖内网环境下的 Bearer 授权 header

转载 作者:行者123 更新时间:2023-12-04 20:01:39 25 4
gpt4 key购买 nike

我在 IE11 中遇到了一个非常奇怪的问题,即使我是通过 AngularJS 设置的,浏览器也会覆盖我请求中的 Authorization header 。

基本上,我为所有看起来像这样的请求注册了一个 HTTP 拦截器:

AuthInterceptorService.request = function (config) {
config.headers.Authorization = "Bearer " + bearerToken;
}

这适用于所有浏览器(甚至在某些条件下的 IE)。我在 IIS 中将我的应用程序设置为允许匿名身份验证,并且我为此子站点禁用了基本/集成身份验证,但是,父配置启用了 Windows 身份验证。

偶尔发生的情况是浏览器会向静态文件的根 URL 发出请求(例如, /favicon.ico )。此请求被 401 拒绝。浏览器以协商身份验证响应并获取网站图标。此时,所有其他浏览器仍然让我的代码设置 Authorization header ,但是一旦在 IE 中发生这种集成身份验证,授权 header 似乎卡住了 - 无论我的代码做什么,授权 header 始终使用集成身份验证。这会导致对我的 API 的所有请求都失败,因为不存在不记名 token 。

我能够通过指定一个更本地的 favicon(静态文件可以匿名提供)来解决 favicon 问题,但我想知道这个问题是否有一个不那么笨拙的解决方案。我能否以某种方式说服 IE 允许我设置 Authorization header ,即使 Windows 身份验证已在先前的请求中进行?

注意:我找到了 this question这似乎是相关的(可能是相同的根本原因)。

最佳答案

如果您查看 RFC 4559 document 的协商操作示例,它涉及 IE 使用的伪机制,用于在与 IIS 进行身份验证时协商安全性选择。

The first time the client requests the document, no Authorization
header is sent, so the server responds with

       S: HTTP/1.1 401 Unauthorized
S: WWW-Authenticate: Negotiate

The client will obtain the user credentials using the SPNEGO GSSAPI mechanism type to identify generate a GSSAPI message to be sent to
the server with a new request, including the following Authorization
header:

       C: GET dir/index.html
C: Authorization: Negotiate a87421000492aa874209af8bc028

The server will decode the gssapi-data and pass this to the SPNEGO
GSSAPI mechanism in the gss_accept_security_context function. If the context is not complete, the server will respond with a 401 status
code with a WWW-Authenticate header containing the gssapi-data.

       S: HTTP/1.1 401 Unauthorized
S: WWW-Authenticate: Negotiate 749efa7b23409c20b92356

The client will decode the gssapi-data, pass this into
Gss_Init_security_context, and return the new gssapi-data to the
server.



所以,我认为你们不可能在谈判过程中混在一起,因为这个过程是内部的

关于angularjs - IE11 覆盖内网环境下的 Bearer 授权 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28947301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com