从Silverlight应用程序调用WCF服务时获取身份验证使用窗体身份验证
问题描述:
我在Silverlight应用程序上执行FormsAuthentivcation。当SL应用程序调用WCF服务,我想这样从我的WCF服务中获得认证的用户名:从Silverlight应用程序调用WCF服务时获取身份验证使用窗体身份验证
ServiceSecurityContext.Current.PrimaryIdentity.Name;
或本(不确定其使用,问题是,无论是空的)
ServiceSecurityContext.Anonymous.PrimaryIdentity.Name;
我有这样的绑定配置WCF服务:
<basicHttpBinding>
<binding name="myBinding">
<security mode="None">
<message clientCredentialType="UserName"/>
</security>
</binding>
问题是,我无法获得认同。我没有在客户端手动设置凭证。 proxy.ClientCredentials.UserName.UserName = “slkfslkdf”; (我必须这样做吗?)
感谢您的任何帮助!
答
这只是简单地通过HttpContext.Current.User;
解决方案在进行表单身份验证时,无需进入自定义标头或ServiceSecurityContext。