LDAP (Lightweight Directory Access Protocol) を使用して、ポータルへのアクセスのセキュリティを確保できます。LDAP を使用すると、組織の LDAP サーバーでログインが管理されます。LDAP のポータルのアイデンティティ ストアを更新すると、ポータル層で認証を構成できるようになります。
すべての通信に HTTPS を使用するようにポータルを構成します。
最初に、すべての通信に HTTPS を使用するようにポータルを構成します。
- 組織サイトの管理者としてポータル Web サイトにサイン インします。URL の形式は https://webadaptorhost.domain.com/webadaptorname/home です。
- [組織] ページで [サイト設定] → [セキュリティ] の順にクリックします。
- [HTTPS のみを使用したポータルへのアクセスを許可] をオンにします。
- [保存] をクリックして、変更内容を適用します。
ポータルのアイデンティティ ストアの更新
次に、LDAP のユーザーとグループを使用するように、ポータルのアイデンティティ ストアを更新します。
LDAP を使用したポータルのアイデンティティ ストアの更新
- 組織の管理者として ArcGIS Portal Directory にサイン インします。URL の形式は https://webadaptorhost.domain.com/webadaptorname/portaladmin です。
- [Security] → [Config] → [Update Identity Store] の順にクリックします。
- [User store configuration (in JSON format)] テキスト ボックスに、組織の LDAP ユーザー構成情報を (JSON 形式で) 入力します。また、組織に固有のユーザー情報を次のサンプルに反映させることもできます。
{ "type": "LDAP", "properties": { "userPassword": "secret", "isPasswordEncrypted": "false", "user": "uid=admin,ou=system", "userFullnameAttribute": "cn", "ldapURLForUsers": "ldaps://bar2:10636/ou=users,ou=ags,dc=example,dc=com", "userEmailAttribute": "mail", "usernameAttribute": "uid", "caseSensitive": "false", "userSearchAttribute": "uid" } }
ほとんどの場合、[user]、[userPassword]、および [ldapURLForUsers] パラメーターの値を変更するだけで済みます。LDAP の URL は、LDAP 管理者が提供する必要があります。
上記の例では、LDAP URL は特定の OU (ou = ユーザー グループ) 内のユーザーを参照します。ユーザーが複数の OU に存在する場合、LDAP URL では、より上位の OU を指定するか、必要であればルート OU を指定します。その場合は、URL は以下のようになります。
"ldapURLForUsers": "ldaps://bar2:10636/dc=example,dc=com",
user パラメーターに使用するアカウントは、組織サイト内のユーザーの電子メール アドレスとユーザー名を検索する権限を持つ必要があります。パスワードをプレーン テキストで入力しても、[Update Configuration] (下記) をクリックすると、そのパスワードが暗号化されます。
LDAP が大文字と小文字を区別するように構成されている場合は、[caseSensitive] パラメーターを [true] に設定します。
- ポータルに、アイデンティティ ストア内の既存のエンタープライズ グループを利用するグループを作成するには、次に示されているように、[Group store configuration (in JSON format)] テキスト ボックスに組織の LDAP グループ構成情報を (JSON 形式で) 入力します。また、組織に固有のグループ情報を次のサンプルに反映させることもできます。ポータルの組み込みグループのみを使用する場合は、テキスト ボックス内の情報をすべて削除し、この手順をスキップしてください。
{ "type": "LDAP", "properties": { "userPassword": "secret", "isPasswordEncrypted": "false", "user": "uid=admin,ou=system", "ldapURLForUsers": "ldaps://bar2:10636/ou=users,ou=ags,dc=example,dc=com", "ldapURLForRoles": "ldaps://bar2:10636/dc=example,dc=com", "usernameAttribute": "uid", "caseSensitive": "false", "userSearchAttribute": "uid", "memberAttributeInRoles": "member", "rolenameAttribute":"cn" } }
ほとんどの場合、[user]、[userPassword]、および [ldapURLForUsers] パラメーターの値を変更するだけで済みます。LDAP の URL は、LDAP 管理者が提供する必要があります。
上記の例では、LDAP URL は特定の OU (ou = ユーザー グループ) 内のユーザーを参照します。ユーザーが複数の OU に存在する場合、LDAP URL では、より上位の OU を指定するか、必要であればルート OU を指定します。その場合は、URL は以下のようになります。
"ldapURLForUsers": "ldaps://bar2:10636/dc=example,dc=com",
user パラメーターに使用するアカウントは、組織サイト内のユーザーの電子メール アドレスとユーザー名を検索する権限を持つ必要があります。パスワードをプレーン テキストで入力しても、[Update Configuration] (下記) をクリックすると、そのパスワードが暗号化されます。
LDAP が大文字と小文字を区別するように構成されている場合は、[caseSensitive] パラメーターを [true] に設定します。
- [Update Configuration] をクリックして、変更内容を保存します。
追加のアイデンティティ ストア パラメーターの必要に応じた構成
ArcGIS Portal Directory の管理 API で変更できる、追加のアイデンティティ ストア構成パラメーターがあります。これらのパラメーターには、エンタープライズ ユーザーがポータルにサイン インしたときにグループを自動的に更新するかどうかの制限、メンバーシップ更新間隔の設定、複数のユーザー名フォーマットのチェックを行うかどうかの定義といったオプションが含まれます。詳細については、「アイデンティティ ストアの更新」をご参照ください。
ポータル層認証の構成
LDAP アイデンティティ ストアでポータルを構成すると、Java アプリケーション サーバーの Web アダプターを通じて匿名アクセスを有効にする必要があります。 ユーザーがポータルのサイン イン ページにアクセスするとき、エンタープライズ認証情報または組み込み認証情報を使用してログインできるようになります。エンタープライズ ユーザーは、ポータルにログインするたびにアカウント認証情報を入力する必要があり、自動サイン オンまたはシングル サインオンは使用できません。この種の認証を使用すると、すべての人と共有されているマップやその他のポータル リソースに匿名ユーザーがアクセスすることもできます。
認証情報を使用してポータルにアクセスできることを確認する
- ポータル Web サイトを開きます。URL の形式は https://webadaptorhost.domain.com/webadaptorname/home です。
- エンタープライズ アカウント認証情報 (たとえば以下の構文) を使用してサイン インします。
ポータル層認証を使用する場合、エンタープライズ内のメンバーは、次の構文を使用してログインします。
- ポータルで LDAP を使用している場合、構文は常に username になります。ポータル Web サイトでも、アカウントがこの形式で表示されます。
ポータルにエンタープライズ アカウントを追加する
デフォルトでは、エンタープライズ ユーザーはポータル Web サイトにアクセスできます。ただし、エンタープライズ ユーザーは、組織内の全員で共有しているアイテムしか表示できません。これは、エンタープライズ アカウントがポータルに追加されておらず、またアクセス権限も付与されていないからです。
次のいずれかの方法で、ポータルにアカウントを追加します。
- Portal for ArcGIS サイト (1 つずつ、もしくは CSV ファイルまたは既存のエンタープライズ グループから一括で追加可能)
- Python スクリプト
- コマンド ライン ユーティリティ
- 自動
少なくとも 1 つのエンタープライズ アカウントをポータルの管理者として指定することをお勧めします。これを行うには、アカウントを追加する際に [管理者] ロールを選択します。代わりのポータル管理者アカウントをお持ちの場合は、初期管理者アカウントにユーザー ロールを割り当てたり、このアカウントを削除したりすることができます。詳細については、「初期管理者アカウントについて」をご参照ください。
ユーザーは、アカウントが追加された時点で、組織サイトにサイン インしてコンテンツにアクセスできるようになります。