首先我使用Azure活动目录授权我的asp.net应用程序,然后我尝试访问也在Azure上的WCF服务。但是在调用服务时未经授权获取错误401。访问时我是否遗漏了什么?
答案 0 :(得分:0)
该错误意味着访问被拒绝的401 HTTP错误。 我想知道你遇到的401错误的子状态代码。 401错误包含以下子状态代码:
401.1: Access is denied due to invalid credentials.
401.2: Access is denied due to server configuration favoring an alternate authentication method.
401.3: Access is denied due to an ACL set on the requested resource.
401.4: Authorization failed by a filter installed on the Web server.
401.5: Authorization failed by an ISAPI/CGI application.
401.7: Access denied by URL authorization policy on the Web server.
此外,asp.net应用程序是否已成功在IIS上本地运行到WCF?或者你刚试过在Azure上运行它?
您可以创建自定义用户并使其正常工作,因此如果您遇到此问题,可以在IIS服务器上尝试以下操作:
或者你可以尝试给予"完全控制"到" IUSR"帐户。也许只是特定用户没有对磁盘的读取权限。
答案 1 :(得分:0)
我们遇到了同样的问题,但这仅仅是因为我们正在访问“ scm”端点。有趣的是,如果您创建一个名称为“ webapp”的Web应用程序并获得地址https://webapp.azurewebsites.net/ServiceApplication.svc,则还可以通过https://webapp.scm.azurewebsites.net/ServiceApplication.svc访问该服务。但是此地址不允许匿名访问。当您使用不带“ scm”的地址时,不会出现此错误。