ArcGIS Server 可利用 LDAP 服务器(如 Apache Directory Server 或 Microsoft Active Directory)中存储的用户和角色信息。ArcGIS Server 将 LDAP 服务器视为用户/角色信息的只读源,因此,您不能使用 ArcGIS Server Manager 添加或删除用户和角色,也不能编辑其属性。
如果要使用 LDAP,必须将 Web Adaptor 部署到 Java 应用程序服务器,如 Apache Tomcat、IBM WebSphere 或 Oracle WebLogic。无法使用 ArcGIS Web Adaptor (IIS) 按照 LDAP 执行 Web 层身份验证。
可通过下面这些步骤使用 LDAP 服务器中的用户和角色来确保 ArcGIS Web 服务的安全性:
配置安全性设置
按照下列步骤,使用 Manager 配置安全性:
- 打开 Manager 并以主站点管理员的身份登录。必须使用主站点管理员帐户。如需此步骤的帮助,请参阅 登录 Manager。
- 单击安全性 > 设置。
- 单击配置设置旁边的编辑按钮 。
- 在用户和角色管理页面中,选择现有企业系统(LDAP 或 Windows 域)中的用户和角色选项,然后单击下一步。
- 在企业存储类型页面中,选择 LDAP 选项,然后单击下一步。
- 在下一页面中,您需要输入参数以连接到 LDAP 服务器。单击测试连接创建一个至 LDAP 服务器的测试连接。如果连接尝试成功,请单击下一步。下表介绍了此页面中的参数:
参数 说明 示例 主机名称
运行 LDAP 服务器的主机名称。
myservername
端口
主机上 LDAP 服务器用于监听传入连接的端口号。如果 LDAP 服务器支持安全连接 (ldaps),则 ArcGIS Server 会自动切换到 ldaps 协议。如果指定的端口为 10389,则 ArcGIS Server 将会与端口 10636 进行安全连接。如果指定的端口为 389,则 ArcGIS Server 将会与端口 636 进行安全连接。
10636
636
基本 DN
维护用户信息的目录服务器中节点的标识名 (DN)。
ou=users,ou=arcgis,dc=mydomain,dc=com
URL
用于连接到 LDAP 服务器的 LDAP URL(自动生成)。如果该 URL 不正确或需要更改,可对其进行编辑。如果 LDAP 服务器不使用标准 636 接口进行安全连接,则应在此指定自定义端口号。
ldaps://myservername:636/ou=users,ou=arcgis,dc=mydomain,dc=com
ldaps://myservername:10636/ou=users,ou=arcgis,dc=mydomain,dc=com
ldaps://myservername:10300/ou=users,ou=arcgis,dc=mydomain,dc=com(自定义端口)
RDN 属性
LDAP 服务器中用户条目的相对标识名 (RDN) 属性。
对于 DN "cn=john,ou=users,ou=arcgis,dc=mydomain,dc=com",RDN 为 "cn=john",RDN 属性为 cn。
对于 DN "uid=john,ou=users,ou=arcgis,dc=mydomain,dc=com",RDN 为 "uid=john",RDN 属性为 uid。
管理员的 DN
对包含用户信息的节点具有访问权限的 LDAP 管理员帐户的 DN。
建议指定具有未过期密码的管理员帐户。如果不可行,则需要在每次帐户密码更改时重复本部分中的步骤。
uid=admin,ou=administrators,dc=mydomain,dc=com
密码
管理员的密码。
adminpassword
- 在下一页面中,输入参数以从 LDAP 服务器中检索角色。下表详细介绍了这些参数:
参数 说明 示例 基本 DN
维护角色信息的目录服务器中节点的 DN。
ou=roles,ou=arcgis,dc=mydomain,dc=com
URL
用于连接到服务器的 LDAP URL(自动生成)。如果该 URL 不正确或需要更改,可对其进行编辑。
ldaps://myservername:10636/ou=roles,ou=arcgis,dc=mydomain,dc=com
角色条目中的用户属性
包含作为此角色成员的用户 DN 的角色条目中的属性名称。
在 Apache Directory Server 中,最常用的属性名称为 uniqueMember。在 Microsoft Active Directory 中,最常用的属性名称为 member。
- 输入参数后单击下一步。
- 在身份验证层页面中,选择您想要进行身份验证的位置,然后单击下一步。有关此选项的详细信息,请参阅配置 ArcGIS Server 安全性。
- 查看所选内容的摘要信息。单击上一步进行更改,或单击完成应用和保存安全性配置。
查看用户和角色
配置安全性以将该存储用于用户和角色管理后,查看用户和角色以确保已正确导入这些用户和角色。要添加、编辑或删除用户和角色,您需要使用由 LDAP 供应商提供的用户管理工具。
- 在 Manager 中,单击安全性 > 用户。
- 验证是否已按预期从 LDAP 服务器中检索用户。
- 单击角色查看从 LDAP 服务器中检索的角色。
- 验证是否已按预期从 LDAP 服务器中检索角色。单击角色旁边的编辑按钮检查角色成员资格。根据需要修改角色类型值。有关角色类型的信息,请参阅限制对 ArcGIS Server 的访问。
用户和角色缓存
从 ArcGIS 10.5 起,LDAP 用户和角色将在发出用户或角色请求之后,在服务器上进行缓存。这会使安全服务性能得到优化。默认情况下,用户和角色将进行 30 分钟的缓存。可通过将 ArcGIS Server 管理员目录系统属性下的 minutesToCacheUserRoles 属性设置为其他值来修改此时间段。也可以将该属性设置为零,从而禁用缓存。
在服务器的 Web Adaptor 上设置 Web 层身份验证
LDAP 需要进行 Web 层身份验证,且此操作必须通过 ArcGIS Web Adaptor (Java Platform) 来完成。 Web Adaptor 基于 Java 应用程序服务器进行用户身份验证,并为 Web Adaptor 提供用户的帐户名。获取帐户名称后,会将其传送至服务器。
注:
配置 Web Adaptor 时,必须通过 Web Adaptor 启用管理。这使得 LDAP 中的用户能够通过 ArcGIS Desktop 来发布服务。具有这些角色的用户连接到 ArcGIS Desktop 中的服务器时,必须指定 Web Adaptor URL。
为服务器安装并配置 ArcGIS Web Adaptor (Java Platform) 后,您需要在 Java 应用程序服务器上配置 LDAP 域,并为 Web Adaptor 配置身份验证方法。 相关说明,请参阅 Java 应用程序服务器的产品文档或咨询系统管理员。
为 ArcGIS Web 服务设置权限
配置安全性设置并定义用户和角色后,可设置服务的权限来控制允许访问服务的用户。
ArcGIS Server 使用基于角色的访问控制模型对您的服务器上所托管的 GIS Web 服务的访问权限进行控制。在基于角色的访问控制模型中,访问受保护服务的权限将通过为该服务分配角色来控制。要使用某一受保护的服务,用户必须是已分配了该服务访问权限的角色中的成员。
权限可分配给一个单独的 Web 服务或包含一组服务的父文件夹。如果将权限分配给文件夹,则该文件夹内所包含的任何服务都将继承文件夹的权限。例如,如果授予某个角色访问站点(根)文件夹的权限,则属于该角色的所有用户都将拥有访问该站点上托管的所有服务的权限。若要自动覆盖服务从其父文件夹继承的权限,可以编辑该服务并明确移除继承的权限。
要设置服务的权限,请参阅在管理器中编辑权限。