登录& ASP.NET中的凭据问题

时间:2009-10-22 15:49:02

标签: c# .net asp.net

您好我正在使用asp.net。我的要求如下

用户使用其网络凭据登录他/她的系统。成功登录系统后,他打开了应用程序的主页,如www.xyz.com/Index.aspx。由于他未获得授权,因此被重定向至www.xyz.com/logon.aspx

但这里的关键是他使用相同的用户ID&他之前用来登录系统的密码。因此他必须登录两次。我希望一旦用户成功登录系统,他就应该可以直接打开www.xyz.com/Index.aspx&没有要求再次登录

我们正在使用IIS来托管我们的应用程序。这些页面是在dot net framework 2.0& amp;使用Visual Studio 2005开发

1 个答案:

答案 0 :(得分:3)

  1. 将IIS配置为在虚拟目录上使用Windows身份验证,并关闭所有其他身份验证类型。
  2. 删除您的登录页面,您不需要。
  3. 将其放入web.config部分的<system.web>文件中:

    <authentication mode="Windows"/>
    <authorization>
        <deny users="?"/>
    </authorization>
    
  4. 使用User.Identity在网页中获取用户的WindowsIdentity

  5. 编辑:ASP.NET支持三种开箱即用的身份验证提供程序:FormsPassportWindows。如果你想要别的东西那么你必须从头开始实现它。一个快速的谷歌搜索出现this Custom Authentication Provider how-to,这可能会给你一些指示。