对于ASP.NET应用程序,如何在使用集成Windows身份验证时提示用户输入用户名/密码?我想在页面后面的代码中使用C#来执行此操作。使用集成Windows身份验证时提示登录详细信息
我想要一些页面(例如http://intranet/admin/)提示输入密码,而其他页面自动通过(通过IWA/NTLM)。然后,我希望它记住用户在访问文件夹/站点中的其他页面时已登录,并提供完成时的注销链接。
编辑: 我想要做的就是向用户发送一个401状态和WWW认证头,然后他们使用他们的Windows凭据登录。
基本上,如果网站不被信任,Firefox/IE是如何做到的。
编辑2: SharePoint会执行此类操作,您可以自动登录,但可以注销并以其他人身份登录,而无需从Windows注销。
编辑3:
一个例子(比其他的SharePoint):您登录为标准(有限)的Windows/Active Directory的用户到受信任的站点,它传递您的凭据。然后,您需要使用不同的凭据登录到网站的管理员部分(但仍然是Windows,而不是WebForms)。唯一的方法是如果您注销Windows,然后再次登录。如果您打开文件(您可能希望访问)或管理员无法在本地登录(禁用交互式登录权限),则不太实用。可以设置模拟,因为页面允许访问普通用户帐户不存在的应用程序(例如数据库,文件,Active Directory管理员)。
基本上使站点内的页面表现得好像它不属于受信任的站点区域。
它不要求凭证,如果它是一个值得信赖的网站......在某些情况下,我想它,即使它是一个值得信赖的网站。 – SamWM 2009-10-06 10:43:02
其重塑车轮 - 如果它是特定用户的可信站点。希望你明白这一点。 Windows需要注意你需要添加的身份验证。 – solairaja 2009-10-06 11:08:14
就像我说过的,我想模拟SharePoint的功能 - 在哪里注销并以不同的用户身份登录,而无需注销Windows。就我所知,它使用Windows身份验证。 – SamWM 2009-10-06 14:22:18