PingFederate を vCenter Server で認証するには、パスワード付与フローを設定します。
前提条件
次の操作を行います。
PingFederate 管理コンソールに管理者アカウントでログインします。
手順
- パスワード認証情報バリデータを作成します。
- [システム] > [データと認証情報ストア] > [パスワード認証情報バリデータ] の順に移動します。
- [新規インスタンスの作成] をクリックします。
- [パスワード認証情報バリデータ | 新規インスタンスの作成] 画面で、各タブに次のように情報を入力し、[次へ] をクリックして先に進みます。
- [タイプ] タブで、次の手順を実行します。
- [インスタンス名]:インスタンス名を入力します。たとえば、vIDB Validator とします。
- [インスタンス ID]:インスタンス ID を入力します。たとえば、vIDB などです。
- [タイプ]:[LDAP ユーザー名パスワード認証情報バリデータ] を選択します。
- [インスタンスの構成] タブで、次の手順を実行します。
- [LDAP データストア]:使用しているデータ ストアを選択します。
- [検索ベース]:ユーザーとグループを検索するベース DN を入力します。
- [検索フィルタ]:フィルタを入力します。たとえば、userPrincipalName=${username} とします。
- [検索範囲]:[サブツリー] を選択します。
- [拡張された契約] タブで、次の手順を実行します。
- デフォルトでは、以下が追加されます。
- [DN]
- [email]
- [givenName]
- [username]
- デフォルトでは、以下が追加されます。
- [タイプ] タブで、次の手順を実行します。
- [次へ] をクリックし、[保存] をクリックします。
- 認可サーバ設定でバリデータをマッピングします。
- [システム] > [OAuth の設定] > [認可サーバ設定] の順に移動します。
- [パスワード認証情報バリデータ] で、作成済みのバリデータを選択します。たとえば、このドキュメントでは vIDB Validator です。
- [保存] をクリックします。
- リソース所有者認証情報付与マッピングを作成します。
- [認証] > [OAuth] > [リソース所有者認証情報マッピング] の順に移動します。
- [リソース所有者認証情報付与マッピング] ウィンドウで、次の手順を実行します。
- [ソース パスワード バリデータ インスタンス]:作成済みのインスタンスを選択し、[マッピングの追加] をクリックします。
- [リソース所有者認証情報付与マッピング | リソース所有者認証情報マッピング] 画面で、[次へ] をクリックして [属性ソースとユーザーのルックアップ] タブをスキップします。
- [契約の履行] タブで、次の手順を実行します。
- [USER_KEY] で [パスワード認証情報バリデータ] を選択し、[値] で [username] を選択します。
- [次へ] をクリックして [保護条件] タブをスキップし、[保存] をクリックします。
- アクセス トークン マッピングの作成 - パスワード認証情報バリデータをアクセス トークン マネージャにマッピングします。
このマッピングは、パスワード付与ワークフローに必要です。マッピングがないと、PingFederate は次のエラーを記録します。
選択されたクライアントと認証コンテキストで使用可能なアクセス トークン マネージャがありません。
- [アプリケーション] > [アクセス トークン マッピング] の順に移動します。
- [コンテキスト]:作成済みのコンテキストを選択します。たとえば、このドキュメントでは vIDB Validator です。
- [アクセス トークン マネージャ]:作成済みのアクセス トークン マネージャを選択します。たとえば、このドキュメントでは vIDB Access Token Manager です。
- [マッピングの追加] をクリックします。
- [次へ] をクリックして [属性ソースとユーザーのルックアップ] タブをスキップします。
- [契約の履行] タブで、次の表を使用します。
契約 ソース 値 [aud] [コンテキスト] 作成済みのクライアント ID。たとえば、このドキュメントで使用されている ID は vIDB です。 [exp] [マッピングなし] - [iat] [式] 次のように入力します。 @org.jose4j.jwt.NumericDate@now().getValue()
[iss] [式] (表示されない場合は、https://docs.pingidentity.com/r/en-us/pingfederate-120/pf_enable_disable_express の PingFederate ドキュメントを参照してください。)
次のように入力します。 #tmp=#this.get("context.HttpRequest").getObjectValue().getRequestURL().toString(), #url=new java.net.URL(#tmp), #protocol=#url.getProtocol(), #host=#url.getHost(),#port=#url.getPort(), #result=(#port != -1) ? @java.lang.String@format("%s://%s:%d", #protocol, #host, #port) : @java.lang.String@format("%s://%s", #protocol, #host, #port)
[userName] [マッピングなし] -
この契約は、後で認可コード ワークフロー用の OIDC ポリシーに対する LDAP フィルタで使用されます。PingFederate ワークフローの場合は不要です。
- [次へ] をクリックして [保護条件] タブをスキップし、[保存] をクリックします。
- [アプリケーション] > [アクセス トークン マッピング] の順に移動します。
次のタスク
この後は「認可コード フロー構成の作成」に続きます。