ここでは、基本構成に以下のタイプのセキュリティーを追加する方法について説明します。
- Secure Socket Layer (SSL) サーバー認証
- 暗号化
- ディジタル署名
ここでは、IKEYMAN ツールを使用して、Partner Two が AS2 文書を HTTPS で送信できるようにサーバー認証を設定します。
サーバー認証を設定するには、以下のステップを実行します。
- C:¥ProgramFiles¥IBM¥WBIConnect¥receiver¥bin から ikeyman.bat ファイルを開き、IKEYMAN アプリケーションを始動します。
- Receiver のデフォルトの鍵ストア receiver.jks を開きます。メニュー・バーから、「鍵データベース・ファイルのオープン (Key Database File Open)」を選択します。デフォルトのインストールでは、receiver.jks は以下のディレクトリーにあります。
¥WBIConnect¥common¥security¥keystore
- プロンプトが出されたら、receiver.jks のデフォルトのパスワードを入力します。パスワードは WebAS です。
- ここでは receiver.jks を初めて開いたと想定しているので、ダミーの証明書を削除します。
次に、自己署名証明書を新規作成します。自己署名個人証明書を作成すると、サーバーの鍵ストア・ファイル内に秘密鍵と公開鍵が作成されます。
自己署名証明書を新規作成するには、以下のステップを実行します。
- 「新規自己署名 (New Self Signed)」をクリックします。
- この証明書に、鍵ストア内で証明書を一意的に識別するための鍵ラベルを付けます。ここでは selfSignedCert というラベルを使用します。
- サーバーの共通名を入力します。これは、その証明書の基本的な共通 ID であり、その証明書が表すプリンシパルを一意的に識別するものでなければなりません。
- 所属する組織名を入力します。
- その他のデフォルトをすべて受け入れて、「OK」をクリックします。
Partner Two は、セキュア HTTP を使用して、AS2 で EDI メッセージを送信したいとします。これを行うには、Partner Two が公開証明書 (前のステップで、自己署名証明書を作成した際に作成したもの) を参照する必要があります。
Partner Two が公開証明書を使用できるようにするには、以下のステップを実行して、サーバーの鍵ストア・ファイルから公開証明書をエクスポートします。
- IBM 鍵管理ツールから、新規作成した自己署名証明書を選択します。
- 「証明書の抽出 (Extract Certificate)」をクリックします。
- データ型を「バイナリー DER データ (Binary DER data)」に変更します。
- ファイル名として partnerOnePublic を指定し、「OK」をクリックします。
最後に、IKEYMAN を使用して、自己署名証明書と秘密鍵のペアを PKCS12 ファイルの形式でエクスポートします。この PCKS12 ファイルは、後述の暗号化で使用します。
自己署名証明書と秘密鍵のペアをエクスポートするには、以下のステップを実行します。
- 「エクスポート/インポート」をクリックします。
- 鍵ファイルのタイプを「PKCS12」に変更します。
- ファイル名として partnerOnePrivate を指定し、「OK」をクリックします。
- ターゲットの PKCS12 ファイルをプロテクトするためのパスワードを入力します。パスワードを確認し、「OK」をクリックします。
注: これらの変更内容を有効にするには、Receiver を一旦停止して再始動します。
入力したパスワードは、後でこの秘密証明書をハブにインポートする際に使用します。
また、Partner Two で、証明書のインポートや AS2 文書の送信先アドレスの変更などの構成ステップを実行する必要もあります。例えば、Partner Two でアドレスを以下のように変更する必要があるとします。
https://<IP_Address>:57443/bcgreceiver/submit
ここで、<IP_Address> はハブを表します。
これで、Partner Two がセキュア HTTP で文書を送信する際に、Receiver のデフォルトの鍵ストアに格納された自己署名証明書が Partner Two に提示されるようになります。
逆の状態を設定するには、Partner Two がハブに .der ファイル形式の SSL キー (この場合は partnerTwoSSL.der) を提示する必要があります。また、Partner Two で必要に応じて、HTTPS トランスポートで文書を受信できるように構成を変更してください。
Partner Two の partnerTwoSSL.der ファイルは、ルート証明書として Hub Operator のプロファイルにロードします。ルート証明書とは、証明書チェーンの確立時に利用する認証機関 (CA) から発行される証明書をいいます。この例では、PartnerTwo が生成した証明書がルート証明書としてロードされ、これにより、ハブが送信者を認識および信頼できるようになります。
partnerTwoSSL.der をハブにロードするには、以下のステップを実行します。
- メインメニューから、「アカウント管理」>「プロファイル」>「コミュニティー参加者」をクリックします。
- 「検索」をクリックします。
- 虫メガネのアイコンをクリックして、Hub Operator を選択します。
- 「証明書」をクリックし、次に「証明書のロード」をクリックします。
- 「証明書タイプ」を「ルート証明書」に設定します。
- 「説明」の内容を Partner Two SSL Certificate に変更します。
- 「状況」を「使用可能」に設定します。
- 「参照」をクリックし、partnerTwoSSL.der の保存先ディレクトリーに移動します。
- 証明書を選択し、「オープン」をクリックします。
- 「アップロード」をクリックし、次に「保管」をクリックします。
セキュア HTTP を使用するように Partner Two のゲートウェイを変更します。
- 水平ナビゲーション・バーから、「アカウント管理」>「プロファイル」> 「コミュニティー参加者」をクリックします。
- 「検索」をクリックし、次に虫メガネのアイコンをクリックして Partner Two を選択します。
- 水平ナビゲーション・バーから「ゲートウェイ」をクリックします。次に、虫メガネのアイコンをクリックして、HttpGateway を選択します。
- 編集のアイコンをクリックして編集します。
- トランスポート値を HTTPS/1.1 に変更します。
- ターゲット URI の値を https://<IP_Address>:443/input/AS2 に変更します。ここで、<IP_Address> は Partner Two のマシンを表します。
- それ以外の値はすべて未変更のままで構いません。「保管」をクリックします。
ここでは、暗号化を設定するステップについて説明します。
Partner Two で、必要な構成ステップ (自己署名証明書から抽出された公開証明書のインポートなど) をすべて実行したら、ハブに送信される文書に対して暗号化を設定する必要があります。
WebSphere Business Integration Connect では、文書の暗号化を解除する際に、秘密鍵を使用します。ハブがこれを実行できるようにするには、まず自己署名証明書から抽出された秘密鍵を Community Console にロードする必要があります。Community Console に Hub Operator としてログインしてこのタスクを実行したら、証明書を自分のプロファイルにインストールしてください。
PKCS12 ファイルをロードするには、以下のステップを実行します。
- 水平ナビゲーション・バーから、「アカウント管理」>「プロファイル」> 「コミュニティー参加者」をクリックします。
- 「検索」をクリックします。
- 虫メガネのアイコンをクリックして、Hub Operator を選択します。
- 「証明書」をクリックし、次に「PKCS12 のロード」をクリックします。
- 「暗号化」の左側にあるチェック・ボックスにチェック・マークを付けます。
- 「説明」の内容を Partner One Private に変更します。
- 「使用可能」を選択します。
- 「参照」をクリックし、PKCS12 ファイル partnerOnePrivate.p12 の保存先ディレクトリーに移動します。
- このファイルを選択し、「オープン」をクリックします。
- PKCS12 ファイル用に提供されたパスワードを入力します。
- 「ゲートウェイ・タイプ」は「実動」のままにします。
- 「アップロード」をクリックし、次に「保管」をクリックします。
参加者が セキュア HTTP で暗号化トランザクションをハブに送信できるようにするための構成は、これで完了です。
次の節では、これまでの手順とは逆に、ハブがセキュア HTTP で EDI 暗号化トランザクションを送信します。
Partner Two では、文書の暗号化を解除するための鍵ペア (この例では partnerTwoDecrypt.der) を生成し、それをハブが使用できるようにする必要があります。
前述と同様に、参加者に送信されるトランザクションをハブが暗号化する際には、公開鍵を使用します。これを行うには、公開証明書をハブにロードします。
- メインメニューから、「アカウント管理」>「プロファイル」>「コミュニティー参加者」をクリックします。
- 「検索」をクリックします。
- 虫メガネのアイコンをクリックして、Partner Two を選択します。
- 水平ナビゲーション・バーから「証明書」をクリックします。
- 「証明書のロード」をクリックします。
- 「暗号化」の横にあるチェック・ボックスにチェック・マークを付けます。
- 「説明」の内容を Partner Two Decrypt に変更します。
- 「状況」を「使用可能」に設定します。
- 「参照」をクリックします。
- 暗号化解除証明書 partnerTwoDecrypt.der の保存先ディレクトリーに移動します。
- 証明書を選択し、「オープン」をクリックします。
- 「ゲートウェイ・タイプ」は「実動」のままにして、「アップロード」をクリックし、次に「保管」をクリックします。
AS2 を使用してセキュア HTTP で暗号化メッセージを送信するためのハブ構成では、最後に Partner One と Partner Two 間の参加者接続を変更します。
Community Console から参加者接続を変更するには、以下のステップを実行します。
- 水平ナビゲーション・バーから、「アカウント管理」>「プロファイル」> 「参加者の接続」をクリックします。
- 「ソース」リストから Partner One を選択します。
- 「ターゲット」リストから Partner Two を選択します。
- 「検索」をクリックします。
- ターゲットの「属性」ボタンをクリックします。
- 「接続の要約」で、「AS 暗号化」属性の現行値が「いいえ」になっていることに注意してください。「パッケージ: AS (N/A)」の横にあるフォルダーのアイコンをクリックして、この値を編集します。
注: このオプションを表示するには、画面をスクロールダウンしてください。
- リストから、「AS 暗号化」属性を「はい」に変更し、「保管」をクリックします。
WebSphere Business Integration Connect では、トランザクションやメッセージにディジタル署名をする際に、参加者の秘密鍵を使用して署名を作成します。メッセージの受信者は、送信者の公開鍵を使用して署名を検証します。WebSphere Business
Integration Connect では、ディジタル署名を使用してこれを行います。
ここでは、ディジタル署名で使用するハブと参加者の両方を構成するためのステップについて説明します。
Partner Two では、必要な構成ステップ (自己署名付きの文書 (この例では partnerTwoSigning.der) を作成するなど) をすべて実行した後、文書の署名を構成する必要があります。また、Partner Two では、partnerTwoSigning.der をハブが使用できるようにする必要もあります。
ディジタル証明書をハブにロードするには、以下のステップを実行します。
- 水平ナビゲーション・バーから、「アカウント管理」>「プロファイル」> 「コミュニティー参加者」をクリックします。
- 「検索」をクリックします。
- 虫メガネのアイコンをクリックして、Partner Two を選択します。
- 水平ナビゲーション・バーから「証明書」を選択します。
- 「証明書のロード」をクリックします。
- 「ディジタル署名」の横にあるチェック・ボックスにチェック・マークを付けます。
- 「説明」の内容を Partner One Signing に変更します。
- 「状況」を「使用可能」に設定します。
- 「参照」をクリックします。
- ディジタル証明書 partnerTwoSigning.der の保存先ディレクトリーに移動し、証明書を選択して、「開く」をクリックします。
- 「アップロード」をクリックし、次に「保管」をクリックします。
ディジタル署名の初期構成はこれで完了です。
参加者は、インポートされた公開証明書を認証機関として使用して、ハブに送信される署名付きトランザクションを認証します。
ハブは秘密鍵を使用して、参加者に送信されるアウトバウンド・トランザクションにディジタル署名をします。まずは、秘密鍵をディジタル署名に使用できるようにします。
秘密鍵をディジタル署名に使用できるようにするには、以下のステップを実行します。
- 水平ナビゲーション・バーから、「アカウント管理」>「プロファイル」> 「証明書」をクリックします。
- Hub Operator の横にある虫メガネのアイコンをクリックします。
- Partner One Private の横にある虫メガネのアイコンをクリックします。
注: これは、以前にハブにロードされた秘密証明書です。
- 編集のアイコンをクリックします。
- 「ディジタル署名」の横にあるチェック・ボックスにチェック・マークを付けます。
- 「保管」をクリックします。
次に、署名付き AS2 に対応できるように、Partner One と Partner Two 間で設定されている参加者接続の属性を変更します。
参加者接続の属性を変更するには、以下のステップを実行します。
- 水平ナビゲーション・バーから、「アカウント管理」>「プロファイル」> 「参加者の接続」をクリックします。
- 「ソース」リストから Partner One を選択します。
- 「ターゲット」リストから Partner Two を選択します。
- 「検索」をクリックします。
- Partner Two の「属性」ボタンをクリックします。
- 「パッケージ: AS (N/A)」の横にあるフォルダーのアイコンをクリックして、「AS 署名済み」属性を編集します。
- 「AS 署名済み」リストから「はい」を選択します。
- 「保管」をクリックします。
署名付きの AS2 トランザクションを WebSphere Business Integration Connect から参加者に送信するための構成はこれで完了です。
