您的位置:首页 > 编程语言 > ASP

ASP.NET 网站管理工具中的“安全”制表页

2006-12-19 11:28 363 查看
使用网站管理工具中的“安全”制表页可以对 Web 应用程序特定资源的保护规则进行管理。ASP.NET 使用的安全系统允许你对特定用户帐号或角色的访问权限进行限制。通过“安全”制表页,你可以管理用户帐号、角色、以及网站的访问规则。在第一次使用“安全”制表页之前,请先使用“安全设置向导”为网站的的基本安全进行了配置。

ASP.NET 的安全是基于用户帐号、角色、以及只允许指定用户对 Web 应用程序资源进行限制性访问的访问规则。安全设定是由配置文件和数据库(或者其他数据存储)数据的共同合并而得出。被创建的用户帐号和角色被保存在数据库而访问规则被保存在 Web.config 文件中。

你可以对应用程序进行配置以便使用下列安全类型(这些安全类型依赖于网站如何被使用):

基于窗体的验证(“来自于互联网”)

基于窗体的验证用于已经发布到互联网的网站。基于窗体的验证使用 ASP.NET 成员资格系统对单独的用户帐号和组(角色)进行管理。用户帐号信息被保存在本地数据库(比如 Microsoft SQL Server 数据库)中。你可以使用 ASP.NET
logon
控件来创建能够允许用户输入登录信息的登录页面。

集成的 Microsoft Windows 验证(“来自于局域网”)

Windows 验证与 Windows 系统安全相互作用,对通过用户登入到 Windows 系统时所提供的登录信息进行使用。但是,Windows 验证只适合用于局域网环境中,并且用户需要登入到基于 Windows 系统的局域网中。因为用户是使用他们的 Windows 用户身份自动登入到你的应用程序中,所以你不再需要创建额外的登录页面。

“安全”制表页中的“用户”部分可以完成下列任务:

创建、编辑、并且删除网站的注册用户。

查看网站的所有注册用户列表。

更改网站所使用的验证类型。

提示:如果你为验证类型选择的是“来自于互联网”,你将可以创建用户帐号并进行管理。如果你选择的是“来自于局域网”作为验证类型(还使用了“集成的 Windows 验证”),你就不能对单独的用户帐号进行管理。如果你更改验证类型,任何被创建的用户信息将被丢失。另外,通过此方式配置的访问规则也可能不再存在。通常,你应该在对网站进行第一次配置时就确定到底需要使用哪种验证类型。

“安全”制表页中的“角色”部分可以对用户进行分组,以简化权限分配(验证)的操作。

“安全”制表页中的“访问规则”部分可以允许或禁止指定用户帐号或用户角色对指定页面的访问。通常,你会使用访问规则限制部分用户帐号对页面的访问。

创建用户

你可以创建并管理用户,如果你把验证类型设置成“来自于互联网”(窗体验证)。如果要更改验证类型,请单击“选择验证类型”。

如果要创建用户帐号

单击“创建用户”,然后指定下列信息。

“用户名”

输入要创建的用户名称。

“密码”

为“用户名”输入密码。“密码”区分大小写。

“确认密码”

再输一次密码。

“电子邮件”

为“用户名”输入电子邮件。

网站管理工具并不对你输入的邮件地址是否有效进行验证,但是会验证邮件地址的格式是否正确。

“安全问题”

输入用户需要重置或修复密码时所提的问题。

“安全答案”

输入“安全问题”的答案。

“激活用户”

选择该选项可以激活用户帐号的活动状态。如果没有选择该选项,用户信息只会保存在数据库中,但是用户无法登入到网站。

“角色”

为“用户名”选择角色。你需要另外创建角色。更多信息请参考下一部分。

创建角色

如何创建角色

在“安全”制表页,单击“启用角色”。

单击“创建或管理角色”。

在“新角色名”文本框中输入要创建的角色名称,比如 Administrator、Member、或 Guest,然后单击“添加角色”。

为角色添加帐号

在“安全”制表页中,单击“管理用户”,然后单击“编辑用户”。

在“角色”下面,为用户帐号选择相应的角色。

创建访问规则

如何创建访问规则

在“安全”制表页中,单击“创建访问规则”。

指定下列选项:

为规则选择目录

你可以对应用于网站或指定子目录的规则进行创建。在网站目录结构中对需要应用规则的目录进行选择。

在“规则应用到”下面,对如何应用规则进行指定。

“角色”

选择“角色”,然后在列表中选择需要应用访问规则的角色名称。

“用户”

选择“用户”,然后输入需要应用访问规则的用户帐号名称。如果使用了 ASP.NET 成员资格(网站安全被设置成“来自于互联网”),那么你还需要使用“搜索用户特征”。

“所有用户”

选择该选项后的访问规则将被应用于所有网站访问者。

提示:请谨慎使用具有“所有用户”选项的访问规则。因为被应用的访问规则是一致的,你不可以对防止所有用户访问目录的访问规则进行创建。

“匿名用户”

选择该选项时访问规则将只被应用到匿名(未注册)用户帐号。

通常使用“匿名用户”选项会对未登入用户的访问进行限制(禁止)。

“权限”

选择“允许”以允许指定用户帐号或角色对指定目录进行访问。

选择“禁止”以禁止指定用户帐号或角色对指定目录进行访问。

例如,如果要限制未登入(匿名)用户查看目录中的页面,请单击目录,选择“匿名用户”,然后单击“禁止”。

有些时候,你可能为了设立正确的权限而为同一目录创建多个访问规则。比如,你可能创建了一个禁止访问匿名用户访问的规则,同时也为来宾角色的用户帐号也创建了另一个禁止访问规则,那么,就只有已登入用户和其他组用户才可以对该目录进行访问。

幕后

网站管理工具在下列两个位置对安全信息进行管理:

网站根目录的 Web.config 文件。

用于保存用户和组信息的网站提供者数据库。

Web.config 设定

Web.config 设定通过
<authorization>
<roleManager>
、以及
<authentication>
部分对网站管理工具中的“安全”制表页中的设定进行管理。

下例 Web.config 代码由网站管理工具创建,它包含了对网站子目录的限制:只有 Administrator(管理员)才能够对被限制的子目录进行访问,而匿名用户则不可以访问。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authorization>
<allow roles="administrators" />
<deny users="?" />
</authorization>
</system.web>
</configuration>

数据库

当你使用默认的数据提供者时,网站管理工具会创建完整的 ASP.NET 默认数据库。默认时,网站管理工具会在网站的 App_Data 目录创建该数据库文件。但是,通过使用网站管理工具中的“提供者”制表页,你可以为应用程序信息的用户帐号和角色信息指定其他的数据库(例如,从 Windows 系统的用户数据库中获取角色信息)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: