ASP.Net添加表单身份验证现在不显示域/用户名

时间:2013-07-02 10:56:29

标签: asp.net vb.net authentication

我正在尝试在提交表单时记录用户的登录用户名和domian。这工作正常,直到我将表单身份验证添加到网站的其余部分。

我设置了一个标签来更新页面加载上的文本,如下所示:

Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
    UserN.Text = Request.ServerVariables("AUTH_USER")
End Sub 

......正如我所说,这完美地运作(显示域/用户名)。

现在我添加了表单身份验证,允许用户只访问两个页面,以便他们可以填写表单。这是在我的web.config中完成的,如下所示:

<authentication mode="Forms"> 
    <forms name=".FILEAPP" loginUrl="Login.aspx" />
</authentication>
<authorization>
    <deny users="?" />
</authorization>

  </system.web>

<location path="default.aspx">
<system.web>
  <authorization>
    <allow users="*"/>
  </authorization>
</system.web>
</location>

<location path="PWForm.aspx">
<system.web>
  <authorization>
    <allow users="*"/>
  </authorization>
</system.web>
</location> 

自添加此项以来,它显示空白,其中未登录时曾经是域/用户名,如果我登录则显示登录名。

所以我的问题是 - 如何在网站的其余部分使用表单身份验证时显示域登录名?

全部谢谢!

1 个答案:

答案 0 :(得分:0)

现在您正在使用表单身份验证,您应该能够使用内置的Page.User字段来读取登录用户的信息:

UserN.Text = Page.User.Identity.Name