验证ASP.NET MVC中的URL

时间:2018-06-22 08:53:46

标签: c# asp.net-mvc authentication url-redirection

我正在asp.net MVC(Web应用程序)中做一个项目。我对此表示怀疑。请帮助我。

例如: 我有一个“ 登录 ”页面作为我的第一页,其中另外两个页面名为“ 主页 ”, “ 关于 ”。

当我在ISS Express中启动应用程序时,它将加载“ Localhost:12345”。

即。登录页面。

然后,当我单击“登录”按钮->主页(本地主机:12345 / Home)

当我单击“关于”链接->关于页面时(Locahost:12345 /关于)

我的问题是。:

当我在浏览器中直接提供(Locahost:12345 / About)的URL时,它将直接加载到“关于页面”而无需询问登录。

如果需要其他URL名称(“主页”或“关于页面”),则需要将我的URL重定向到“登录页面”。仅在主页(登录页面)之后,我需要通过单击相应的按钮转到其他页面。

执行此概念的正确方法是什么?

任何人,请帮助我。

2 个答案:

答案 0 :(得分:3)

您需要向要通过身份验证的控制器添加[Authorize]属性。

答案 1 :(得分:0)

您可以使用简单表单身份验证。在操作方法中对用户进行身份验证后,只需添加FormsAuthentication.SetAuthCookie(username, false);,然后在web.config中添加以下内容

<authentication mode="Forms">
  <forms loginUrl="(Your_login_controller)" slidingExpiration="true" timeout="2880"></forms>
</authentication>

然后,您可以在不想对其进行未经授权访问的控制器上使用[Authorize]属性。