C# 显示wsdl的wcf基本身份验证请求

C# 显示wsdl的wcf基本身份验证请求,c#,wcf,soap,C#,Wcf,Soap,我正在使用UserNamePasswordValidator来使用wcf服务,但是我想只向经过身份验证的用户显示wsdl,我想实现基本身份验证,然后验证用户和密码,并通过https向wsdl显示服务,我该怎么做?我正在使用basicHttpBinding,需要与其他语言的互操作性。您可能需要做大量工作来添加用户名/密码验证以保护WSDL。一个更简单的解决方案是简单地禁用服务发布元数据,并向需要它的客户机提供WSDL的副本。他们可以像从元数据端点生成代理一样轻松地从WSDL文件生成代理。另一个选项

我正在使用UserNamePasswordValidator来使用wcf服务,但是我想只向经过身份验证的用户显示wsdl,我想实现基本身份验证,然后验证用户和密码,并通过https向wsdl显示服务,我该怎么做?我正在使用basicHttpBinding,需要与其他语言的互操作性。

您可能需要做大量工作来添加用户名/密码验证以保护WSDL。一个更简单的解决方案是简单地禁用服务发布元数据,并向需要它的客户机提供WSDL的副本。他们可以像从元数据端点生成代理一样轻松地从WSDL文件生成代理。另一个选项是将服务器上的应用程序(例如,承载WCF服务器的IIS应用程序)配置为需要某种凭据才能访问该应用程序。我喜欢以编程方式执行操作,将此责任留给服务,而不是web服务器(iis),因为在MVC应用程序中添加了wcf服务,只是为了托管网站。第一个选项可以工作,但需要一些自动化的东西,例如,创建一个控制器以返回服务wsdl,并通过ActionFilterAttribute进行身份验证。如果是完美的,您可以将actionfiterattribute之类的东西用于MVC框架和wcf服务。