MobileFirst Server 鍵ストアの構成
improve this page | report issue概説
鍵ストアは、ネットワーク・トランザクションの関与者の妥当性を検証および認証するための、セキュリティー鍵および証明書のリポジトリーです。 MobileFirst Server 鍵ストアは、MobileFirst Server インスタンスの ID を定義し、OAuth トークンおよびダイレクト・アップデート・パッケージにデジタル署名するために使用します。 さらに、アダプターが相互 HTTPS (SSL) 認証を使用してバックエンド・サーバーと通信する際も、鍵ストアを使用して MobileFirst Server インスタンスの SSL クライアント ID を検証します。
実動レベルのセキュリティーのために、開発から実動への移行時に、管理者は、ユーザー定義の鍵ストアを使用するように MobileFirst Server を構成する必要があります。 デフォルトの MobileFirst Server 鍵ストアは、開発中にのみ使用するためのものです。
注
- 鍵ストアを使用してダイレクト・アップデート・パッケージの認証性を検証するには、鍵ストアで定義された MobileFirst Server ID の公開鍵にアプリケーションを静的にバインドします。 クライアント・サイドでのセキュア・ダイレクト・アップデートの実装を参照してください。
- 実動後の MobileFirst Server 鍵ストアの再構成については、慎重な検討が必要です。 構成の変更により、以下の影響が考えられます。
- クライアントが、以前の鍵ストアで署名されたトークンの代わりに、新しい OAuth トークンを取得することが必要になる場合があります。 ほとんどの場合、このプロセスはアプリケーションでは認識されません。
- クライアント・アプリケーションが、新しい鍵ストア構成の MobileFirst Server ID に一致しない公開鍵にバインドされている場合、ダイレクト・アップデートは失敗します。 更新を引き続き取得するには、アプリケーションをその新しい公開鍵にバインドし、アプリケーションをリパブリッシュする必要があります。 あるいは、アプリケーションがバインドされている公開鍵に一致するように、鍵ストア構成を再度変更します。 クライアント・サイドでのセキュア・ダイレクト・アップデートの実装を参照してください。
- 相互 SSL 認証について、アダプターで構成されている SSL クライアント ID の別名とパスワードが新しい鍵ストアにない場合、またはそれらが SSL 証明書に一致しない場合、SSL 認証は失敗します。 以下の手順のステップ 2 でアダプター構成情報を参照してください。
セットアップ
-
MobileFirst Server の ID を定義した鍵ペアを含む Java 鍵ストア (JKS) ファイルまたは PKCS 12 鍵ストア・ファイルを別名で作成します。 該当の鍵ストア・ファイルが既にある場合は、次のステップにスキップします。
注: この別名による鍵ペアのアルゴリズムのタイプは、RSA でなければなりません。 以下の説明は、keytool ユーティリティーを使用する場合に、アルゴリズムのタイプを RSA に設定する方法を示しています。
鍵ストア・ファイルの作成には、サード・パーティー・ツールを使用できます。 例えば、以下のコマンドで Java keytool ユーティリティーを実行することで、JKS 鍵ストア・ファイルを生成できます (ここで、
<keystore name>
は鍵ストアの名前、<alias name>
は選択した別名です)。keytool -keystore <keystore name> -genkey -alias <alias name> -keylag RSA
以下のサンプル・コマンドでは、
my_alias
という別名で JKS ファイル my_company.keystore を生成します。keytool -keystore my_company.keystore -genkey -alias my_alias -keyalg RSA
ユーティリティーによって、鍵ストア・ファイルと別名のパスワードなど、さまざまな入力パラメーターの指定が求められます。
注: 必ず
-keyalg RSA
オプションを設定して、生成後の鍵アルゴリズムのタイプを、デフォルトの DSA ではなく RSA に設定してください。アダプターとバックエンド・サーバーの間の相互 SSL 認証に鍵ストアを使用するには、Mobile Foundation SSL クライアント ID の別名も鍵ストアに追加します。 これを行うは、MobileFirst Server ID の別名で鍵ストア・ファイルを作成する場合と同じ方法を使用できますが、代わりに、SSL クライアント ID の別名とパスワードを指定します。
-
鍵ストアを使用するように MobileFirst Server を構成します。 次の手順に従って、鍵ストアを使用するように MobileFirst Server を構成します。
-
JavaScript アダプター MobileFirst Operations Console ナビゲーション・サイドバーで、「ランタイム設定」を選択し、次に「鍵ストア」タブを選択します。 このタブの手順に従って、ユーザー定義の MobileFirst Server 鍵ストアを構成します。 このステップでは、鍵ストア・ファイルをアップロードし、そのタイプを指示して、 鍵ストア・パスワード、MobileFirst Server ID 別名の名前、および別名パスワードを指定します。 正常に構成されると、「状況」が「ユーザー定義」に変わり、それ以外の場合はエラーが表示され、状況は「デフォルト」のままになります。 SSL クライアント ID 別名 (使用された場合) とそのパスワードは、
<connectionPolicy>
エレメントの<sslCertificateAlias>
サブエレメントおよび<sslCertificatePassword>
サブエレメント内で、関連アダプターの記述子ファイルに構成されます。 HTTP アダプター connectionPolicy エレメントを参照してください。 -
Java アダプター Java アダプターの相互 SSL 認証を構成するには、サーバーの鍵ストアを更新する必要があります。 これは、以下の手順に従って行うことができます。
-
鍵ストア・ファイルを
<ServerInstallation>/mfp-server/usr/servers/mfp/resources/security
にコピーします。 -
server.xml
ファイル<ServerInstallation>/mfp-server/usr/servers/mfp/server.xml
を編集します。 -
適切なファイル名、パスワード、およびタイプを使用して、鍵ストア構成を更新します。
<keyStore id=“defaultKeyStore” location=<Keystore name> password=<Keystore password> type=<Keystore type> />
-
-
IBM Cloud 上の Mobile Foundation サービス使用してデプロイする場合は、サーバーをデプロイする前に、「詳細設定」の下の鍵ストア・ファイルをアップロードできます。
▲