我有一个名为admin.aspx
的ASP.NET页面,需要保护其免受直接访问。
我希望只有当用户输入他的名字&密码在另一个名为login.aspx
的页面中。
我使用Visual Basic .NET 2008在ASP.NET中工作,我不知道该怎么做。
我该怎么做?
答案 0 :(得分:4)
此行为的正确用语是Authorization
事先我需要知道的一些事情:
yes
回答:您是否已阅读/听到有关Membership和RoleProviders的内容?.NET具有很好的内置机制来解决这个问题。它不仅提供了很好的配置可能性,而且实现起来非常容易!
以下是ASP.NET成员资格提供程序中非常详细的步骤:
ASP.NET 2.0 Membership and Roles Tutorial Series
即使它使用 ASP.NET 2.0 和C#,它在 .NET3.5 / 4.0 和VB上也不应该有所不同。 NET
答案 1 :(得分:1)
我找到了它:
在登录页面(“login.aspx”)中执行以下操作:
Session("Name") = "Yes"
Response.Redirect("admin.aspx")
在管理页面(“admin.aspx”)中:
If Session("Name") = "Yes" Then
'You can here display anything you want, or just leave it blank
Else
Response.Redirect("ErrorPage.aspx")
End If
答案 2 :(得分:1)
您应该在加载页面之前先检查用户会话:
protected void Page_Load(object sender, EventArgs e)
{
if (session == null)
{
// Just redirect to login page or no access page warning.**
}
if (!Page.IsPostBack)
{
//If your were logged in then you will access this page
}
}
答案 3 :(得分:0)
您可以通过Forms authentication处理。在您的情况下,您希望确保限制admin.aspx的访问权限,以便您可以通过指定location标记在web .config中提供该条目来实现此目的。看看这个网站:
HTH