C# WCF UserNamePasswordValidator-验证后访问凭据

C# WCF UserNamePasswordValidator-验证后访问凭据,c#,wcf,C#,Wcf,我正在使用UserNamePasswordValidator类作为WCF的UserName安全性的一部分。这一切都非常有效,类的Validate函数被调用并正常工作 那么,我怎样才能知道我的服务功能中使用了什么用户名 例如,假设一个客户端连接并请求一个日志列表,使用 IList<Log> Logs() { ... } IList日志(){…} 该函数如何知道该请求使用了哪个用户名 我想做的是记录用户名调用服务中的函数。不确定,但您可能正在查找 var userName = Ope

我正在使用
UserNamePasswordValidator
类作为WCF的
UserName
安全性的一部分。这一切都非常有效,类的
Validate
函数被调用并正常工作

那么,我怎样才能知道我的服务功能中使用了什么
用户名

例如,假设一个客户端连接并请求一个日志列表,使用

IList<Log> Logs() { ... }
IList日志(){…}
该函数如何知道该请求使用了哪个用户名


我想做的是记录用户名调用服务中的函数。

不确定,但您可能正在查找

var userName = OperationContext.Current.ServiceSecurityContext.PrimaryIdentity.Name;

我相信在行动的背景下有一些东西。试试这个:

OperationContext oc = OperationContext.Current;
ServiceSecurityContext ssc = oc.ServiceSecurityContext;
string client = ssc.PrimaryIdentity.Name;