証明書のトラブルシューティング
Microsoft BizTalk Serverでは、ドキュメントの暗号化と暗号化解除、ドキュメントの署名と検証 (否認不可) およびパーティの解決のために、公開キー 基盤 (PKI) デジタル証明書を使用できます。 このトピックでは、さまざまな認定の使用シナリオと構成オプションについて説明し、BizTalk Serverでデジタル証明書を使用するための一般的なガイドラインについて説明します。
証明書の使用シナリオと構成オプション
BizTalk Serverで証明書を使用しているときに発生するほとんどの問題は、正しくない構成または不完全な構成の結果です。 たとえば、正しい証明書を誤った証明書ストアにインポートしたり、誤った証明書を正しい証明書ストアにインポートしたり、BizTalk 管理コンソールに不適切な情報を入力したりすると、証明書の使用中に実行時エラーが発生します。
次の表は、BizTalk Serverで使用できる証明書の使用シナリオと構成オプションのリファレンスとして使用します。
証明書の使用状況 | ユーザー コンテキスト | 証明書ストアの場所 | 証明書の種類 | 使用されるパイプライン コンポーネント | BizTalk Server 管理コンソールの構成パラメーター |
---|---|---|---|---|---|
暗号化 (送信) | 送信ハンドラーに関連付けられているホスト インスタンスが使用するアカウント | S/MIME エンコーダー パイプラインをホストするBizTalk Serverを実行している各コンピューターにログオンし、暗号化証明書をローカル コンピューター \ その他のPeople ストアにインポートします。 | 取引先のパブリック証明書 | MIME/SMIME エンコーダー | - [送信ポートのプロパティ] ダイアログ ボックスの [証明書] ページで、暗号化証明書の共通名と拇印の値を指定します。 - [パイプラインの構成] ダイアログ ボックスでパイプラインエンコード オプションを指定します。 [パイプラインの構成] ダイアログ ボックスは、[送信ポートのプロパティ] ダイアログ ボックスの [全般] ページの [送信パイプライン] ドロップダウン リストの横にあるボタンをクリックすると表示されます。 |
復号化 (受信) | 受信ハンドラーに関連付けられているホスト インスタンスが使用するアカウント | S/MIME デコーダー パイプラインを各ホスト インスタンス サービス アカウントとしてホストするBizTalk Serverを実行している各コンピューターにログオンし、復号化証明書を現在のユーザー \ 個人用ストアにインポートします。 メモ:IIS 7.0 コンピューターでパイプラインの暗号化解除が成功するには、IIS アプリケーション プールのアカウントと、受信ハンドラーに関連付けられているホスト インスタンスによって使用されるアカウントが同じであり、このアカウントが machineName>\IIS_WPG グループの<メンバーであることを確認します。 IIS 7.0 の IIS プロセス ID の設定の詳細については、「 IIS のアクセス許可の問題を解決するためのガイドライン」を参照してください。 これらのプロセスは同じアカウントで実行する必要があります。これは、アカウント プロファイルが読み込まれ、それに続いてパイプラインで解読を実行するのに必要なレジストリ キーが読み込まれるようにするためです。 パフォーマンス上の理由から、IIS 6.0 では、関連付けられた w3wp.exe プロセスを開始するときにアカウント プロファイルが読み込まれないため、BizTalk Server ホスト インスタンスを同じアカウントで構成して、BizTalk Serverがアカウント プロファイルとレジストリ キーを読み込む必要があります。 | 独自のプライベート証明書 | MIME/SMIME デコーダー | - 各 [ホストのプロパティ] ダイアログ ボックスの [証明書] ページで、暗号化解除証明書の [共通名] と [拇印] の値を指定します。 - [パイプラインの構成] ダイアログ ボックスでパイプラインデコード オプションを指定します。 [パイプラインの構成] ダイアログ ボックスは、[受信場所のプロパティ] ダイアログ ボックスの [全般] ページの [受信パイプライン] ドロップダウン リストの横にあるボタンをクリックすると表示されます。 |
署名 (送信) | 送信ハンドラーに関連付けられているホスト インスタンスが使用するアカウント | S/MIME エンコーダー パイプラインを各ホスト インスタンス サービス アカウントとしてホストするBizTalk Serverを実行している各コンピューターにログオンし、署名証明書を現在のユーザー \ 個人用ストアにインポートします。 | 独自のプライベート証明書 | MIME/SMIME エンコーダー | - [BizTalk グループのプロパティ] ダイアログ ボックスの [証明書] ページで、署名証明書の [共通名] と [拇印] の値を指定します。
メモ:各BizTalk Server グループごとに指定できる署名証明書は 1 つだけです。 - [パイプラインの構成] ダイアログ ボックスでパイプラインエンコード オプションを指定します。 [パイプラインの構成] ダイアログ ボックスは、[送信ポートのプロパティ] ダイアログ ボックスの [全般] ページの [送信パイプライン] ドロップダウン リストの横にあるボタンをクリックすると表示されます。 |
署名の検証 (受信) | 受信ハンドラーに関連付けられているホスト インスタンスが使用するアカウント | S/MIME デコーダー パイプラインをホストするBizTalk Serverを実行している各コンピューターにログオンし、署名証明書をローカル コンピューター \ その他のPeople ストアにインポートします。 | 取引先のパブリック証明書 | MIME/SMIME デコーダー | - 各 [パーティのプロパティ] ダイアログ ボックスの [証明書] ページで、検証証明書の [共通名] と [拇印] の値を指定します。 - [パイプラインの構成] ダイアログ ボックスでパイプラインデコード オプションを指定します。 [パイプラインの構成] ダイアログ ボックスは、[受信場所のプロパティ] ダイアログ ボックスの [全般] ページの [受信パイプライン] ドロップダウン リストの横にあるボタンをクリックすると表示されます。 メモ:[デコード] オプションを構成するには、MIME/SMIME デコーダー コンポーネントを含むパイプラインがデプロイされている必要があります。 |
パーティの解決 (受信) | 受信ハンドラーに関連付けられているホスト インスタンスが使用するアカウント | パーティ解決が構成されているBizTalk Server コンピューターにログオンし、証明書をローカル コンピューター \ その他のPeople ストアにインポートします。 | 取引先のパブリック証明書 | パーティの解決 | - 各 [ホストのプロパティ] ダイアログ ボックスの [証明書] ページで、証明書の [共通名] と [拇印] の値を指定します。 - [パイプラインの構成] ダイアログ ボックスで ResolveParty オプションを指定します。 [パイプラインの構成] ダイアログ ボックスは、[受信場所のプロパティ] ダイアログ ボックスの [全般] ページの [受信パイプライン] ドロップダウン リストの横にあるボタンをクリックすると表示されます。 メモ: このオプションを構成するには、 パーティ解決 コンポーネントを含むパイプラインを使用する必要があります。 XMLReceive パイプラインには、パーティ解決コンポーネントが含まれています。 |
HTTPS (送信) | 送信ハンドラーに関連付けられているホスト インスタンスが使用するアカウント | SSL 通信では、クライアント証明書は必要ありません。 クライアント証明書が必要かどうかは、送信先の Web サーバーの管理者が決定します。 送信先の Web サーバーがクライアント証明書を要求する場合は、次の手順を実行します。 - 取引先から公開証明書を取得します。 - 送信ハンドラーに関連付けられているホスト インスタンスによって使用されるアカウントとして、BizTalk Serverを実行している各コンピューターにログオンします。 - 証明書を 現在のユーザー \ 個人用 ストアにインポートします。 Windows Server 2008 Certificate Services Web ページを使用して証明書を取得する方法については、「Web 経由で証明書を要求する」を参照してください。 |
取引先のパブリック証明書 | NA |
-
HTTP トランスポート - [HTTP トランスポートのプロパティ] ダイアログ ボックスの [認証] タブで、SSL クライアント証明書の拇印オプションを設定します。 [HTTP トランスポートのプロパティ] ダイアログ ボックスは、[送信ポートのプロパティ] ダイアログ ボックスの [全般] ページの [構成] ボタンをクリックすると表示されます。 - SOAP トランスポート - [SOAP トランスポートのプロパティ] ダイアログ ボックスの [全般] タブで[クライアント証明書の拇印] オプションを設定します。 [SOAP トランスポートのプロパティ] ダイアログ ボックスは、[送信ポートのプロパティ] ダイアログ ボックスの [全般] ページの [構成] ボタンをクリックすると表示されます。 |
[ローカル コンピューター] と [現在のユーザー] の [証明書] 管理コンソール インターフェイスを表示するには、次の手順を実行します。
[スタート] ボタンをクリックし、[実行] をクリックし、「MMC」と入力し、[OK] をクリックして Microsoft 管理コンソールを開きます。
[ ファイル ] メニューをクリックし、[ スナップインの追加と削除 ] をクリックして、[ スナップインの追加と削除 ] ダイアログ ボックスを表示します。
使用可能なスナップインの一覧から [ 証明書 ] を選択し、[ 追加] をクリックします。
[ コンピューター アカウント] を選択し、[ 次へ] をクリックし、[完了] をクリック します。 これにより、ローカル コンピューターの証明書管理コンソール インターフェイスが追加されます。
スナップインの一覧から [証明書] が引き続き選択されていることを確認し、もう一度 [ 追加 ] をクリックします。
[ マイ ユーザー アカウント ] を選択し、[完了] をクリック します。 これにより、現在のユーザーの証明書管理コンソール インターフェイスが追加されます。
Note
現在ログオンしているアカウントの 証明書管理コンソール が表示されます。 サービス アカウントの個人証明書ストアに証明書をインポートする必要がある場合は、最初にサービス アカウントの資格情報を使用してログオンしてください。
[スナップインの追加と削除] ダイアログ ボックスの [OK] ボタンをクリックします。
一般的なガイドライン
インポートされた証明書が目的に使用されていることを確認します。これを行うには、証明書管理コンソール インターフェイスで証明書をダブルクリックし、[証明書] ダイアログ ボックスの [詳細] タブをクリックします。 次に、[表示] ドロップダウン リストの [すべて] オプションをクリックし、[キー使用法] フィールドまたは [拡張キー使用法] フィールドをクリックして目的を確認します。 BizTalk Serverが目的以外の目的で証明書を使用しようとすると、ランタイム エラーが発生します。
ターゲット Web サイトへの接続をテストする: SSL を使用している場合は、HTTP または SOAP トランスポートを使用してターゲット Web サイトに接続する前に、インターネット エクスプローラーを使用してターゲット Web サイトに接続できることを確認します。 ターゲット Web サイトに接続するときに、インターネット エクスプローラーにダイアログ ボックスが表示されていないことを確認します。 BizTalk Serverには、ターゲット Web サイトへの接続時に表示される可能性のあるダイアログ ボックスとのインターフェイスを設定するためのメカニズムはありません。 ターゲット Web サイト名が SSL 証明書の Web サイトに指定された名前と一致しない場合、または SSL 証明書のルート証明機関が適切な信頼されたルート証明機関ストアにない場合は、インターネット エクスプローラーによってダイアログ ボックスが表示されることがあります。
SSL 診断ツールを使用して、SSL 接続の問題を分析します。 SSL 診断ツールは、IIS Diagnostics Toolkit のオプション コンポーネントです。 詳細については、「 IIS 診断ツール」を参照してください。
証明書が有効であることを確認します。 BizTalk Server、証明書の有効期限が切れているかどうかを確認するメッセージは表示されません。 代わりに、BizTalk Serverはメッセージを中断します。