統合リポジトリー内のファイル・ベース・リポジトリーのクライアント証明書ログイン・サポートの使用可能化
単一の組み込みファイル・ベース・リポジトリー、またはファイル・ベース・リポジトリーと他のリポジトリーが含まれた複数リポジトリー構成で構成されたレルムでクライアント証明書ログインのサポートを使用可能にすることができます。
始める前に
このタスクについて
組み込みファイル・ベース・リポジトリーのデフォルト構成では、証明書ログイン要求を無視し、空の検索結果を返し、エラーを表示しません。
組み込みファイル・ベース・リポジトリーのクライアント証明書ログインを使用可能にする場合は、以下のステップを実行して、カスタム・プロパティーを設定します。
手順
wsadmin コマンドを使用したカスタム・プロパティーの追加
あるいは、以下のステップで示すように、wsadmin コマンドを使用して、カスタム・プロパティーを追加することもできます。
手順
タスクの結果
上記ステップを完了すると、ファイル・アダプター構成の以下のエントリーに示されているように、統合リポジトリーでファイル・ベース・リポジトリー用の証明書ログインのサポートが使用可能になっています。
<config:CustomProperties name="certificateMapMode" value="mode"/>
<config:CustomProperties name="certificateFilter" value="filter_expression"/>
証明書ログイン要求が受け付けられると、ログインは成功します。証明書ログイン要求が拒否されると、エラーが表示されます。
統合リポジトリーの下でファイル・リポジトリーのみが構成されている場合は、証明書ログイン要求の結果は、以下の表の説明のようになります。
ファイル・リポジトリー | 期待される結果 |
---|---|
デフォルトの動作 (certificateMapMode カスタム・プロパティーが追加されていない) | 証明書ログイン要求は無視され、空の結果が返され、エラーは表示されません。 |
証明書ログインがサポートされない (certificateMapMode カスタム・プロパティーの値が notSupported) | CertificateMapNotSupportedException が発生します。 |
証明書ログインがサポートされ (certificateMapMode カスタム・プロパティーの値が exactDNMode または filterDescriptorMode)、ユーザーが見つからない | EntityNotFoundException が発生します。 |
証明書ログインがサポートされ (certificateMapMode カスタム・プロパティーの値が exactDNMode)、証明書内の PrincipalName に一致する DN を持つエンティティーが見つかった | 証明書ログインは正常に行われます |
証明書ログインがサポートされ (certificateMapMode カスタム・プロパティーの値が filterDescriptorMode)、単一の一致するエンティティーが見つかった | 証明書ログインは正常に行われます |
証明書ログインがサポートされ (certificateMapMode カスタム・プロパティーの値が filterDescriptorMode)、複数の一致するエンティティーが見つかった | CertificateMapFailedException が発生し、「複数のプリンシパルが見つかりました (Multiple principals found)」というエラー・メッセージが表示されます。 |
統合リポジトリーの下に複数のリポジトリーが構成されている場合は、最終的なログイン結果は、他のリポジトリーの動作および他のリポジトリーから返された結果によって異なります。以下の表に、各種構成シナリオで表示されるエラーの例を示します。
ファイル・リポジトリー | LDAP リポジトリー | 期待される結果 |
---|---|---|
デフォルトの動作 | 証明書ログインがサポートされており、ユーザーが見つかります | 証明書ログインは正常に行われます |
デフォルトの動作 | 証明書ログインはサポートされていますが、ユーザーが見つかりません | PasswordCheckFailedException が発生します |
証明書ログインはサポートされていません | 証明書ログインがサポートされており、ユーザーが見つかります | CertificateMapFailedException が発生します |
証明書ログインがサポートされており、ユーザーが見つかります | 証明書ログインがサポートされており、ユーザーが見つかります | DuplicateLogonIdException が発生します |
証明書ログインがサポートされており、ユーザーが見つかります | 証明書ログインはサポートされていますが、ユーザーが見つかりません | 証明書ログインは正常に行われます |
証明書ログインはサポートされていますが、ユーザーが見つかりません | 証明書ログインがサポートされており、ユーザーが見つかります | 証明書ログインは正常に行われます |
証明書ログインはサポートされていますが、ユーザーが見つかりません | 証明書ログインはサポートされていますが、ユーザーが見つかりません | PasswordCheckFailedException が発生します |
ファイル・リポジトリー | ローカル・オペレーティング・システム・リポジトリー | 期待される結果 |
---|---|---|
デフォルトの動作 | 証明書ログインはサポートされていません | CertificateMapFailedException が発生します |
証明書ログインはサポートされていません | 証明書ログインはサポートされていません | CertificateMapNotSupportedException が発生します。 |
証明書ログインがサポートされており、ユーザーが見つかります | 証明書ログインはサポートされていません | CertificateMapFailedException が発生します |
証明書ログインはサポートされていますが、ユーザーが見つかりません | 証明書ログインはサポートされていません | CertificateMapFailedException が発生します |
デフォルトの動作 | 証明書ログインがサポートされており、ユーザーが見つかります | 証明書ログインは正常に行われます |
デフォルトの動作 | 証明書ログインはサポートされていますが、ユーザーが見つかりません | PasswordCheckFailedException が発生します |
証明書ログインはサポートされていません | 証明書ログインがサポートされており、ユーザーが見つかります | CertificateMapFailedException が発生します |
証明書ログインがサポートされており、ユーザーが見つかります | 証明書ログインがサポートされており、ユーザーが見つかります | DuplicateLogonIdException が発生します |
証明書ログインがサポートされており、ユーザーが見つかります | 証明書ログインはサポートされていますが、ユーザーが見つかりません | 証明書ログインは正常に行われます |
証明書ログインはサポートされていますが、ユーザーが見つかりません | 証明書ログインがサポートされており、ユーザーが見つかります | 証明書ログインは正常に行われます |
証明書ログインはサポートされていますが、ユーザーが見つかりません | 証明書ログインはサポートされていますが、ユーザーが見つかりません | PasswordCheckFailedException が発生します |