このページでは、AppDynamics SaaS コントローラテナントと LDAP ディレクトリサーバーを統合する手順について説明します。 

一部のコード例では、コントローラテナントを単にControllerと呼んでいます。

LDAP サポート

コントローラテナント UI の認証および承認を、LDAP(Lightweight Directory Access Protocol)バージョン 3 に準拠する外部のディレクトリサーバーに委任できます。

コントローラテナントは、LDAPv3 準拠のサーバーで動作しますが、以下の LDAP 製品に対しては検証済みです。

  • Microsoft Active Directory for Windows Server 2008 SP2 以降
  • OpenLDAP 2.4 以降

AppDynamics コントローラテナントで LDAP 認証を構成するには、LDAP サーバーへの接続設定とユーザーまたはグループのデータを返すクエリを構成する必要があります。LDAP グループをロールにマッピングすると、LDAP グループに基づいてコントローラテナントで権限をプロビジョニングできます。

考えられる問題と解決策

問題解像度
LDAP サーバーを利用できなくなったコントローラテナントの認証用に構成された LDAP サーバーを何らかの理由で利用できなくなった場合、コントローラテナントはローカルユーザー認証に切り替わります。この可能性があるため、LDAP サーバーを利用できなくなった場合にアクセスする必要のある管理ユーザー用に、AppDynamics でローカルユーザーアカウントをプロビジョニングする必要があります。
ユーザーが LDAP ディレクトリで見つからないLDAPディレクトリにユーザーが見つからない場合、認証エラーイベントが警告として記録されます。通常のコントローラ テナント ユーザーまたは REST クライアントユーザーのいずれの場合でも、ユーザーはローカル認証によって認証できます。

AppDynamics 統合用 LDAP ディレクトリの準備

LDAP 認証プロバイダーを使用するには、AppDynamics コントローラテナントが外部 LDAP サーバーに接続できる必要があります。明示的に LDAP でユーザーアカウントを作成し、そのアカウントを使用してコントローラテナントがサーバーに対して自身を認証し、クエリを実行できるようにすることをお勧めします。コントローラ テナント ユーザーは、LDAP での検索権限のみを持つ必要があります。

既存の LDAP グループの定義を AppDynamics のロールにマッピングすることは可能ですが、既存のグループがそのロールに直接対応していない場合があります。AppDynamics でマッピングするロールごとに LDAP でグループを作成することで、LDAP グループをコントローラテナントロールにマッピングできます。ロールごとに LDAP グループを作成すると、LDAP グループと AppDynamics のロールを 1 対 1 で対応させることができるため、管理しやすくなります。

AppDynamics においてマッピングするための LDAP グループスキームは次のようになります。

  • AppDynamics-App1-ReadOnly
  • AppDynamics-App1-Admins
  • AppDynamics-App1-DashboardViewers
  • AppDynamics-App2-ReadOnly
  • AppDynamics-App2-Admins
  • AppDynamics-App2-DashboardViewers

サンプルのグループ名は、特定のアプリケーションである App1 と App2 を対象とした AppDynamics のカスタムロールを持っていることを示しています。

共通のプレフィックスを使用してグループに名前を付けると(サンプルでは AppDynamics- プレフィックス)、LDAP グループフィルタを使用できます。サンプルグループのグループフィルタは次のようになります。

(&(objectClass=group)(cn=AppDynamics-*))
CODE

大規模な結果セットに対するページングされた結果の使用

LDAP サーバーの構成が、クエリの応答で返すエントリの数を制限していることがあります。ユーザーまたはグループクエリの結果がその制限を超えると、AppDynamics で max_results_exceeded エラーが報告されます。

このエラーを回避するには、クエリフィルタを調整し、結果セットのサイズを小さくします。コントローラテナント UI にアクセスするユーザーは結果に含まれる必要があります。 

LDAP サーバーが対応していれば、コントローラテナントの LDAP 構成でページングされた結果を有効にできます。ページングされた結果を使用して、LDAPサーバーは個別に送信されるブロックに結果セットを分割します。

ページングされた結果の機能は、AppDynamics コントローラテナントとバックエンド LDAP サーバー間のバックエンドで行われるインタラクションに適用されます。コントローラテナント UI のデータの表示には影響しません。