我有一个WCF服务,它将使用基本身份验证,并希望能够识别“谁”正在尝试使用该服务。我知道HttpContext.Current是NULL并且在WCF服务中,但是不知道获取用户名的替代方法。
userName = HttpContext.Current.Request.ServerVariables["LOGON_USER"];
答案 0 :(得分:8)
这样的事可能吗?
string login = OperationContext.Current
.ServiceSecurityContext
.PrimaryIdentity
.Name;
显然,沿着该路径检查空引用异常会有所帮助,但是你明白了。
答案 1 :(得分:2)
OperationContext.Current.ServiceSecurityContext.PrimaryIdentity.Name