保护 Web 应用程序

可以使用管理器限制对 ArcGIS Server Web 应用程序的访问权限。对应用程序启用安全性后,将只有具有许可角色的用户可以对应用程序进行访问。

对应用程序设置安全性之前,要先确保已经创建了用户和角色存储,且至少已添加一个用户和一个角色。有关此操作的详细说明,请参阅设置用户和角色概述

要设置规则以规定哪些用户具有对 Web 应用程序的访问权限,请遵循以下步骤:

  1. 在 ArcGIS Server 管理器中,单击应用程序选项卡,查看服务器上的 Web 应用程序列表。
  2. 查找想要设置安全性规则的 Web 应用程序,然后单击权限(锁定)按钮。将弹出权限 对话框,可以在其中
    • 启用 Web 应用程序的安全性。如果未选中此复选框,则该对话框中的其他设置都被禁用。如果取消选中此复选框,则将不会对该应用程序的访问进行限制。
    • 允许某一角色访问该应用程序。要添加角色,可从左侧的可用角色列表中选择角色。单击添加,将所选角色添加到允许角色列表。
    • 要从许可列表中移除角色,可选择角色,然后单击移除。该角色将移动到可用角色列表。

      注意注意:

      如果已将某角色删除或该角色不存在于当前的角色存储,则再次打开权限 对话框时,将不再显示该角色。

  3. 权限配置完成后,单击保存,可保存对应用程序的安全性所作的更改。单击取消可放弃对应用程序权限所作的更改。
  4. 只有当 ArcGIS Server 的用户为 Windows 用户时:在 Internet 信息服务 Web 服务器中至少选择一种身份验证方法。有关说明,请参阅下一部分。
  5. 如果 ArcGIS Server 的用户位于 SQL Server自定义提供程序中,或者是 Windows 用户且已在上一步中对其启用了“基本”身份验证,则需要通过 https (SSL) 来使用应用程序。这对于用户登录到应用程序时的密码传输保护至关重要。

启用应用程序的身份验证方法

只有当 ArcGIS Server 实例的用户为 Windows 用户时,此部分才适用。在这种情况下,用户的身份必须经 IIS Web 服务器验证。为使 IIS 能够对用户进行身份验证,必须至少为受保护的 Web 应用程序启用一种身份验证方法。

IIS 的安装程序可能已经默认启用了一种或多种身份验证方法。您应该检查以确保至少启用了一种身份验证方法。如果未启用任何身份验证方法,则系统将拒绝用户访问 Web 应用程序。

要在 IIS 5.1 或 IIS 6(分别对于 Windows XP 或 Server 2003)中为 Web 应用程序设置身份验证方法,请执行以下操作:

步骤:
  1. 开始 > 设置 > 控制面板 > 管理工具 > Internet 信息服务中打开 IIS 管理器。
  2. 在本地计算机的网站中导航到已在管理器中进行保护的网站(通常位于默认网站中)。
  3. 右键单击 Web 应用程序文件夹,然后单击属性。将打开应用程序的属性 对话框。
  4. 单击目录安全性选项卡。在匿名访问和身份验证控制下,单击编辑。将打开身份验证方法 对话框。
  5. 用户访问需经过身份验证下,选中至少一个方法。有关身份验证方法的详细信息,请参阅下文。

要在 IIS 7(对于 Windows Vista、Windows 7 或 Windows Server 2008)中为 Web 应用程序设置身份验证方法,请执行以下操作:

  1. 控制面板 > 管理工具 > Internet 信息服务管理器中打开 IIS 管理器。
  2. 展开已在管理器中进行保护的网站的站点节点(通常位于默认网站中),然后展开该站点以查看 Web 应用程序。
  3. 左键单击想要保护的 Web 应用程序可在 IIS 管理器的右侧显示该应用程序的属性链接。
  4. 双击 IIS 组下的身份验证项。将显示此应用程序的身份验证方法列表。
  5. 在该身份验证方法列表中,右键单击匿名身份验证,然后单击快捷菜单中的禁用
  6. 启用至少一种其他身份验证方法。有关身份关验证方法的详细信息,请参阅下文。

有关身份验证方法的详细信息,请参阅此帮助中的选择身份验证方法。另请参阅 IIS 文档和其他资源,如 MSDN 页面 IIS 6.0 中支持的身份验证方法身份验证功能要求 (IIS 7)

web.config 中的身份验证和授权

ASP.NET 将 Web 应用程序的安全性信息存储在 web.config 文件中(用户和角色通常分开存储在 web.config 文件所指定的提供程序中)。管理器将使用此方法对 Web 应用程序进行授权(但不适用于 GIS Web 服务;请参阅保护与服务之间建立的 Internet 连接)。您可以查看此信息,但建议您不要对其进行更改,因为这可能会导致管理器无法再对应用程序的安全性进行管理。

Web 应用程序的权限规则以 ASP.NET 应用程序的标准授权格式进行存储。它们存储在标准 <authorization> 元素内的 web.config 文件中。

如果想手动或使用网站管理工具 (WSAT) 编辑 web.config 中的授权规则,应遵循以下原则:

如果不遵从上述原则,那么之后使用管理器编辑安全性时,web.config 中的访问规则会无法正常读取且可能会被覆盖。当然,如果您不打算使用管理器配置 Web 应用程序的安全性,则可以根据需要使用任何有效的 ASP.NET 授权配置。

使用网站管理工具

在管理器中创建的 Web 应用程序的安全性配置与 WSAT 兼容。WSAT 是一种 Microsoft 实用工具,可用于管理用户和角色,并为 Web 应用程序配置访问规则。您可以通过 Visual Studio 访问 WSAT。

WSAT 允许您在两种身份验证形式之间进行选择:Windows(从 Internet)和 Forms(从本地网络)。如果在管理器创建安全性配置之后在 WSAT 中对身份验证类型进行更改,便可能导致无法在管理器中编辑应用程序安全性。如果发生这种情况,则必须继续使用 WSAT 来管理安全性,或者直接对 web.config 文件进行编辑。

用户和角色的位置由身份验证类型和提供程序配置决定。您可以在 WSAT 中查看该配置,但建议您不要对其进行更改,因为这可能会导致管理器无法再对安全性进行管理。

关于编辑授权规则的原则,请参阅上面的“web.config 中的身份验证和授权”部分。


3/7/2012