【问题标题】:401 unauthorized exception Web service401 未授权异常 Web 服务
【发布时间】:2013-06-05 07:31:23
【问题描述】:

我在从前端服务器调用 Web 服务时收到 401 未授权异常,但相同的代码在应用服务器中运行良好。

为了验证这一点,我们创建了控制台应用程序来调用 Web 服务。 当我们从应用服务器调用服务时,它工作正常,但在 fe 服务器中同样失败。

我们发现了一种行为,它没有在 FE 服务器中的一段代码下方执行。

ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateRemoteCertificate);

(我们在 ValidateRemoteCertificate 方法中放入了一些 cmets,我们可以看到消息显示在应用服务器而不是前端服务器)

  1. FE 和应用服务器中的所有证书都相同
  2. 使用相同的用户凭据运行。

之前是否有人遇到过同样的问题,还是我需要验证任何配置?

【问题讨论】:

    标签: .net web-services iis


    【解决方案1】:

    401 通常与访问服务而不是 SSL 证书有关。您应该仔细检查以下一些内容

    如果使用匿名

    • 在 IIS 中 - 身份验证 - 确保在 Web 应用程序上启用匿名身份验证
    • 确保 IUSR 权限位于您正在使用的文件夹权限上

    如果使用窗口验证

    • 在 IIS 中 - 身份验证 - 确保在 Web 应用程序上启用了 Windows 身份验证
    • 确保 IIS_IUSRS 权限位于您正在使用的文件夹权限以及您想要访问的用户的角色上。
    • 确保您的应用程序池正在使用网络服务或委托用户帐户,正确设置以使用 kerberos。

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2012-11-11
      • 2015-11-13
      • 1970-01-01
      • 2017-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-07
      • 1970-01-01
      相关资源
      最近更新 更多