问题在(VB)ASP.NET中的.asmx服务脚本中获取Windows客户端显示名称

时间:2013-08-12 10:08:28

标签: asp.net vb.net userprincipal

我是ASP.NET的新手,我一直在努力尝试获取客户端的用户名,向服务器端的Web服务脚本发送请求。

在线搜索后,我发现两个属性可以让服务器页面访问客户端用户名; User.Identity.Name 然后我从一位前高级同事那里得到了另一段代码,他在解决这个问题之前离开了,他的函数使用了UserPrincipal.Current.DisplayName

对于这两个我得到一个空白字符串。

我已经搜索了我的问题可能是什么,我怀疑它是因为我没有以某种方式在服务器端验证用户。 我刚刚直接访问了这两个属性/变量(UserPrincipal.Current.DisplayName和User.Identity.Name)

请有人帮忙解决这个问题吗?我不知道我做错了什么/不做什么。

1 个答案:

答案 0 :(得分:0)

你的怀疑是正确的;您必须通过内置的.NET机制(如表单身份验证或Windows身份验证)明确地对用户进行身份验证,以便User.Identity填充框架。

您没有指定请求的来源(网页,Windows应用,Windows服务等),但this article提供了使用asmx设置表单身份验证的精彩概述。