关于受保护页

Web 应用程序可以包含只有授权用户才能访问的受保护页。

例如,如果用户试图通过在浏览器中键入受保护页的 URL 来绕过登录页,则该用户将被重定向到另一页。同样,如果将页的授权级别设置为管理员,则只有具有管理员访问权限的用户才能查看该页。如果已登录的用户试图访问不具有正确访问权限的受保护页,则该用户将被重定向到另一页。

您也可以使用授权级别在向新注册的用户授予站点的完全访问权限之前对他们进行审查。例如,您最好在允许用户访问站点的成员页之前接收付款。为此,可以用“成员”授权级别保护成员页,而仅向新注册的用户授予“来宾”权限。当收到用户的付款后,可以将用户的访问权限升级为“成员”(在注册用户的数据库表中)。

如果您不打算使用授权级别,只需在页面上添加“限制对页的访问”服务器行为即可保护站点上的任何页。该服务器行为将尚未成功登录的任何用户重定向到另一页。

如果您确实打算使用授权级别,则可以用以下构造块保护站点上的任意页:

  • 用于将未授权用户重定向到另一页的“限制对页的访问”服务器行为

  • 用户数据库表中用于存储每个用户访问权限的附加列

    无论您是否使用授权级别,均可以在受保护的页上添加一个链接,支持用户注销并清除所有会话变量。

重定向未授权的用户

若要防止未授权的用户访问某一页,可以在该页上添加“限制对页的访问”服务器行为。如果用户试图通过在浏览器中键入受保护页的 URL 来绕过登录页,或者如果用户已登录但试图访问不具有正确访问权限的受保护页,该服务器行为就会将用户重定向到另一页。

注:“限制对页的访问”服务器行为只能保护 HTML 页。它不保护其它站点资源,如图像文件和音频文件。

如果要为站点上的多个页授予相同的访问权限,可以复制一个页的访问权限,然后将其粘贴到另一个页。

将未授权的用户重定向到另一页

  1. 打开要保护的页。

  2. 在“服务器行为”面板(“窗口”>“服务器行为”)中,单击加号 (+) 按钮并从弹出菜单中选择“用户身份验证”>“限制对页的访问”。

  3. 选择该页的访问级别。若要仅允许具有特定访问权限的用户查看该页,请选中“用户名、密码和访问级别”选项并指定该页的授权级别。

    例如,通过在授权级别列表中选择“管理员”,可以指定只有具有“管理员”权限的用户才能查看该页。

  4. 若要在该列表中添加授权级别,请单击“定义”。在出现的“定义访问级别”列表中,输入新的授权级别,并单击加号 (+) 按钮。将存储新建的授权级别以用于其它页。  

    确保该授权级别的字符串与存储在数据库中的字符串完全匹配。例如,如果数据库中的授权列包含值 "Administrator",则请在“名称”框中输入 Administrator(而不是 Admin)。

  5. 若要为某页设置多个授权级别,请按住 Ctrl 单击 (Windows) 或按住 Command 单击 (Macintosh) 列表中的级别。

    例如,您可以指定任何具有“来宾”、“成员”或“管理员”权限的用户都能够查看该页。

  6. 指定在未授权用户试图打开受保护页时所打开的页。

    确保您选择的页不受保护。

  7. 单击“确定”。

复制某页的访问权限并将其粘贴到站点的其它页

  1. 打开受保护的页,并选择“服务器行为”面板(而不是加号 (+) 弹出菜单)中列出的“限制对页的访问”服务器行为。

  2. 单击该面板右上角的箭头按钮,然后从弹出菜单中选择“复制”。

    “限制对页的访问”服务器行为被复制到系统的剪贴板上。


  3. 按照同一方式打开另一个要保护的页。

  4. 在“服务器行为”面板(“窗口”>“服务器行为”)上,单击右上角的箭头按钮并从弹出菜单中选择“粘贴”。

  5. 对于每个要保护的页重复第 3 步和第 4 步。

在用户数据库中存储访问权限

只有在需要让某些登录用户具有不同的访问权限时,该构造块才是必需的。如果您只是要求用户登录,则不需要存储访问权限。

  1. 若要为某些登录用户提供不同的访问权限,请确保用户的数据库表包含一个用来指定每个用户访问权限(“来宾”、“用户”、“管理员”等)的列。每个用户的访问权限应该由站点管理员在数据库中输入。

    在大多数数据库应用程序中,每次新建记录时,都可以将一个列设置为默认值。将该默认值设置为站点上最常用的访问权限(例如“来宾”);然后手动更改例外的情况(例如,将“来宾”更改为“管理员”)。用户现在即可访问所有管理员页。

  2. 确保数据库中的每个用户都具有单一的访问权限(例如“来宾”或“管理员”),而不是多项权限(例如“用户”、“管理员”)。若要为您的页设置多项访问权限(例如,所有来宾和管理员都可以查看该页),则在页级别(而不是在数据库级别)设置这些权限。

注销用户

当用户成功登录后,将创建一个包含其用户名的会话变量。当用户退出站点时,您可以使用“注销用户”服务器行为来清除该会话变量并将用户重定向到另一页(通常是“再见”或“谢谢”页)。

当用户单击链接或者当指定页加载时,可以调用“注销用户”服务器行为。

添加用于让用户注销的链接

  1. 在页上选择要用作该链接的文本或图像。

  2. 在“服务器行为”面板(“窗口”>“行为”)上,单击加号 (+) 按钮并选择“用户身份验证”>“注销用户”。

  3. 指定在用户单击该链接时要打开的页,然后单击“确定”。

    该页通常是“再见”或“谢谢”页。

在特定页加载时注销用户

  1. 打开将在 Dreamweaver 中加载的页。

    该页通常是“再见”或“谢谢”页。

  2. 在“服务器行为”面板上,单击加号 (+) 按钮并选择“用户身份验证”>“注销用户”。

  3. 选择“当页加载时注销”选项,然后单击“确定”。




,