将用户凭据从aspnet站点传递给wcf服务

时间:2011-01-26 09:49:53

标签: wcf credentials

如何将用户凭据从aspnet站点传递到wcf服务?

  • 没有冒充。 (网站必须由特定用户执行)
  • 不知道来电者密码。
  • 只传递某种神秘的安全背景。

网站和WCF服务都使用Windows / NTLM登录:身份验证模式=“Windows”

使用WCF服务:binding =“wsHttpBinding”

IIS 7.5。 2台服务器(2008r2)。

网站代码背后(当前 - 为执行网站的用户传递凭据):

protected void btSend_Click(object sender, EventArgs e)
{
  FunctionWhichCanOnlyBeCalledByASpecificUser();
  MyService.MyServiceClient s = new MyService.MyServiceClient();
  s.SendMyMessage(tbMessage.Text);
}

1 个答案:

答案 0 :(得分:0)

在许多情况下,您可以使用ASP.NET兼容模式,只需将此行添加到您的配置中:

 <system.serviceModel>        
      <serviceHostingEnvironment aspNetCompatibilityEnabled="true" />    
 </system.serviceModel>

Reference