![]() |
![]() |
||
クライアントの認証 (Authenticating clients)IBM HTTP Server は、クライアント証明書情報に基づいた、3 つのレベルのクライアント認証と
2 つのタイプのアクセス制御をサポートしています。このセクションには、希望のクライアント認証レベルとアクセス制御タイプの
設定に関する情報と、関連する注
クライアント認証レベルの設定クライアント認証のレベルは、次のような SSLClientAuth ディレクティブで設定します。 2 番目の引き数 crl を追加すると、証明書取り消しリストを使用できます。 例: SSLClientAuth 1 crl >「必須」レベルの選択「必須」レベルのクライアント認証を選択すると、セキュア・サーバーは HTTPS 要求を行っているすべてのクライアントに証明書を要求します。 サーバーは、ローカルの鍵のデータベースにあるトラステッド認証局ルート証明書 を調べて、 クライアントの妥当性を検査します。 トラステッド認証局 (CA) ルート証明書とは、ユーザーのサーバーでトラステッド CA として指定されている 認証局によって署名された証明書のことです。 サーバーはクライアントが有効な証明書をもっている場合に、セキュア・コネクションを確立します。 クライアントが期限切れの証明書を持っていたり、サーバーでトラステッド CA (認証局) として指定されていない CA がその証明書を署名している場合、サーバーはその要求を拒否します。 |
|||
![]() |
SSL クライアント認証により、ネットワーク・トラフィックは増加します。 |
||
「オプション」レベルの選択クライアント認証の「オプション」レベルを選択すると、サーバーはクライアント証明書を要求します。 クライアントが証明書を提供しない場合でも、サーバーはセキュア・コネクションを確立します。 クライアントが期限切れの証明書を示したり、サーバーでトラステッド CA (認証局) として指定されていない CA がその証明書を署名している場合、サーバーはその要求を拒否します。 |
|||
![]() |
SSL クライアント認証により、ネットワーク・トラフィックは増加します。 |
||
「なし」の選択「なし」を選択すると、セキュア・サーバーはクライアントに証明書を要求しません。 アクセス制御タイプの設定アクセス制御のタイプは、SSLFakeBasicAuth または SSLClientAuthRequire ディレクティブで設定します。 |
|||
![]() |
SSLClientAuthRequire ディレクティブの方が、クライアント認証によく使われるタイプです。 |
||
SSLFakeBasicAuth ディレクティブSSLFakeBasicAuth ディレクティブの使用はお勧めしません。 Apache SSL コード、または mod_ssl および Apache で使用するために生成されるパスワード・ファイルは、 識別名の形式が異なるため、IBM HTTP Server では使用できません。 SSLFakeBasicAuth タイプは、クライアント認証の単純な方法を提供するものです。SSLFakeBasicAuth を指定すると、クライアント証明書の識別名とパスワード ("password") は Base64 でエンコードされて許可ヘッダーに入れられます。 mod_ibm_ssl モジュールをモジュール・リストの最初に入れて、以後の認証モジュールが使用可能な偽の基本認証ユーザー ID とパスワードを持つようにしてください。 指定された仮想ホスト内でサポートされる基本認証は、ユーザーが提供したユーザー ID とパスワードが クライアントの識別名とパスワード password で上書きされるため、機能しません。 クライアント証明書から識別名を表示するには、CGI プログラムを作成して SSL_CLIENT_DN 環境変数を印刷してください。 SSLClientAuthGroup ディレクティブこのディレクティブによって、特定のクライアント証明書属性の論理ストリングを指定し、 それらを 1 つの単位として一緒にグループにまとめることができます。この機能によって、特定のクライアント証明書属性のセットでそのサーバー上の複数のオブジェクトにアクセスすることができます。 構文は SSLCLientAuthGroup (名前 ) (式 ) です。 比較をグループ化するには括弧を使用してください。 属性の値に英数字以外の文字が入っている場合には、その値を引用符で区切ってください。 有効な属性は次のとおりです。 CommonName Country Email Group IssuerCommonName IssuerCountry IssuerEmail IssuerLocality IssuerOrg IssuerOrgUnit IssuerStateOrProvince Locality Org OrgUnit StateOrProvince 以下のショート・ネームも有効です。 CN、C、E、G、ICN、IC、IE、IL、IO、IOU、IST、L、O、OU、ST SSLClientAuthRequire ディレクティブさらに拡張された SSLClientAuthRequire サポートでは、 Web マスターが x509 属性の入った論理式を定義することができます。これらの論理式と クライアント証明書情報を比較して、オブジェクトのアクセスを決定します。 処理の前に、GSK がクライアント証明書を検証して、トラステッド認証局がその証明書を署名したことを確認します。 SSLClientAuthRequire ディレクティブを使用すると、Web マスターが AND、OR、 および NOT で連結された属性検査から成る論理式を作成することができます。 括弧も使用できます。たとえば次のように指定します。 SSLClientAuthRequire (CommonName = "Fred Smith" OR CommonName = "John Deere") AND Org = IBMこれは、共通名が Fred Smith または John Deere で、組織が IBM であるクライアント証明書だけが オブジェクトにアクセスできることを意味します。 属性検査で、唯一有効な比較は equal と not equal (= および !=) です。 各属性検査は、AND、OR、または NOT (&&、||、および !) で連結できます。 1 つのリソースに対して複数の SSLClientAuthRequire ディレクティブを指定すると、 そのリソースは Boolean AND 演算子がそれらの値を連結したように振る舞います。 比較をグループ化するには括弧を使用してください。 属性の値に英数字以外の文字が入っている場合には、その値を引用符で区切ってください。 有効な属性は次のとおりです。 CommonName Country Email IssuerCommonName IssuerCountry IssuerEmail IssuerLocality IssuerOrg IssuerOrgUnit IssuerStateOrProvince Locality Org OrgUnit StateOrProvince 以下のショート・ネームも有効です。 CN、C、E、ICN、IC、IE、IL、IO、IOU、IST、L、O、OU、ST
(トップに戻る) |