Internet 安全性总览

ArcGIS Server 可用于使用基于角色的访问控制 (RBAC) 安全模型保护 Web 应用程序和 Web 服务。要配置和管理此安全模型,了解组成此模型的各种组件之间如何进行交互非常重要。

该主题的以下部分详细介绍了 ArcGIS Server 安全模型。每个部分都首先简要介绍安全性组件,然后介绍组件如何适应安全性工作流

安全模型概述

此部分简要介绍各种功能组件及其如何适应安全模型。

下图提供 ArcGIS Server 安全性模型的直观总览。

主存储

主存储是 ArcGIS Web 服务用户及其相关角色的资料档案库。在 ArcGIS Server“基于角色的访问控制”系统中,不会直接为用户指定 ArcGIS Web 服务的权限。相反,系统会将特定 Web 服务的访问权限指定给特定角色。而且系统会为 ArcGIS Web 服务用户指定一个或多个角色,并通过这些角色指定获得特定 Web 服务的访问权限。每个用户将获得已为其指定的所有角色的权限。

ArcGIS Server 可处理各种存储以维护用户和角色信息。可使用关系数据库(例如 Microsoft SQL Server 或 MySQL)或目录服务器(例如 LDAP 或 Microsoft 的活动目录)。还可将 ArcGIS Server 安全性配置为通过开发自定义扩展模块(使用 ArcGIS 主存储 API)并对其进行设置来访问专有存储中的现有用户和角色,以使 ArcGIS Server 管理器通过其扩展模块连接专有存储。

令牌服务将连接到用户身份验证的已配置主存储。服务处理程序(例如 REST 和 Web 服务处理程序)也会查找与用户相关的角色信息的主存储。可使用管理器在存储中管理用户和角色信息。

有关如何配置和使用主存储的详细信息,请参阅配置安全性存储概述

有关如何使用主存储 API 编写扩展模块的详细信息,请参阅扩展主存储

权限存储

权限存储是已指定给角色的权限的资料档案库。其中存储有关某个特定角色可访问的 ArcGIS 服务的列表的信息。

权限存储由服务器对象管理器 (SOM) 维护。无需对其进行显式配置和维护。权限存储还提供开发人员可以访问的 API。

有关如何设置 ArcGIS Web 服务和应用程序的权限的详细信息,请参阅保护 Web 服务保护 Web 应用程序

身份验证方案

如果 GIS 服务器已对其发布的 Web 资源进行保护,则任何要使用这些资源的 Web 客户端在访问资源时必须提供有效凭据。ArcGIS Server 提供两种不同的身份验证方案来验证用户凭据。

Web 服务的身份验证方案

ArcGIS 管理的基于令牌的身份验证

Web 客户端必须提供令牌才能访问已使用 ArcGIS 管理的身份认证进行保护的 ArcGIS Web 服务。可从 ArcGIS Server 安装的令牌服务中获得令牌。每个令牌都是用户的身份。更新服务处理程序可处理此令牌,并且对客户端用户进行身份验证。

ArcCatalog 或使用管理器构建的 Web 应用程序等客户端能够以无缝方式使用由 ArcGIS 管理的身份认证保护的 ArcGIS Web 服务。使用这些客户端时,无需从令牌服务显式获取令牌。

由 REST API 支持的 JavaScript 客户端也可以无缝方式使用受保护的服务。

有关使用令牌的详细信息,请参阅令牌和令牌服务

Java 企业版容器管理的身份验证

尝试使用 ArcGIS Web 服务(由 Java 企业版容器管理的身份验证保护)的 Web 客户端将受到 Web 容器的质询,而且需要提供身份验证凭据。

在此处,服务处理程序(例如 REST 和 Web 服务处理程序)会受到在其中部署此类程序的 Web 容器的保护。大多数 Web 容器支持不同的身份验证方案,(如 BASIC、DIGEST、客户端证书等)。

Web 应用程序的身份验证方案

ArcGIS 管理的基于登录控件的身份验证

使用此身份验证机制保护的 Web 应用程序会在尝试访问此应用程序时显示 HTML 登录页面。输入凭据后,登录控件将验证为针对应用程序配置的主存储中的用户凭据提供的信息。只有由 GIS 管理员授予此应用程序的访问权限的角色才能访问此应用程序。

有关如何保护 Web 应用程序的详细信息,请参阅保护 Web 应用程序

Java 企业版容器管理的身份验证

在这种情况下,在其中部署应用程序的 Web 容器将质询凭据。然后,容器将使用其配置范围内的用户信息对凭据进行身份验证,并且授予访问权限。

需要使用包含用户和角色信息的适当范围显式设置 Web 容器。

有关如何保护 Web 应用程序的详细信息,请参阅保护 Web 应用程序

令牌服务

要无缝支持脚本客户端,ArcGIS Server 会对受保护的 ArcGIS Web 服务进行基于令牌的访问。令牌将封装特定请求当事人(用户)的身份,并由作为 ArcGIS Server 的一部分安装的令牌服务授予令牌。

令牌服务将与配置的主存储进行通信以对收到的令牌请求进行身份验证。ArcGIS Server 可对这些令牌进行解密,并授予针对请求资源的基于角色的访问权限。

令牌服务是 ArcGIS 管理的身份验证的一部分,用于保护 ArcGIS Web 服务。

可使用令牌服务 URL 或使用 Web 页面请求令牌。JavaScript 应用程序开发人员需要提取令牌,然后在使用受保护的 ArcGIS Web 服务的应用程序中进行使用。

有关使用令牌的详细信息,请参阅令牌和令牌服务

ArcGIS Web 服务的安全性

可使用基于角色的访问控制机制保护 ArcGIS Web 服务。可使用管理器设置服务的权限。在 GIS 服务器上启用安全性后,只可将访问权限授予属于有权访问 GIS 服务的角色的用户。

要保护 ArcGIS Web 服务,可在基于令牌的 ArcGIS 管理的身份验证和 Java 企业版容器管理的身份验证(如上所述)之间选择身份验证方案。

有关如何保护 Web 应用程序的详细信息,请参阅保护 Web 应用程序

Web 应用程序的安全性

在管理器中创建的 Web 应用程序可使用 ArcGIS 管理的身份验证或 Java 企业版容器管理的身份验证(如上所述)进行保护。

可指定特定角色权限的集合来访问 Web 应用程序。只有属于这些角色的用户才可访问应用程序。

有关如何保护 Web 应用程序的详细信息,请参阅保护 Web 应用程序


3/7/2012