首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WWW-Authenticate:协商的身份验证问题

WWW-Authenticate:协商的身份验证问题
EN

Stack Overflow用户
提问于 2010-11-24 18:55:16
回答 2查看 111.8K关注 0票数 39

我正在尝试访问一个受密码保护的网站。它没有使用基本身份验证(即使在firefox中弹出相同的用户/密码框),因为响应头是WWW-Authenticate: Negotiate

我想通过发送正确的报头来自动化登录过程。

在basic中,您可以使用类似以下内容:

代码语言:javascript
复制
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

我将使用什么来进行协商?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-23 08:20:49

web服务器提示您输入SPNEGO (简单且受保护的GSSAPI协商机制)令牌。

这是微软的一项发明,用于协商用于Web SSO (单点登录)的身份验证类型:

  • NTLM
  • 或Kerberos。

请参见:

微软MSDN图书馆:

  • RFC 4178:

票数 34
EN

Stack Overflow用户

发布于 2014-11-06 11:27:25

将这些信息放在这里是为了给未来的读者带来好处。

  • 401 (Unauthorized) response header ->请求身份验证头
  • 这里有几个WWW-Authenticate response headers。(完整列表在IANA:.)
  • WWW-Authenticate: Basic->授权:基本+令牌-用于基本authentication
  • WWW-Authenticate: NTLM->授权: NTLM +令牌(2 challenges)
  • WWW-Authenticate: Negotiate身份验证:协商+令牌-用于Kerberos身份验证和
  • 顺便说一句: IANA具有此angry remark about Negotiate:此身份验证方案违反了HTTP语义(面向连接)和语法(使用与WWW和授权报头字段syntax).

不兼容的语法

仅当您的401质询中也有Authorization: Basic标头时,才能设置WWW-Authenticate: Basic标头。

但是,由于您使用的是WWW-Authenticate: Negotiate,因此基于Kerberos的身份验证应该是这种情况。

票数 53
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4265975

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档