C# 可以从服务实现中读取客户端凭据吗?
我通过C# 可以从服务实现中读取客户端凭据吗?,c#,wcf,http,C#,Wcf,Http,我通过ServiceHost的实例iHost托管soap Web服务;身份验证配置为 HttpBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic; iHost.Credentials.UserNameAuthentication.UserNamePasswordValidationMode = UserNamePasswordValidationMode.Custom; iHo
ServiceHost
的实例iHost
托管soap Web服务;身份验证配置为
HttpBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic;
iHost.Credentials.UserNameAuthentication.UserNamePasswordValidationMode
= UserNamePasswordValidationMode.Custom;
iHost.Credentials.UserNameAuthentication.CustomUserNamePasswordValidator
= new CustomValidator();
托管本身可以按预期工作,但是我也希望从托管服务本身中访问客户端凭据。这可以通过当前的身份验证设置实现,还是不可能实现?在同事的帮助下找到了答案。用户名可以通过
OperationContext.Current.ServiceSecurityContext.PrimaryIdentity.Name
访问;这个问题可以看作是一个重复的问题