gpt4 book ai didi

symfony - 爱普生 TM-T88V-i 摘要验证不起作用

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

我的 Epson TM-T88V-i 收据打印机尝试从需要打印机通过 HTTP 摘要进行身份验证的服务器 URL 获取 XML 数据。 (爱普生的这个功能叫做“Server Direct Print”)

我可以从打印机的 Web 控制台向服务器发送测试请求,但 HTTP 摘要身份验证失败。如果我让打印机尝试在服务器上进行身份验证,也会发生同样的情况。

如果我尝试通过浏览器访问 URL,则会出现 HTTP 摘要用户名+密码框,如果我输入凭据,XML 将按预期显示在浏览器中。这表明,服务器端的 HTTP 摘要机制设置正确(我使用的是 PHP 框架 Symfony 2.8)。

在服务器端,我看到以下日志信息:

Step 1
[2016-04-03 16:33:01] security.INFO: An AuthenticationException was thrown; redirecting to authentication entry point. {"exception":"[object] (Symfony\Component\Security\Core\Exception\AuthenticationCredentialsNotFoundException(code: 0): A Token was not found in the TokenStorage. at /home/.../src/Symfony/Component/Security/Http/Firewall/AccessListener.php:53)"}


Step 2
[2016-04-03 16:33:01] security.DEBUG: Calling Authentication entry point.


Step 3
[2016-04-03 16:33:01] security.DEBUG: Digest Authorization header received from user agent. {"header":"username=\"printer\", realm=\"example\", nonce=\"MTQ1OTk5Mzk4MS40NjQ3OmI0OTVmN2ZkZTlhYmE1NmNjNDIxNmIxMWU0OGVmYjUz\", uri=\"/export\", cnonce=\"MDAxNjM0\", nc=00000001, qop=\"auth\", response=\" c6ad88607624efd17f7de602f6ee9def\""}
Step 4
[2016-04-03 16:33:01] security.DEBUG: Unexpected response from the DigestAuth received; is the header returning a clear text passwords? {"expected":" 741bff6abed513b6948c26eae529b6b6","received":" c6ad88607624efd17f7de602f6ee9def"}


Step 5
[2016-04-03 16:33:01] security.INFO: Digest authentication failed. {"exception":"[object] (Symfony\Component\Security\Core\Exception\BadCredentialsException(code: 0): Incorrect response at /home/.../src/Symfony/Component/Security/Http/Firewall/DigestAuthenticationListener.php:107)"}



日志文件告诉我们服务器端发生了什么:
  • 在步骤 1+2 中,Epson 尝试访问受 HTTP 摘要保护的服务器 URL,服务器发送带有随机数的 401“未经授权”响应(我们在此日志文件中没有看到)
  • 在步骤 3 中,爱普生发送 HTTP 摘要客户端授权请求,包括所有必要的数据。 回复 参数包含应该从其他授权参数中生成的散列
  • 在第 4 步中,我的 symfony 2.8 应用程序说,Epson 在第 3 步中发送的散列响应参数不是 HTTP 摘要过程所期望的参数。
  • 步骤 5 最后显示,HTTP 摘要认证失败。

  • 据我了解,摘要认证过程(如 wikipedia 所述)是正确的,除了爱普生在他的认证请求中没有计算正确的哈希值。

    有谁知道爱普生为什么发错 回复 参数还是有人让这个场景起作用?

    最佳答案

    经过 2 天的调试,我可以解决问题。我的摘要身份验证密码的长度是 40 个字符。我减少了大约 20 个字符。不行,dohhh。

    关于symfony - 爱普生 TM-T88V-i 摘要验证不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36387298/

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