我有一个 Web 应用程序,它在不同的服务器(Web 服务器、应用程序服务器和数据库服务器)上调用具有多个服务的 WCF Web 应用程序,所有服务都使用 basicHttBinding。其中一项服务必须连接到必须使用活动目录帐户调用的数据库。从网站进来的用户是匿名的。
我已获得将此用户设置为的凭据,但我无法使其正常工作。我在网络服务器上创建我的频道,如下所示:
ChannelFactory<T> channelFactory = GetChannelFactoryFromPool<T>(enpointAddress);
channelFactory.Credentials.Windows.ClientCredential.UserName = username;
channelFactory.Credentials.Windows.ClientCredential.Password = password;
channelFactory.Credentials.Windows.ClientCredential.Domain = domain;
proxy = channelFactory.CreateChannel();
在应用服务器上的服务中,我试图通过执行以下操作来确定凭据是否正确:
var ssc = ServiceSecurityContext.Current;
但 ssc 始终为空。这可以用 basicHttpBinding 完成吗?
谢谢,保罗