使用 customUserNamePasswordValidatorType 时获取用户名

Get user name when using customUserNamePasswordValidatorType

我一直在创建 WCF Web 服务。我使用自定义 serviceCredential :

<serviceCredentials>
    <userNameAuthentication userNamePasswordValidationMode="Custom"
                            customUserNamePasswordValidatorType="MyNameSpace.CredentialsChecker"/>
</serviceCredentials>

我有我的 class CredentialChecker

public class CredentialsChecker : UserNamePasswordValidator
{
    public override void Validate(string userName, string password)
    {...}
}

效果不错,但我想知道 Service1.svc 中的 userName。我该怎么办?

我终于找到了答案:

String username = ServiceSecurityContext.Current.PrimaryIdentity.Name;

到处都可以用