[AIX、Linux、Windows]

Online Certificate Status Protocol (OCSP) の使用

IBM® MQ は、使用する Online Certificate Status Protocol (OCSP) 応答側を判別し、受信した応答を処理します。 OCSP 応答側をアクセス可能にするための手順を実行しなければならない場合があります。

認証情報オブジェクトには、TLS 証明書が取り消されたかどうかを確認するときに使用される認証情報が含まれます。
注: この情報は、 IBM MQ for AIX®, Linux®, and Windows システムにのみ適用されます。 以下の表は、さまざまなプラットフォームでの IBM MQ TLS 認証情報のサポートを示しています。
表 1. IBM MQ TLS がさまざまなプラットフォームで認証情報をサポートする方法
プラットフォーム サポート
[AIX、Linux、Windows]IBM MQ for AIX, Linux, and Windows IBM MQ TLS サポートにより、OCSP を使用して、または LDAP サーバー上の CRL と ARL を使用して、取り消された証明書がないか検査されます。優先される方式は OCSP です。 IBM MQ classes for Java は、クライアント・チャネル定義テーブル・ファイル内の OCSP 情報を使用できません。 ただし、 失効した証明書および OCSPの説明に従って OCSP を構成することができます。
[z/OS]IBM MQ for z/OS® IBM MQ TLS サポートは、LDAP サーバー上の CRL と ARL のみを使用して、取り消された証明書を検査します。 IBM MQ for z/OS システムは OCSP を使用できません。
[IBM i]IBM MQ for IBM i IBM MQ TLS サポートは、LDAP サーバー上の CRL と ARL のみを使用して、取り消された証明書を検査します。 IBM MQ for IBM i システムは OCSP を使用できません。
IBM MQ は、OCSP を使用してデジタル証明書の失効状況を検査するために、以下の 2 つの方法のいずれかで、どの OCSP レスポンダーに接続するかを決定します。
  • 検査される証明書で AuthorityInfoAccess (AIA) 証明書拡張を使用する。
  • 認証情報オブジェクトに指定された URL、またはクライアント・アプリケーションによって指定された URL を使用する。

認証情報オブジェクトに指定された URL、またはクライアント・アプリケーションによって指定された URL は、AIA 証明書拡張内の URL に優先します。

OCSP 応答側の URL は、ファイアウォールの向こう側にある場合があります。その場合、ファイアウォールを再構成して、OCSP 応答側にアクセスできるようにするか、OCSP プロキシー・サーバーをセットアップします。 SSL スタンザで SSLHTTPProxyName 変数を使用して、プロキシー・サーバーの名前を指定します。 クライアント・システム上では、環境変数 MQSSLPROXY を使用することによっても、プロキシー・サーバー名を指定できます。

テスト環境で実行しているなどの理由で、TLS 証明書が失効してもかまわない場合には、SSL スタンザの OCSPCheckExtensions を NO に設定できます。 この変数を設定すると、AIA 証明書拡張が無視されます。 この解決方法は、実稼働環境では、ほとんどの場合に不適切です。実稼働環境では、失効した証明書を提示するユーザーからのアクセスは許可できないからです。

OCSP 応答側にアクセスするための呼び出しは、次の 3 つの結果のいずれかを返します。
良好
証明書は有効です。
失効
証明書は取り消されています。
不明
この結果になるのは、次の 3 つのうちのいずれかが原因です。
  • IBM MQ が OCSP レスポンダーにアクセスできません。
  • OCSP レスポンダーが応答を送信しましたが、 IBM MQ は応答のデジタル署名を検証できません。
  • OCSP 応答側が、その証明書に関する取り消しデータを保持していないことを示す応答を送信した。

デフォルトでは、 IBM MQUnknownという OCSP 応答を受信すると接続を拒否し、エラー・メッセージを発行します。 この動作は、OCSPAuthentication 属性を設定することにより変更できます。 これは、AIX and Linux システム用 qm.ini ファイルの SSL スタンザ、WebSphere® レジストリー、またはクライアント構成ファイルの SSL スタンザで保持されます。 これは、該当するプラットフォームで IBM MQ Explorer を使用して設定できます。

OCSP 結果「不明

「不明」という OCSP 結果を受信した場合の IBM MQ の動作は、OCSPAuthentication 属性の設定値によって決まります。 キュー・マネージャーの場合、この属性は AIX and Linux システムの qm.ini ファイルの SSL スタンザ、または Windows レジストリーに保持され、IBM MQ Explorer を使用して設定することができます。 クライアントでは、これはクライアント構成ファイルの SSL スタンザに保持されます。

OCSPAuthentication が REQUIRED (デフォルト値) に設定されている場合に「 不明 」という結果を受信すると、 IBM MQ は接続を拒否し、タイプ AMQ9716のエラー・メッセージを発行します。 キュー・マネージャーの SSL イベント・メッセージが有効な場合、ReasonQualifier が MQRQ_SSL_HANDSHAKE_ERROR に設定された、タイプ MQRC_CHANNEL_SSL_ERROR の SSL イベント・メッセージが生成されます。

OCSPAuthentication が OPTIONAL に設定されている場合に「 不明 」という結果を受信すると、 IBM MQ は SSL チャネルの開始を許可し、警告または SSL イベント・メッセージは生成されません。

OCSPAuthentication が WARN に設定されている場合に Unknown の結果を受信すると、SSL チャネルは開始しますが、 IBM MQ はエラー・ログにタイプ AMQ9717 の警告メッセージを発行します。 キュー・マネージャーの SSL イベント・メッセージが有効になっている場合、タイプが MQRC_CHANNEL_SSL_WARNING で ReasonQualifier が MQRQ_SSL_UNKNOWN_REVOCATION に設定された SSL イベント・メッセージが生成されます。

OCSP 応答のデジタル署名

OCSP 応答側は、3 つ方法のいずれかでその応答に署名することができます。 応答側からは、使用する方法が通知されます。
  • OCSP 応答に、検査中の証明書を発行した同一の CA 証明書を使用してデジタル署名を付加できます。 この場合、追加の証明書をセットアップする必要はありません。SSL 接続を確立するために既に実行したステップで OCSP 応答を検証できます。
  • OCSP 応答に、検査中の証明書を発行した同一の CA で署名された別の証明書を使用してデジタル署名を付加できます。 この場合、OCSP 応答と一緒に署名証明書が送信されます。 そのため、OCSP 応答側から送信される証明書では、信頼されるように、ExtendedKeyUsage 拡張が id-kp-OCSPSigning に設定されていなければなりません。 OCSP 応答は、署名された証明書と一緒に送信される (さらに、SSL 接続のために既に信頼されている CA によって証明書が署名されている) ため、追加の証明書のセットアップは必要ありません。
  • OCSP 応答に、検査中の証明書に直接関係のない別の証明書を使用して、デジタル署名を付加できます。 この場合、OCSP 応答は OCSP 応答側自体によって発行された証明書によって署名されます。 OCSP 検査を実行するクライアントまたはキュー・マネージャーの鍵データベースに、OCSP 応答側証明書のコピーを追加する必要があります。 鍵リポジトリーへの CA 証明書 (または自己署名証明書の CA 部分) の追加を参照してください。 CA 証明書が追加される場合、デフォルトで、このコンテキストで必要な設定であるトラステッド・ルートとして追加されます。 この証明書が追加されていない場合、 IBM MQ は OCSP 応答のデジタル署名を検証できず、OCSP チェックの結果が 「不明」 になります。OCSPAuthentication の値によっては、 IBM MQ がチャネルを閉じる可能性があります。