对于一个试验项目,我正在为一项服务而苦苦挣扎。客户端是 ASP.NET MVC 4,服务将使用 WCF 构建。目前所有系统都在一个受信任的子系统中,因此不一定需要 SSL/证书。
我目前正在处理的问题是:当我创建一个新的 GenericIdentity 时是否可能:
IIdentity newIdentity = new GenericIdentity("Test", "Custom authentication");
string[] newRoles = { "TestRole" };
IPrincipal testPrincipal = new GenericPrincipal(newIdentity, newRoles);
Thread.CurrentPrincipal = testPrincipal;
当我在 WCF 服务上调用以下代码时,可以创建用户:
ServiceSecurityContext.Current.WindowsIdentity;
或者
ServiceSecurityContext.Current.PrimaryIdentity;
或者
Thread.CurrentPrinicpal;
我得到了我在客户端创建的用户?还是我必须为此编写 WCF 可扩展性?
我目前正在使用 WsHttpBinding 和安全模式 Transport 和 clientCredentialType: Windows。也许配置有问题?