ASP.NET:我创建了一个带有登录身份验证的网站。在用户可以访问其中的任何页面之前,他需要先登录。如何提示用户先登录,然后才能查看网站的任何内容?
问问题
181 次
3 回答
2
检查ASP.NET 的成员资格、角色和配置文件系列是一个很好的起点。它涵盖了 ASP.NET 的所有安全部分以及您所需的东西,在访问该页面之前LoginUrl
登录作为您的登录页面。开始执行此操作方法:在 ASP.NET 2.0 中将表单身份验证与 SQL Server 一起使用
在 web.config 中进行一些设置,然后在后面的代码中处理这些事情。
<forms name=".ASPXAUTH" loginUrl="login.aspx"
defaultUrl="default.aspx" protection="All" timeout="30" path="/"
requireSSL="false" slidingExpiration="true"
cookieless="UseDeviceProfile" domain=""
enableCrossAppRedirects="false">
<credentials passwordFormat="SHA1" />
</forms>
在 Web.config 文件中的元素下添加以下元素。这允许所有经过身份验证的用户访问您的网站。
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>`
后面的代码
if (Membership.ValidateUser(username, password))
{
// User has supplied valid credentials
// In the following method call, the second Boolean parameter
// determines whether a persistent authentication cookie
// is created.
FormsAuthentication.RedirectFromLoginPage(username, rememberMeIsChecked);
}
参考:
于 2012-05-08T06:56:04.283 回答
1
尝试在您的 web.config 中执行此操作
如果我们要拒绝匿名用户的访问,请按以下方式配置 Authorization 部分,
<configuration>
<system.web>
<authentication mode="Forms"/>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</configuration>
欲了解更多信息,请看这里
于 2012-05-08T06:48:44.213 回答
1
这是在此处发布代码示例的巨大主题,因此我建议执行以下步骤。
使用 asp.net mvc3,了解会员提供程序如何工作,根据您的需要对其进行自定义,用户角色提供程序将用户分配到特定组,您将使用这些组来保护站点的特定区域。
创建角色并将其分配给用户,之后您可以使用修饰的 [Authorize] 属性保护页面或像这样保护选定用户
[Authorize(Roles = "Admin, Super User")]
在配置 system.web 部分中使用您的 web.config 来指示应用程序中使用的成员资格和角色提供者。
这是简短的信息,但我希望你现在有简洁的心理画面。
于 2012-05-08T07:13:18.303 回答