単一ソケット・
レイヤーに対応したサーバーがクライアントの証明書を入手した後は、証明書をユーザーにマップする必要が
あります。
このタスクについて
クライアント・サイドの証明書があると、Web または Java
クライアントからセキュア・リソースにアクセスできるようになります。クライアントは、X.509 に準拠した
デジタル証明書を提示して、単一ソケット・レイヤーに対応したサーバーとの相互認証を実行します。
製品のセキュリティー・ランタイムは、関連付けられた Lightweight Directory Access Protocol (LDAP) ディレクトリーまたはカスタム・レジストリー内
の既知のユーザーへの証明書のマッピングを試みます。
証明書が正常にユーザーにマップされると、証明書の保持者が
レジストリー内のユーザーであるとみなされ、該当のユーザーとして許可されます。
LocalOS レジストリー
の場合、DN が構文解析され、最初の等号 (=) とコンマ (,) の間の名前がマップ済みの名前として使用されます。
DN に等号が含まれない場合、完全な名前が使用されます。
DN にコンマがない場合、
等号の後ろのすべてが名前として使用されます。
単一ソケット・
レイヤーに対応したサーバーがクライアントの証明書を入手した後は、証明書をユーザーにマップする必要が
あります。WebSphere Application Server は、証明書を LDAP レジストリーのエントリーにマップする手法を 2 つサポートしています。
- 正確な識別名による手法
- 証明書に記載されている属性を LDAP エントリーの属性に突
き合わせる手法
プロシージャー
- 管理コンソールを開始します。 「セキュリティー」をクリックしてから、「グローバル・セキュリティー」をクリックします。「ユーザー・レジストリー」の下の「LDAP」をクリックします。「追加プロパティー」の下で、「拡張 LDAP ユーザー・レジストリー設定」をクリックします。
- 正確な識別名 (DN) によりマップします。
この方法では、証明書の「Subject」フィールドに関連付けられた識別名 (DN) を、LDAP
ディレクトリーのエントリーにマップしようとします。マッピングに成功すると、ユーザーは認証され、LDAP ディレクトリー
の ID に認可されている特権に応じて許可されます。
「
証明書フィルター」フィールドのマッピングは、大/小文字を区別しません。
uid=$(SubjectCN)
の構文を使用します。例えば、次の 2 つの DN は、大文字と小文字を区別せずに比較すると、同じものです。
"cn=Smith, ou=NewUnit, o=NewCompany, c=us"
"cn=smith, ou=newunit, o=NewCompany, c=US"
一致したものが見つかると認証は成功し、
一致したものが見つからない場合、認証は失敗します。
- 証明書属性のフィルター操作によりマップします。
この方法では、証明書の属性が、LDAP ディレクトリー内のエントリー
の属性にマップされます。例えば、証明書の「Subject」フィールドの common name (CN) 属性
を LDAP エントリーの uid 属性に照らして突き合わせるよう指定できます。マッピングに成功すると、ユーザーは認証され、LDAP ディレクトリー
の ID に認可されている特権に応じて許可されます。
証明書の「Subject CN」フィールドを LDAP エントリーの uid 属性に突き合わせると、「
Subject DN」"cn=Smith, ou=NewUnit, o=NewCompany, c=us" をもつ証明書は uid=Smith をもつ LDAP ユーザー・エントリーと一致します。
このマッピング手法を使用するには、まず証明書マッピングを要求してから、「証明書フィルター」フィールドを使用して証明書フィルターをセットアップする必要があります。
次の作業
このように指定すると、証明書 (
Smith) の「Subject」属性から「CN」フィールドを抽出し、そのフィールドからフィルター (ユーザー ID =
Smith) を作成します。そのフィルターに一致するユーザー・エントリーがないか、LDAP ディレク
トリーが探索されます。フィルターに一致するエントリーがあると、認証は成功します。
注: LDAP ディレクトリーの検索および突き合わせは、部分的に、LDAP ディレクトリーの構成方法に基づいています。