LDAP 統合を理解する
LDAP 統合により、インスタンスで既存の LDAP サーバーをユーザーデータのプライマリソースとして使用できます。
LDAP 統合の前提条件
- ディレクトリサービスサーバーは LDAP v3 に準拠している必要がある
- ファイアウォール経由の受信ネットワークアクセスを (LDAP サーバーに対して) 許可する必要がある
- LDAP サーバーの外部 IP または名前
- 読み取り専用アクセス権を持つユーザー認証情報
- LDAPS の場合は PKI 証明書
LDAP 統合のタイミング
LDAP 統合は通常、インスタンスの本番稼働前に行われますが、いつでも統合できます。
LDAP サーバーのデータ整合性
一部のユーザーは、第三者 (この場合はインスタンス) が LDAP サーバーを変更 (書き込み) することを懸念しています。LDAP 統合では、インスタンスは内部 LDAP ディレクトリに書き込みません。インスタンスは情報を照会し、それに応じてデータベースを更新します。
インスタンスによって内部 LDAP サーバーが変更されることはありません。サービスアカウントは読み取り専用です。
LDAP サーバーへのほとんどの変更 (追加を含む) は、完全な LDAP 統合のコンポーネントの数に応じて、数秒でインスタンスで利用可能になります。
LDAP レコードの同期を維持するには、LDAP サーバーの定期的なスキャンをスケジュールして変更を取得します。
インスタンスは部門レコードを同期しません。ユーザーとグループのメンバーシップは、LDAP リスナーメカニズムと日次の完全な LDAP ブラウザーによって最新の状態に維持されますが、LDAP から消えたこれらのエントリは削除されません。
エントリを削除すると、履歴全体も削除され、そのエントリへの参照がクリアされるか削除されます。構成アイテム (CI)、 SLA 契約、ソフトウェアライセンス、発注書 (PO)、およびサービスカタログエントリにはすべて部門への参照があり、部門が削除されると、それらの参照はクリアされます。ユーザーへの参照が多数あるため、ユーザーを削除すると、そのユーザーが行ったすべての履歴が失われます。現在、削除するかどうかはお客様が決定します。
セキュリティ
接続は、ファイアウォール上の特定のポートを介して、固定 IP アドレスを使用して単一のマシンから行われます。認証は、選択した読み取り専用の LDAP アカウントで行われます。標準 LDAP を使用するか、ディレクトリにインストールされている SSL 証明書の公開側をロードできます。その場合は、LDAPS を使用できます。別のセキュリティレイヤーを追加するために、ポイントツーポイント IPSEC VPN トンネルのオプションも提供しています。詳細と価格については、アカウントマネージャーにお問い合わせください。
| 接続 | 説明 |
|---|---|
| MID サーバー | LDAP サーバーを外部ネットワークトラフィックから保護するには、ローカルネットワークに MID サーバーをインストールし、安全なチャネルを介して MID サーバーと通信するようにシステムを設定します。 |
| LDAPS | 暗号化された LDAPS 接続を確立するには、LDAP サーバーの SSL 証明書の公開側をロードします。統合では、証明書を使用して LDAP サーバーとインスタンス間のすべての通信を暗号化します。 |
| VPN | 暗号化されたポイントツーポイント IPSEC VPN トンネルを使用して LDAP サーバーを保護するには、詳細と価格についてアカウントマネージャーにお問い合わせください。 |
考慮すべきもう 1 つのセキュリティ面は、LDAP 統合で共有されるデータです。インスタンスに公開されるデータを制限するには、変換マップで属性を指定します。詳細については、「LDAP 変換マップ」を参照してください。
LDAP データのインスタンスへのインポート
必要なデータのみをインポートするように属性を定義することをお勧めします。定義された属性がインスタンスユーザーデータベースにマッピングされます。
どの属性が必要かは、プロジェクトのスコープとビジネス要件によって決まるため、回答できません。
サポートされている LDAP サーバーのタイプ
インスタンスは、Microsoft Active Directory、Novell、Domino (Louis Notes)、および Open LDAP と正常に統合されています。LDAP サーバーとのインターフェイスには JNDI を使用します。LDAP サーバーが LDAP v3 に準拠している限り、統合は成功します。
LDAP Single-sign-on
LDAP インポートで提供されるデータ入力機能に加えて、アプリケーションでサポートされている外部認証機能を使用して、ユーザーが毎回サインオンする必要がないようにすることができます。
複数の LDAP ドメイン
複数のドメインを処理する場合は、ドメインごとに個別の LDAP サーバーレコードを作成することをお勧めします。各 LDAP サーバーレコードは、そのドメインのドメインコントローラーを指す必要があります。これは、ローカルネットワークが各ドメインコントローラーへの接続を許可する必要があることを意味します。
複数のネットワークドメインに展開した後、アプリケーションユーザー名の一意の LDAP 属性を特定し、結合値をインポートすることが重要です。Active Directory の一般的な一意の結合属性は objectSid です。一意のユーザー名は、LDAP データ設計によって異なる場合があります。一般的な属性は email または userPrincipalName です。
クエリ制限の処理
デフォルトでは、Active Directory 2000/2003 には、過度の負荷とサービス拒否攻撃を防ぐために、1000 オブジェクトの LDAP クエリ制限 (maxPageSize) があります。この制限に対処する方法は 2 つあります。
デフォルトの方法では、一度に 1000 未満のオブジェクトを返すようにクエリを分割します。たとえば、「a」で始まるオブジェクトのみをクエリしてから、「b」オブジェクトをクエリします。大規模な環境でより効率的に行う方法は、ページングを有効にすることです。ページングは、すべての Microsoft Active Directory サーバーでデフォルトでサポートされています。結果は自動的に複数の結果セットに分割されるため、クエリを複数の要求に分割する必要はありません。
LDAP クエリタイプ。
LDAP パスワードが指定されている場合は、「簡易バインド」が実行されます。LDAP パスワードが指定されていない場合は「none」が使用されます。この場合、LDAP サーバーは匿名ログインを許可する必要があります。
LDAP 認証
提供された LDAP のサービスアカウント認証情報を使用して、LDAP サーバーからユーザー DN を取得します。ユーザーの DN 値を指定して、ユーザーの DN とパスワードを指定して LDAP に再バインドします。
パスワードストレージ
ユーザーが入力するパスワードはすべて HTTPS セッションに含まれます。そのパスワードはどこにも保存されません。
LDAP 認証の設定
ユーザーレコードの次のフィールドは LDAP に関連しています。
- ソース:[ソース] フィールドは、ユーザーが LDAP を使用して検証されているかどうかを示します。[ソース] フィールドが「ldap」で始まる場合、ユーザーは LDAP を介して検証されます。[ソース] フィールドが「ldap」で始まっていない場合、ユーザーレコードのパスワードを使用してログイン時にユーザーが検証されます。
- LDAP サーバー:インスタンスは複数の LDAP サーバーをサポートしているため、[LDAP サーバー] フィールドによってユーザーの認証に使用するサーバーが決まります。