代码之家  ›  专栏  ›  技术社区  ›  Jim G.

如何在没有表单身份验证的虚拟目录中公开WCF服务?

  •  2
  • Jim G.  · 技术社区  · 16 年前

    我的团队使用表单身份验证构建内部托管的ASP.NET MVC网站。

    我想在ASP.NET MVC网站所在的虚拟目录中托管WCF服务。

    我的问题:

    也就是说,无障碍 表单身份验证。

    我目前的困境是:

    • FTESTF.exe,但尝试使用以下WCI客户端访问时出错:

    错误:无法从中获取元数据 http://localhost/Services/MyService.svc 如果这是Windows(R)通信 访问,请检查您是否有 元数据发布,请参考 MSDN文档位于 http://go.microsoft.com/fwlink/?LinkId=65455.WS-Metadata

    4 回复  |  直到 16 年前
        1
  •  2
  •   KP.    16 年前

    mex endpoint

    如果这样做,另一种可能是禁用services文件夹上的授权。我从未测试过这个,但理论上它可能有效。。。

    localhost ,将WCF服务放入 localhost/services/myservice.svc 等等。然后将web.config添加到 /services

    <configuration>
       <authorization>
          <allow users="*" />
       </authorization>
    </configuration>
    
        2
  •  1
  •   Luke Foust    16 年前

    如果可以将.svc文件放入虚拟目录的子文件夹中,则可以利用 属性,以允许使用不同级别的授权对其进行访问。 Here is a tutorial

        3
  •  1
  •   Jim G.    16 年前

    非常感谢所有试图回答这个问题的人。

    之后

    哦,而且逐步完成代码是非常重要的 低估 . ;)

        4
  •  1
  •   John Saunders    16 年前

    <system.servicemodel> 如果尚未出现,则需要添加的部分:

    <bindings>
      <wsHttpBinding>   <!-- one of many possible bindings -->
        <binding name="...">          
          <security mode="None"> <-- allows anonymous access -->
            <message clientCredentialType="None"/> <-- allows anonymous access -->
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>
    
    推荐文章