SASL (Simple Authentication and Security Layer) は、インターネット プロトコルにおける認証とデータ セキュリティを実現するフレームワークです。 10.9 時点で、ArcGIS Enterprise は GSS/Kerberos v5 SASL メカニズムを使用して Windows Active Directory や他の LDAP プロバイダーで認証する手段として SASL の使用をサポートしています。
使用例
組織のドメイン コントローラーが LDAP サーバーを使用した認証で署名を要求するように構成されている場合、通常 SASL GSS 認証が使用されます。 この要件は、暗号化なしでポート 389 または 3268 を介して LDAP サーバーに接続する場合にのみ適用されます。 LDAPS がすべてのドメイン コントローラーで完全にサポートされている場合、この署名の要件は不要です。
要件
ArcGIS Enterprise で SASL 認証を構成するには、いくつかの要件を満たす必要があります。
Kerberos 構成ファイル
Kerberos ドメイン コントローラーに関する情報を Portal for ArcGIS に提供するには、Kerberos 構成ファイルが必要です。 この情報は、テキスト ファイル (例: krb5.conf) に保存する必要があります。 テキスト ファイルのコピーは、Portal for ArcGIS サービス アカウントがアクセスできる場所に格納する必要があります。 この例としては、ポータルのインストール フォルダーやポータルのコンテンツ ディレクトリなどがあります。 ポータルのコンテンツ ディレクトリのデフォルトの場所は、/arcgis/portal/usr です。
この構成ファイルは Kerberos の標準であり、デフォルト構成の設定や、各 Kerberos レルムの 1 つ以上の 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" - LDAP を使用してドメイン コントローラーに接続する際に Portal for ArcGIS が使用する SASL 認証スキームを定義します。 10.9 でサポートされている SASL 認証スキームは、GSSAPI のみです。 例: "saslAuthenticationScheme": "GSSAPI"
- "krb5ConfigFilePath" - 上記の Kerberos 構成テキスト ファイルへのパスを定義します。 これは、Portal for ArcGIS サービス アカウントの読み取りアクセス権限がある場所を指定する必要があります。
例: "krb5ConfigFilePath": "/data/arcgis/krb5.conf"
Portal for ArcGIS アイデンティティ ストアの構成
SASL GSS 認証メカニズムは、Windows または LDAP アイデンティティ ストア・タイプのいずれかで使用でき、ポータル層と Web 層の両方の認証で動作します。 これには、エンタープライズ グループのメンバーシップの管理と更新も含まれます。
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 バグ 8245527」をご参照ください。 [サポートされている場合] または [なし] のいずれかに設定する必要があります。