添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

简单身份验证和安全层 (SASL) 是 Internet 协议中身份验证和数据安全的框架。 从 10.9 版本开始, ArcGIS Enterprise 支持通过 Windows Active Directory 或其他 LDAP 提供者使用 GSS/Kerberos v5 SASL 机制将 SASL 作为身份验证的方式。

使用实例

当组织的域控制器被配置为需要与 LDAP 服务器进行签名认证时,通常使用 SASL GSS 认证。 此要求仅适用于通过 389 或 3268 端口在不加密的情况下连接到 LDAP 服务器的情况。 如果所有域控制器都完全支持 LDAPS,则不需要此签名要求。

LDAP 服务器签名要求的域控制器设置

要求

要使用 ArcGIS Enterprise 配置 SASL 身份验证,需要满足一些要求。

Kerberos 配置文件。

需要一个 Kerberos 配置文件向 Portal for ArcGIS 提供有关 Kerberos 域控制器的信息。 信息必须保存在文本文件中,例如 krb5.conf 。 文本文件的副本必须存储在 Portal for ArcGIS 服务帐户可以访问的位置。 示例包括门户安装文件夹或门户内容目录。 门户内容目录的默认位置为 /arcgis/portal/usr

这个配置文件是 Kerberos 的标准文件,应该包括默认的配置设置和每个 Kerberos 域的一个或多个 Kerberos 域控制器信息。 示例配置文件如下所示。

[libdefaults]
    dns_lookup_realm = false
    ticket_lifetime = 24h
    renew_lifetime = 7d
    forwardable = true
    rdns = false
    default_ccache_name = KEYRING:persistent:%{uid}
    dns_lookup_kdc = true
    default_realm = EXAMPLE.COM
    default_checksum = rsa-md5
[realms]
EXAMPLE.COM = {
    kdc = domaincontroller.example.com
    admin_server = domaincontroller.example.com
[domain_realm]
    example.com = EXAMPLE.COM
    .example.com = EXAMPLE.COM

支持 Windows 和 LDAP 标识存储类型的新用户和群组存储属性

  • "saslAuthenticationScheme" - 定义 Portal for ArcGIS 用于通过 LDAP 连接到域控制器的 SASL 身份验证方案。 在 10.9 版本, GSSAPI 是唯一受支持的 SASL 身份验证方案。 示例: "saslAuthenticationScheme": "GSSAPI"
  • "krb5ConfigFilePath" - 定义上述 Kerberos 配置文本文件的路径。 该文件必须位于 Portal for ArcGIS 服务帐户具有读取权限的位置。

    示例: "krb5ConfigFilePath": "/data/arcgis/krb5.conf"

Portal for ArcGIS 标识存储配置

SASL GSS 身份验证机制可用于 Windows 或 LDAP 标识存储类型,并适用于门户层和 web 层身份验证。 此机制还包括维护和刷新 Active Directory 或 LDAP 群组成员资格。

LDAP 用户和群组

当配置 Portal for ArcGIS 以使用 LDAP 用户和群组 SASL 身份验证时,必须添加 "saslAuthenticationScheme" "krb5ConfigFilePath" 属性,且 "user" 属性中列出的用户名的格式必须更改为 username@realm ldapURLForUsers ldapURLForRoles 必须包含 Kerberos 域控制器的完全限定域名 (FQDN)。 此处不支持使用 IP 地址。 如果将使用门户层身份验证,应将 "usernameAttribute" 设置为 "userPrincipalName" ,以使用户名的格式正确。 以下是使用 LDAP 的用户和群组存储配置

示例用户存储配置

{
  "type": "LDAP",
  "properties": {
    "ldapURLForUsers": "ldap://kdc1.example.com:389/OU=users,DC=example,DC=com",
    "saslAuthenticationScheme": "GSSAPI",
    "krb5ConfigFilePath": "/data/arcgis/krb5.conf",
    "user": "entuser@example.com",
    "userPassword": "encrypted_password",
    "isPasswordEncrypted": "true",
    "usernameAttribute": "sAMAccountName",
    "userGivenNameAttribute": "givenName",
    "userSurnameAttribute": "sn",
    "userEmailAttribute": "mail",
    "caseSensitive": "false”

示例群组存储配置

{
  "type": "LDAP",
  "properties": {
    "ldapURLForUsers": "ldap://kdc1.example.com:389/OU=users,DC=example,DC=com",
    “ldapURLForRoles”: "ldap://kdc1.example.com:389/OU=groups,DC=example,DC=com",
    "saslAuthenticationScheme": "GSSAPI",
    "krb5ConfigFilePath": "/data/arcgis/krb5.conf",
    "user": "entuser@example.com",
    "userPassword": "encrypted_password",
    "isPasswordEncrypted": "true",
    "usernameAttribute": "sAMAccountName",
    "caseSensitive": "false”

其他注意事项

当 LDAP 用户使用门户层身份验证登录至门户时,用户名的格式必须是 username@realm ,例如 testuser@example.com

Kerberos 域控制器设置

由于 Java 的限制,LDAP 服务器通道绑定令牌要求的域控制器设置不能设置为 始终 。 有关详细信息,请参阅 JVM Bug 8245527 。 必须设置为 支持时 从不

LDAP 服务器通道绑定的域控制器设置。