【问题标题】:WCF. Set user credentialsWCF。设置用户凭据
【发布时间】:2015-08-07 20:18:54
【问题描述】:

对不起,我的英语不好。

我有 wcf 服务项目和 asp.net mvc 项目 我正在使用 ninject wcf 客户端扩展来注入此示例中的服务

 Bind<IService>().ToServiceChannel();

现在我需要为 wcf 服务添加身份验证和授权。我已经实现了UserNamePasswordValidatorIAuthorizationPolicy

在所有示例中使用的服务参考和用户凭据添加如下:

ServiceClient host = new ServiceClient();
host.ClientCredentials.UserName.UserName = "user";
host.ClientCredentials.UserName.Password = "pass";

但我没有创建服务引用。我只有接口。并像这里一样使用它:

public class HomeController : Controller
{
    private readonly IService _service;
    public HomeController(IService service)
    {
        _service = service;    
    }
}

如何添加用户凭据?

【问题讨论】:

    标签: c# asp.net wcf ninject ninject-extensions


    【解决方案1】:

    您需要创建一个 channelFactory 来设置用户凭据:

    例子:

    var result = new ChannelFactory<IService>("*", new EndpointAddress(serviceAddress));
        result.Credentials.UserName.UserName = "Username";
        result.Credentials.UserName.Password = "password";
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-26
      • 1970-01-01
      • 2013-07-31
      • 2017-03-22
      • 2010-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多