在web.config文件中使用授权时将重定向回登录屏幕
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在web.config文件中使用授权时将重定向回登录屏幕相关的知识,希望对你有一定的参考价值。
我在尝试解决此问题时遇到一些麻烦。我有一个名为“ Admin”的文件夹,在该文件夹中,我有两个Web表单和web.config
文件。我已经创建了用户并将其添加到他们的角色中。
在web.config
文件中,我具有:
<authorization>
<allow roles="Administrators" />
<deny users="*" />
</authorization>
当我以管理员身份(具有管理员角色)登录时,我被重定向到“索引”页面(所有方法均有效)。但是,当从那里浏览到管理页面时,我被重定向到登录屏幕,但是我在Administrators
文件中添加了角色web.config
?
这是我的login.aspx.cs
protected void btnLoginButton_Click(object sender, EventArgs e)
if (Membership.ValidateUser(UserName.Text, Password.Text))
Session["UserName"] = this.UserName.Text.Trim();
Response.Redirect("~/Index.aspx");
// If we reach here, the user's credentials were invalid
InvalidCredentialsMessage.Visible = true;
然后在我的根web.config
文件中:
<system.web>
<authentication mode="Forms">
</authentication>
<membership defaultProvider="SqlProvider">
<providers>
<!--Add a customized SqlMembershipProvider -->
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="DefaultConnection"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
applicationName="SecurityTutorials"
requiresUniqueEmail="true"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="7"
minRequiredNonalphanumericCharacters="1"
passwordAttemptWindow="10"
passwordStrengthRegularExpression=""/>
</providers>
</membership>
<roleManager enabled="true"
defaultProvider="AspNetSqlRoleProvider"
cacheRolesInCookie="true"
createPersistentCookie="false"
cookieProtection="All">
<providers>
<clear />
<add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" applicationName="/" connectionStringName="DefaultConnection" />
<add applicationName="/" name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" />
</providers>
</roleManager>
然后在Admin文件夹的两个Web表单中,我具有以下内容:
if (!Page.IsPostBack)
if (Session["UserName"] != null)
this.WelcomeBackMessage.Text = string.Format("Welcome 0", Session["UserName"].ToString());
我不确定这是怎么回事,需要帮助吗?
谢谢
答案
我想知道它是否应该是Administrator
,单数...
以上是关于在web.config文件中使用授权时将重定向回登录屏幕的主要内容,如果未能解决你的问题,请参考以下文章
.NET:从域和子文件夹重定向到新域,保留路径和查询字符串,在 web.config 中使用 httpredirect
asp.net web.config中基于多个角色的文件夹授权
如何在 web.config 文件中为特定文件类型创建重定向?