我已经使用C#在Visual Studio2010中创建了一个web应用程序。
我有两个网页,web应用程序托管在已加入域WATSON
的计算机上
第一个网页基本上是登录页面。最终用户将输入他们的用户名和密码,选择他们的域,然后单击submit。
现在,问题是虽然我使用以下代码对用户进行身份验证,但我不知道如何将身份验证结果存储为。
using(PrincipalContext pc = new PrincipalContext(ContextType.Domain, txtboxDomain.Text))
{
// validate the credentials
bool isValid = pc.ValidateCredentials(txtboxUser.Text, txtboxPass.Text);
}
我想将认证结果存储为cookie,但我冒着这样的风险:最终用户可能会禁用cookie设置,或者最终用户可能会对cookie进行一些有趣的尝试。
而且,我不能把登录页面放在我的web应用程序拥有的每个网页上。
另外,假设我将已成功通过身份验证的最终用户重定向到另一个aspx页面,最终用户可能只需将该aspx页面加入书签即可。因此,下一次,最终用户将直接转到aspx页面,而不是转到登录页面。然后,最终用户将不需要登录,这是我不希望发生的事情。
那么,我应该如何着手使那些正确和合法的用户能够访问另一个aspx页面呢?
发布于 2012-10-05 14:06:58
看看我的答案之一,如何在应用程序级别上设置windows身份验证:
WindowsIdentity and Classic .Net App Pool
这是另一个如何限制用户访问特定页面的链接,它可能会给你带来方便:
How to restrict unlogged/unauthorized users from viewing web pages in ASP.NET
https://stackoverflow.com/questions/12740287
复制相似问题