Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTTP摘要身份验证中对NextOnce指令的浏览器支持 我已经做了一个基于C++的HTTP服务器(或重新措辞-溢出另一个海洋中的一个),并遇到了一个HTTP摘要认证问题。p>_C++_Http Authentication_Digest Authentication - Fatal编程技术网

HTTP摘要身份验证中对NextOnce指令的浏览器支持 我已经做了一个基于C++的HTTP服务器(或重新措辞-溢出另一个海洋中的一个),并遇到了一个HTTP摘要认证问题。p>

HTTP摘要身份验证中对NextOnce指令的浏览器支持 我已经做了一个基于C++的HTTP服务器(或重新措辞-溢出另一个海洋中的一个),并遇到了一个HTTP摘要认证问题。p>,c++,http-authentication,digest-authentication,C++,Http Authentication,Digest Authentication,根据说明,在身份验证信息头中使用nextnonce指令是实现一次性nonce机制的有效方法。我已经根据RFC完成了这项工作,但Chrome和Firefox似乎都忽略了该指令,并以初始nonce发出所有进一步的请求,从而触发了不必要的401响应。Firefox的示例说明: 第一个请求-我的服务器返回401并发出初始noncea1f778b2afc8590e4a64f414f663128b Firefox成功地进行了身份验证,并获得了带有身份验证信息的回复:nextnone=“0b72e74afb

根据说明,在
身份验证信息
头中使用
nextnonce
指令是实现一次性nonce机制的有效方法。我已经根据RFC完成了这项工作,但Chrome和Firefox似乎都忽略了该指令,并以初始nonce发出所有进一步的请求,从而触发了不必要的401响应。Firefox的示例说明:

第一个请求-我的服务器返回401并发出初始nonce
a1f778b2afc8590e4a64f414f663128b

Firefox成功地进行了身份验证,并获得了带有
身份验证信息的回复:nextnone=“0b72e74afbcab33a5aba05d4db03b801”
标题

Firefox发出从返回的html获取图像的新请求-仍然使用初始nonce
c1587dd7be6251fa715540e0d6121aa5
,因此返回带有新nonce和提供的nonce过期标志的回复。

与第一个映像请求的场景相同。

现在,身份验证使用新的nonce成功。

第二个请求的身份验证也成功。


从图中可以看出,即使我回复时使用了
身份验证信息:nextnone=“0b72e74afbcab33a5aba05d4db03b801”
在第一个请求成功授权后,接下来的两个请求仍然使用原始nonce,而不是提供的
nextnone
值。有没有人有过类似的经历?我肯定是做错了什么-尽管RFC说客户端应该用提供的
nextnone
值回复,因此这不是强制性的,我高度怀疑最流行的浏览器是否没有使用这种技术。

看起来这是自2001年以来就已经存在的已知Firefox错误


这是

谢谢,这是非常有价值的东西。然而,我在Chrome上也遇到了同样的问题,但我会扫描他们的bug数据库,看看他们是否也有一个待解决的bug。