(57)【要約】【課題】複数の仮想環境を構築する情報処理装置において、当該複数の仮想環境における検証用証明書の管理を比較的容易に行うことが可能な技術を提供する。【解決手段】ＭＦＰ１０は、第１の仮想環境５０に設けられる証明書保管部５２と第２の仮想環境７０に設けられる証明書保管部７２とを備える。証明書保管部５２には、第１のサーバ証明書（第１の仮想環境５０での第１のアプリケーション５１の実行に際して外部サーバから送信されてくる）を検証するための検証用証明書Ｃ１が保管される。証明書保管部７２には、第２サーバ証明書（第２の仮想環境７０での第２のアプリケーション７１の実行に際して当該外部サーバから送信されてくる）を検証するための検証用証明書Ｃ２が保管され得る。ＭＦＰ１０の証明書管理部３０は、証明書保管部５２等から取得した検証用証明書Ｃ１を検証用証明書Ｃ２として証明書保管部７２に自動的に格納する。【選択図】図６
2019075656.tif 000002
【特許請求の範囲】
【請求項１】
複数の仮想環境を構築する情報処理装置であって、
前記複数の仮想環境のうちの第１の仮想環境に設けられる第１の保管手段であって、前記第１の仮想環境における第１のアプリケーションの実行に際して外部サーバから送信されてくる第１のサーバ証明書を検証するための第１の検証用証明書を保管する第１の保管手段と、
前記複数の仮想環境のうちの第２の仮想環境に設けられる第２の保管手段であって、前記第２の仮想環境における第２のアプリケーションの実行に際して前記外部サーバから送信されてくる第２のサーバ証明書を検証するための第２の検証用証明書を保管することが可能な第２の保管手段と、
前記第１の保管手段から或いは前記第１の保管手段以外から前記第１の検証用証明書を取得し、前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に自動的に格納する証明書管理手段と、
前記第１の仮想環境にて動作する第１の検証処理手段であって、前記第１の保管手段に保管される前記第１の検証用証明書を用いて前記第１のサーバ証明書を検証する第１の検証処理手段と、
前記第２の仮想環境にて動作する第２の検証処理手段であって、前記第２の保管手段に保管される前記第２の検証用証明書を用いて前記第２のサーバ証明書を検証する第２の検証処理手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記証明書管理手段は、前記第１のアプリケーションのインストールに際して、前記第１の保管手段の外部から前記第１の検証用証明書を取得し、取得された前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に自動的に格納することを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置において、
前記証明書管理手段は、前記第１のアプリケーションのインストールに際して、前記第１のアプリケーションのインストール用データに埋め込まれていた前記第１の検証用証明書を取得し、取得された前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に自動的に格納することを特徴とする情報処理装置。
【請求項４】
請求項２または請求項３に記載の情報処理装置において、
前記証明書管理手段は、前記第１のアプリケーションのインストールに際して、前記第１の保管手段の外部から取得された前記第１の検証用証明書を前記第１の保管手段に格納するとともに、取得された当該第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に格納することを特徴とする情報処理装置。
【請求項５】
請求項１に記載の情報処理装置において、
前記情報処理装置は、
前記第２の仮想環境にて保管されるべき検証用証明書の送信要求を前記証明書管理手段に対して付与する送信要求手段、
をさらに備え、
前記証明書管理手段は、前記送信要求に応答して、前記証明書管理手段が設けられている仮想環境と同一の仮想環境に保管されていた前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に格納することを特徴とする情報処理装置。
【請求項６】
請求項５に記載の情報処理装置において、
前記送信要求手段は、前記第２の仮想環境のアップデート処理が行われた後において、前記送信要求を付与することを特徴とする情報処理装置。
【請求項７】
請求項５に記載の情報処理装置において、
前記送信要求手段は、前記第２のアプリケーションのアップデート処理が行われた後において、前記送信要求を付与することを特徴とする情報処理装置。
【請求項８】
請求項５に記載の情報処理装置において、
前記送信要求手段は、前記第２の仮想環境のバックアップ処理にて生成されたバックアップデータを用いた復元処理が行われた後において、前記送信要求を付与することを特徴とする情報処理装置。
【請求項９】
請求項１に記載の情報処理装置において、
前記第１の検証用証明書の有効期限切れを検出する検出手段と、
前記有効期限切れが検出された場合、前記第１の検証用証明書の更新要求を前記外部サーバに送信する更新要求手段と、
をさらに備え、
前記証明書管理手段は、前記更新要求に応じて返信されてきた更新後の第１の検証用証明書を前記第１の保管手段に格納するとともに、前記更新後の前記第１の検証用証明書を前記第２の保管手段にも格納することを特徴とする情報処理装置。
【請求項１０】
請求項１に記載の情報処理装置において、
前記証明書管理手段は、前記第１の保管手段に予め格納されている前記第１の検証用証明書を取得し、前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に自動的に格納することを特徴とする情報処理装置。
【請求項１１】
請求項１に記載の情報処理装置において、
前記証明書管理手段は、前記第１の仮想環境に設けられることを特徴とする情報処理装置。
【請求項１２】
請求項１に記載の情報処理装置において、
前記証明書管理手段は、前記第２の仮想環境あるいは前記複数の仮想環境のうちの第３の仮想環境に設けられることを特徴とする情報処理装置。
【請求項１３】
請求項１２に記載の情報処理装置において、
前記証明書管理手段は、
前記第１の検証用証明書を保管することが可能な第３の保管手段、
を有し、
前記情報処理装置は、
前記第１の仮想環境に設けられる転送手段であって、前記第１の検証用証明書を前記第３の保管手段に転送して格納させる転送手段、
をさらに備え、
前記証明書管理手段は、前記第３の保管手段に格納された前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に転送して前記第２の保管手段に格納させることを特徴とする情報処理装置。
【請求項１４】
請求項１から請求項１３のいずれかに記載の情報処理装置において、
前記複数の仮想環境は、同一ホストＯＳ上の複数のゲストＯＳでそれぞれ動作する複数の仮想マシン環境を含むことを特徴とする情報処理装置。
【請求項１５】
請求項１から請求項１３のいずれかに記載の情報処理装置において、
前記複数の仮想環境は、同一ホストＯＳ上の複数のコンテナでそれぞれ動作する複数の仮想コンテナ環境を含むことを特徴とする情報処理装置。
【請求項１６】
請求項１から請求項１３のいずれかに記載の情報処理装置において、
前記複数の仮想環境は、同一ホストＯＳ上の複数のミドルウエアでそれぞれ動作する複数のソフトウエア実行環境を含むことを特徴とする情報処理装置。
【請求項１７】
複数の仮想環境が構築される情報処理装置の制御方法であって、
ａ）前記複数の仮想環境のうちの第１の仮想環境にて第１のアプリケーションを実行する際に外部サーバから送信されてくるサーバ証明書である第１のサーバ証明書を、前記第１の仮想環境に設けられた第１の保管手段に保管される第１の検証用証明書を利用して検証するステップと、
ｂ）前記第１の保管手段から或いは前記第１の保管手段以外から前記第１の検証用証明書を取得するステップと、
ｃ）前記複数の仮想環境のうちの第２の仮想環境にて第２のアプリケーションを実行する際に前記外部サーバから送信されてくるサーバ証明書である第２のサーバ証明書を、前記第２の仮想環境に設けられた第２の保管手段に保管される第２の検証用証明書を利用して検証するステップと、
ｄ）前記ステップｃ）に先立って、前記ステップｂ）にて取得された前記第１の検証用証明書を、前記第２の検証用証明書として、前記第２の仮想環境に設けられる前記第２の保管手段に自動的に格納するステップと、
を備えることを特徴とする制御方法。
【請求項１８】
請求項１７に記載の制御方法において、
前記ステップｂ）において、前記第１の検証用証明書は、前記第１のアプリケーションのインストールに際して、前記第１の保管手段の外部から取得されることを特徴とする制御方法。
【請求項１９】
請求項１８に記載の制御方法において、
前記ステップｂ）において、前記第１のアプリケーションのインストール用データに埋め込まれていた前記第１の検証用証明書が取得されることを特徴とする制御方法。
【請求項２０】
請求項１７に記載の制御方法において、
ｅ）前記第１の仮想環境内の前記第１の検証用証明書を、前記第１の仮想環境以外の仮想環境内に設けられた第３の保管手段に転送して格納するステップ、
をさらに備え、
前記ステップｂ）において、前記第３の保管手段に格納された前記第１の検証用証明書が取得されることを特徴とする制御方法。
【請求項２１】
請求項２０に記載の制御方法において、
前記ステップｂ）は、
ｂ−１）前記第３の保管手段内の証明書を管理する管理部に対して、前記第２の仮想環境にて保管されるべき検証用証明書の送信要求を付与するステップと、
ｂ−２）前記送信要求に応答して送信されてきた前記第１の検証用証明書を取得するステップと、
を有することを特徴とする制御方法。
【請求項２２】
請求項１７に記載の制御方法において、
前記ステップｂ）は、
ｂ−１）前記第１の保管手段内の証明書を管理する管理部に対して、前記第２の仮想環境にて保管されるべき検証用証明書の送信要求を付与するステップと、
ｂ−２）前記送信要求に応答して送信されてきた前記第１の検証用証明書を取得するステップと、
を有することを特徴とする制御方法。
【請求項２３】
請求項２１または請求項２２に記載の制御方法において、
前記ステップｂ−１）においては、前記第２の仮想環境のアップデート処理が行われた後において、前記送信要求が付与されることを特徴とする制御方法。
【請求項２４】
請求項２１または請求項２２に記載の制御方法において、
前記ステップｂ−１）においては、前記第２のアプリケーションのアップデート処理が行われた後において、前記送信要求が付与されることを特徴とする制御方法。
【請求項２５】
請求項２１または請求項２２に記載の制御方法において、
前記ステップｂ−１）においては、前記第２の仮想環境のバックアップ処理にて生成されたバックアップデータを用いた復元処理が行われた後において、前記送信要求が付与されることを特徴とする制御方法。
【請求項２６】
請求項１７に記載の制御方法において、
前記ステップｂ）は、
ｂ−３）前記第１の検証用証明書の有効期限切れを検出するステップと、
ｂ−４）前記有効期限切れが検出された場合、前記第１の検証用証明書の更新要求を前記外部サーバに送信するステップと、
ｂ−５）前記更新要求に応答して送信されてきた前記第１の検証用証明書を取得するステップと、
を有し、
前記ステップｄ）は、
ｄ−１）前記ステップｂ−５）にて取得された前記第１の検証用証明書を前記第１の保管手段に格納するステップと、
ｄ−２）前記ステップｂ−５）にて取得された前記第１の検証用証明書を、前記第２の仮想環境に設けられる前記第２の保管手段に前記第２の検証用証明書として格納するステップと、
を有することを特徴とする制御方法。
【請求項２７】
請求項１７に記載の制御方法において、
前記ステップｂ）において、前記第１の保管手段に予め格納されていた前記第１の検証用証明書が取得されることを特徴とする制御方法。
【請求項２８】
請求項１７から請求項２７のいずれかに記載の制御方法を、前記情報処理装置に内蔵されたコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＭＦＰ（マルチ・ファンクション・ペリフェラル（Multi-Functional Peripheral））などの情報処理装置およびそれに関連する技術に関する。
【背景技術】
【０００２】
サーバコンピュータ（単にサーバとも称する）とクライアントコンピュータ（単にクライアントとも称する）との間で通信を行うにあたって、サーバの身元を保証する技術としてサーバ証明書を利用する技術が存在する（特許文献１の背景技術欄等参照）。当該サーバ証明書は、サーバ（ウェブサイト等）を運営する企業等の身元を保証する電子証明書である。当該サーバ証明書としては、ＳＳＬ（Secure Sockets Layer）サーバ証明書が利用されることが多い。ＳＳＬサーバ証明書は、公開鍵と秘密鍵とによる通信の暗号化を伴うＳＳＬ通信において利用される。
【０００３】
ＳＳＬサーバ証明書は、公開鍵証明書（検証用証明書）によるサーバの認証機能（サーバ証明書の検証機能）を有する。具体的には、サーバ証明書がサーバから送信されてきた場合に、当該サーバ証明書が正規のものであるか否か（サーバ証明書の信頼性）を検証することが行われる。
【０００４】
当該サーバ証明書の検証技術としては、たとえば次の２つが存在する。１つは、「信頼できる認証局が発行した証明書」（Ｃ１０）が予めクライアント内に格納されており、当該証明書（Ｃ１０）を検証用証明書として利用する技術である（図３１参照）。他の１つは、「自己署名証明書」（Ｃ１１）を事前に（サーバ証明書のダウンロード前に）クライアント内にインストールしておき、当該自己署名証明書（Ｃ１１）を検証用証明書として利用する技術である（図３２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−２７４４５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、ＭＦＰにおいて複数の仮想環境を構築することが考えられる。たとえば、第１の仮想環境５０として「ＩＷＳプラットフォーム仮想環境」を構築し、第２の仮想環境７０として「操作パネル仮想環境」を構築することが考えられる。ここで、「ＩＷＳプラットフォーム仮想環境」は、ＩＷＳ（ＭＦＰの内部に設けられるサーバ（内部ウエブサーバ：Internal Web Server）とも称する）向けのプラットフォームを動作させる仮想環境（とも称する）であり、「操作パネル仮想環境」は、操作パネルを動作させる仮想環境（別の仮想環境）である。そして、図３３に示されるように、第１の仮想環境５０内の第１のアプリケーション５１が外部サーバ９０との間で暗号化通信を行い、第２の仮想環境７０内の第２のアプリケーション（ブラウザ）７１も当該外部サーバ９０との間で暗号化通信を行うことがある。なお、図３３は、複数の仮想環境においてそれぞれ独立してＳＳＬ通信（暗号化通信）が行われる様子を示す概念図である。
【０００７】
このような複数の仮想環境を備えるＭＦＰにおいては、各仮想環境から同一のサーバ（外部サーバ）との間でＳＳＬ通信（暗号化通信）が行われる。この際、各仮想環境は、それぞれ、当該外部サーバから送信されてくるサーバ証明書を検証することが好ましい。
【０００８】
ただし、各仮想環境においては、その仮想環境内に格納された検証用証明書を用いて、当該サーバ証明書を検証することが求められる。たとえば、第２の仮想環境内の検証処理部は、同じ仮想環境（第２の仮想環境）に格納されている検証用証明書を用いて、サーバ証明書に対する検証処理を行うことを求められる。第２の仮想環境内の検証処理部は、第１の仮想環境内に格納されている検証用証明書を参照して、サーバ証明書に対する検証処理を行うことはできない（図３４参照）。なお、図３４は、第２の仮想環境７０の検証処理部がサーバ証明書の検証処理を行う際には、第２の仮想環境７０の検証処理部は第１の仮想環境５０内の検証用証明書を参照できないことを示す図である。換言すれば、各仮想環境にてサーバ証明書を検証する検証用証明書は、各仮想環境内に予め格納されていることが求められる。
【０００９】
それ故、図３５に示されるように、たとえば「自己署名証明書」が検証用証明書として利用される場合には、通常、第１の仮想環境と第２の仮想環境との双方に対してそれぞれ検証用証明書を格納する作業を行うこと（比較例に係る技術とも称される）が求められる。その結果、サーバ証明書に関する検証用証明書の管理が煩雑化する。図３５は、当該比較例に係る技術を示す図である。なお、後述するように、「信頼できる認証局による証明書」が検証用証明書として利用される場合にも、サーバ証明書に関する検証用証明書の管理が煩雑化することがある。
【００１０】
そこで、本発明は、複数の仮想環境を構築する情報処理装置において、当該複数の仮想環境における検証用証明書の管理を比較的容易に行うことが可能な技術を提供することを課題とする。
【課題を解決するための手段】
【００１１】
上記課題を解決すべく、請求項１の発明は、複数の仮想環境を構築する情報処理装置であって、前記複数の仮想環境のうちの第１の仮想環境に設けられる第１の保管手段であって、前記第１の仮想環境における第１のアプリケーションの実行に際して外部サーバから送信されてくる第１のサーバ証明書を検証するための第１の検証用証明書を保管する第１の保管手段と、前記複数の仮想環境のうちの第２の仮想環境に設けられる第２の保管手段であって、前記第２の仮想環境における第２のアプリケーションの実行に際して前記外部サーバから送信されてくる第２のサーバ証明書を検証するための第２の検証用証明書を保管することが可能な第２の保管手段と、前記第１の保管手段から或いは前記第１の保管手段以外から前記第１の検証用証明書を取得し、前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に自動的に格納する証明書管理手段と、前記第１の仮想環境にて動作する第１の検証処理手段であって、前記第１の保管手段に保管される前記第１の検証用証明書を用いて前記第１のサーバ証明書を検証する第１の検証処理手段と、前記第２の仮想環境にて動作する第２の検証処理手段であって、前記第２の保管手段に保管される前記第２の検証用証明書を用いて前記第２のサーバ証明書を検証する第２の検証処理手段と、を備えることを特徴とする。
【００１２】
請求項２の発明は、請求項１の発明に係る情報処理装置において、前記証明書管理手段は、前記第１のアプリケーションのインストールに際して、前記第１の保管手段の外部から前記第１の検証用証明書を取得し、取得された前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に自動的に格納することを特徴とする。
【００１３】
請求項３の発明は、請求項２の発明に係る情報処理装置において、前記証明書管理手段は、前記第１のアプリケーションのインストールに際して、前記第１のアプリケーションのインストール用データに埋め込まれていた前記第１の検証用証明書を取得し、取得された前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に自動的に格納することを特徴とする。
【００１４】
請求項４の発明は、請求項２または請求項３の発明に係る情報処理装置において、前記証明書管理手段は、前記第１のアプリケーションのインストールに際して、前記第１の保管手段の外部から取得された前記第１の検証用証明書を前記第１の保管手段に格納するとともに、取得された当該第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に格納することを特徴とする。
【００１５】
請求項５の発明は、請求項１の発明に係る情報処理装置において、前記情報処理装置は、前記第２の仮想環境にて保管されるべき検証用証明書の送信要求を前記証明書管理手段に対して付与する送信要求手段、をさらに備え、前記証明書管理手段は、前記送信要求に応答して、前記証明書管理手段が設けられている仮想環境と同一の仮想環境に保管されていた前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に格納することを特徴とする。
【００１６】
請求項６の発明は、請求項５の発明に係る情報処理装置において、前記送信要求手段は、前記第２の仮想環境のアップデート処理が行われた後において、前記送信要求を付与することを特徴とする。
【００１７】
請求項７の発明は、請求項５の発明に係る情報処理装置において、前記送信要求手段は、前記第２のアプリケーションのアップデート処理が行われた後において、前記送信要求を付与することを特徴とする。
【００１８】
請求項８の発明は、請求項５の発明に係る情報処理装置において、前記送信要求手段は、前記第２の仮想環境のバックアップ処理にて生成されたバックアップデータを用いた復元処理が行われた後において、前記送信要求を付与することを特徴とする。
【００１９】
請求項９の発明は、請求項１の発明に係る情報処理装置において、前記第１の検証用証明書の有効期限切れを検出する検出手段と、前記有効期限切れが検出された場合、前記第１の検証用証明書の更新要求を前記外部サーバに送信する更新要求手段と、をさらに備え、前記証明書管理手段は、前記更新要求に応じて返信されてきた更新後の第１の検証用証明書を前記第１の保管手段に格納するとともに、前記更新後の前記第１の検証用証明書を前記第２の保管手段にも格納することを特徴とする。
【００２０】
請求項１０の発明は、請求項１の発明に係る情報処理装置において、前記証明書管理手段は、前記第１の保管手段に予め格納されている前記第１の検証用証明書を取得し、前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に自動的に格納することを特徴とする。
【００２１】
請求項１１の発明は、請求項１の発明に係る情報処理装置において、前記証明書管理手段は、前記第１の仮想環境に設けられることを特徴とする。
【００２２】
請求項１２の発明は、請求項１の発明に係る情報処理装置において、前記証明書管理手段は、前記第２の仮想環境あるいは前記複数の仮想環境のうちの第３の仮想環境に設けられることを特徴とする。
【００２３】
請求項１３の発明は、請求項１２の発明に係る情報処理装置において、前記証明書管理手段は、前記第１の検証用証明書を保管することが可能な第３の保管手段、を有し、前記情報処理装置は、前記第１の仮想環境に設けられる転送手段であって、前記第１の検証用証明書を前記第３の保管手段に転送して格納させる転送手段、をさらに備え、前記証明書管理手段は、前記第３の保管手段に格納された前記第１の検証用証明書を前記第２の検証用証明書として前記第２の保管手段に転送して前記第２の保管手段に格納させることを特徴とする。
【００２４】
請求項１４の発明は、請求項１から請求項１３のいずれかの発明に係る情報処理装置において、前記複数の仮想環境は、同一ホストＯＳ上の複数のゲストＯＳでそれぞれ動作する複数の仮想マシン環境を含むことを特徴とする。
【００２５】
請求項１５の発明は、請求項１から請求項１３のいずれかの発明に係る情報処理装置において、前記複数の仮想環境は、同一ホストＯＳ上の複数のコンテナでそれぞれ動作する複数の仮想コンテナ環境を含むことを特徴とする。
【００２６】
請求項１６の発明は、請求項１から請求項１３のいずれかの発明に係る情報処理装置において、前記複数の仮想環境は、同一ホストＯＳ上の複数のミドルウエアでそれぞれ動作する複数のソフトウエア実行環境を含むことを特徴とする。
【００２７】
請求項１７の発明は、複数の仮想環境が構築される情報処理装置の制御方法であって、ａ）前記複数の仮想環境のうちの第１の仮想環境にて第１のアプリケーションを実行する際に外部サーバから送信されてくるサーバ証明書である第１のサーバ証明書を、前記第１の仮想環境に設けられた第１の保管手段に保管される第１の検証用証明書を利用して検証するステップと、ｂ）前記第１の保管手段から或いは前記第１の保管手段以外から前記第１の検証用証明書を取得するステップと、ｃ）前記複数の仮想環境のうちの第２の仮想環境にて第２のアプリケーションを実行する際に前記外部サーバから送信されてくるサーバ証明書である第２のサーバ証明書を、前記第２の仮想環境に設けられた第２の保管手段に保管される第２の検証用証明書を利用して検証するステップと、ｄ）前記ステップｃ）に先立って、前記ステップｂ）にて取得された前記第１の検証用証明書を、前記第２の検証用証明書として、前記第２の仮想環境に設けられる前記第２の保管手段に自動的に格納するステップと、を備えることを特徴とする。
【００２８】
請求項１８の発明は、請求項１７の発明に係る制御方法において、前記ステップｂ）において、前記第１の検証用証明書は、前記第１のアプリケーションのインストールに際して、前記第１の保管手段の外部から取得されることを特徴とする。
【００２９】
請求項１９の発明は、請求項１８の発明に係る制御方法において、前記ステップｂ）において、前記第１のアプリケーションのインストール用データに埋め込まれていた前記第１の検証用証明書が取得されることを特徴とする。
【００３０】
請求項２０の発明は、請求項１７の発明に係る制御方法において、ｅ）前記第１の仮想環境内の前記第１の検証用証明書を、前記第１の仮想環境以外の仮想環境内に設けられた第３の保管手段に転送して格納するステップ、をさらに備え、前記ステップｂ）において、前記第３の保管手段に格納された前記第１の検証用証明書が取得されることを特徴とする。
【００３１】
請求項２１の発明は、請求項２０の発明に係る制御方法において、前記ステップｂ）は、ｂ−１）前記第３の保管手段内の証明書を管理する管理部に対して、前記第２の仮想環境にて保管されるべき検証用証明書の送信要求を付与するステップと、ｂ−２）前記送信要求に応答して送信されてきた前記第１の検証用証明書を取得するステップと、を有することを特徴とする。
【００３２】
請求項２２の発明は、請求項１７の発明に係る制御方法において、前記ステップｂ）は、ｂ−１）前記第１の保管手段内の証明書を管理する管理部に対して、前記第２の仮想環境にて保管されるべき検証用証明書の送信要求を付与するステップと、ｂ−２）前記送信要求に応答して送信されてきた前記第１の検証用証明書を取得するステップと、を有することを特徴とする。
【００３３】
請求項２３の発明は、請求項２１または請求項２２の発明に係る制御方法において、前記ステップｂ−１）においては、前記第２の仮想環境のアップデート処理が行われた後において、前記送信要求が付与されることを特徴とする。
【００３４】
請求項２４の発明は、請求項２１または請求項２２の発明に係る制御方法において、前記ステップｂ−１）においては、前記第２のアプリケーションのアップデート処理が行われた後において、前記送信要求が付与されることを特徴とする。
【００３５】
請求項２５の発明は、請求項２１または請求項２２の発明に係る制御方法において、前記ステップｂ−１）においては、前記第２の仮想環境のバックアップ処理にて生成されたバックアップデータを用いた復元処理が行われた後において、前記送信要求が付与されることを特徴とする。
【００３６】
請求項２６の発明は、請求項１７の発明に係る制御方法において、前記ステップｂ）は、ｂ−３）前記第１の検証用証明書の有効期限切れを検出するステップと、ｂ−４）前記有効期限切れが検出された場合、前記第１の検証用証明書の更新要求を前記外部サーバに送信するステップと、ｂ−５）前記更新要求に応答して送信されてきた前記第１の検証用証明書を取得するステップと、を有し、前記ステップｄ）は、ｄ−１）前記ステップｂ−５）にて取得された前記第１の検証用証明書を前記第１の保管手段に格納するステップと、ｄ−２）前記ステップｂ−５）にて取得された前記第１の検証用証明書を、前記第２の仮想環境に設けられる前記第２の保管手段に前記第２の検証用証明書として格納するステップと、を有することを特徴とする。
【００３７】
請求項２７の発明は、請求項１７の発明に係る制御方法において、前記ステップｂ）において、前記第１の保管手段に予め格納されていた前記第１の検証用証明書が取得されることを特徴とする。
【００３８】
請求項２８の発明は、請求項１７から請求項２７のいずれかの発明に係る制御方法を、前記情報処理装置に内蔵されたコンピュータに実行させるプログラムであることを特徴とする。
【発明の効果】
【００３９】
請求項１から請求項２８に記載の発明によれば、複数の仮想環境を構築する情報処理装置において、当該複数の仮想環境における検証用証明書の管理を比較的容易に行うことが可能である。
【図面の簡単な説明】
【００４０】
【図１】情報処理システムの構成を示す概略図である。
【図２】ＭＦＰの機能ブロックを示す図である。
【図３】複数の仮想マシン環境を示す図である。
【図４】複数の仮想コンテナ環境を示す図である。
【図５】複数のソフトウエア実行環境（仮想環境）を示す図である。
【図６】第１実施形態の動作を示す概念図である。
【図７】第１の仮想環境に検証用証明書が未だ格納されていない状態を示す図である。
【図８】第１の仮想環境に第１のアプリケーションがインストールされる様子を示す図である。
【図９】第１の仮想環境の証明書保管部に検証用証明書が格納される様子を示す図である。
【図１０】第２の仮想環境の証明書保管部に検証用証明書が格納される様子を示す図である。
【図１１】第１実施形態の動作を示すフローチャートである。
【図１２】第２実施形態の動作を示す概念図である。
【図１３】第１の仮想環境に第１のアプリケーションがインストールされる様子を示す図である。
【図１４】検証用証明書が第１の仮想環境の証明書保管部と第３の仮想環境の証明書保管部とに検証用証明書が格納される様子を示す図である。
【図１５】第２の仮想環境の証明書保管部に検証用証明書が格納される様子を示す図である。
【図１６】第２実施形態の動作を示すフローチャートである。
【図１７】第３実施形態の動作を示す概念図である。
【図１８】第２の仮想環境のアップデート処理に伴って第２の検証用証明書が消去される様子を示す図である。
【図１９】第２の仮想環境にて保管されるべき検証用証明書が当該第２の仮想環境から証明書管理部に問い合わせられる。
【図２０】第３の仮想環境から第２の仮想環境へと第１の検証用証明書が転送される様子を示す図である。
【図２１】第３実施形態の動作を示すフローチャートである。
【図２２】第４実施形態に係る動作を示すタイミングチャートである。
【図２３】第４実施形態に係る動作を示す概念図である。
【図２４】検証用証明書の有効期限切れが発生した状況を示す図である。
【図２５】第４実施形態の変形例に係る動作を示す概念図である。
【図２６】第５実施形態の動作を示す概念図である。
【図２７】第５実施形態において、第１の仮想環境の構築時点にて第１の検証用証明書が第１の仮想環境内に既に格納されている様子を示す図である。
【図２８】第５実施形態において第１のアプリケーションが第１の仮想環境にインストールされる様子を示す図である。
【図２９】第１の仮想環境から第３の仮想環境へと第１の検証用証明書が転送される様子を示す図である。
【図３０】第３の仮想環境から第２の仮想環境へと第１の検証用証明書が転送される様子を示す図である。
【図３１】「信頼できる認証局が発行した証明書」を検証用証明書として利用する技術を示す概念図である。
【図３２】「自己署名証明書」を検証用証明書として利用する技術を示す概念図である。
【図３３】複数の仮想環境においてそれぞれ独立して暗号化通信等が行われる様子を示す概念図である。
【図３４】サーバ証明書の検証処理に際して各仮想環境のアプリケーションは他の仮想環境内の検証用証明書を参照できないことを示す図である。
【図３５】比較例に係る動作を示す図である。
【図３６】別の比較例に係る動作を示す図である。
【発明を実施するための形態】
【００４１】
以下、本発明の実施形態を図面に基づいて説明する。
【００４２】
＜１．第１実施形態＞
＜１−１．システム構成＞
図１は、本発明の第１実施形態に係る情報処理システム１の構成を示す概略図である。図１に示されるように、情報処理システム１は、ＭＦＰ１０（情報処理装置）とサーバコンピュータ９０（９０ａ，９０ｂ，...）とを備える。ＭＦＰ１０は、クライアントとも表現される。
【００４３】
ＭＦＰ１０と各サーバコンピュータ（外部サーバあるいは単にサーバとも称する）９０とは、ネットワーク１０８を介して互いに接続される。ネットワーク１０８は、ＬＡＮ（Local Area Network）およびインターネットなどによって構成される。また、ネットワーク１０８に対する接続態様は、有線接続であってもよく、或いは無線接続であってもよい。
【００４４】
各サーバ９０は、ＭＦＰ１０の外部の装置（外部装置）（外部サーバ）である。ここでは、各サーバ９０は、クラウドサーバとして構成される。
【００４５】
＜１−２．ＭＦＰ１０の構成＞
図２は、ＭＦＰ（マルチ・ファンクション・ペリフェラル（Multi-Functional Peripheral））１０の機能ブロックを示す図である。
【００４６】
ＭＦＰ１０は、スキャン機能、コピー機能、ファクシミリ機能およびボックス格納機能などを備える装置（複合機とも称する）である。具体的には、ＭＦＰ１０は、図２の機能ブロック図に示すように、画像読取部２、印刷出力部３、通信部４、格納部５、操作部６およびコントローラ９等を備えており、これらの各部を複合的に動作させることによって、各種の機能を実現する。なお、ＭＦＰ１０は、画像処理装置あるいは画像形成装置などとも表現される。
【００４７】
画像読取部２は、ＭＦＰ１０の所定の位置に載置された原稿を光学的に読み取って（すなわちスキャンして）、当該原稿の画像データ（原稿画像なしいスキャン画像とも称する）を生成する処理部である。この画像読取部２は、スキャン部であるとも称される。
【００４８】
印刷出力部３は、印刷対象に関するデータに基づいて紙などの各種の媒体に画像を印刷出力する出力部である。このＭＦＰ１０は、電子写真方式のプリンタ（フルカラープリンタ）でもあり、印刷出力部３は、露光部、現像部、転写部、定着部などの各種のハードウエア機構を有している。
【００４９】
通信部４は、公衆回線等を介したファクシミリ通信を行うことが可能な処理部である。さらに、通信部４は、ネットワーク１０８を介したネットワーク通信を行うことも可能である。このネットワーク通信では、たとえば、ＴＣＰ／ＩＰ（Transmission Control Protocol / Internet Protocol）等の各種のプロトコルが利用される。当該ネットワーク通信を利用することによって、ＭＦＰ１０は、所望の相手先（たとえば、サーバ９０）との間で各種のデータを授受することが可能である。通信部４は、各種データを送信する送信部４ａと各種データを受信する受信部４ｂとを有する。
【００５０】
格納部５は、ハードディスクドライブ（ＨＤＤ）等の記憶装置で構成される。
【００５１】
操作部６は、ＭＦＰ１０に対する操作入力を受け付ける操作入力部６ａと、各種情報の表示出力を行う表示部６ｂとを備えている。このＭＦＰ１０においては、略板状の操作パネル部６ｃ（図１参照）が設けられ、当該操作パネル部６ｃは、その正面側にタッチパネル２５（図１参照）を有している。タッチパネル２５は、液晶表示パネルに圧電センサ等が埋め込まれて構成され、各種情報を表示するとともに操作者からの操作入力を受け付けることが可能である。たとえば、タッチパネル２５においては、メニュー画面等の各種の画面（ボタン画像等を含む）等が表示される。操作者は、タッチパネル２５内に仮想的に配置されるボタン（ボタン画像で表現されるボタン）を押下することによって、ＭＦＰ１０の各種設定内容を変更することなどが可能である。タッチパネル２５は、操作入力部６ａの一部としても機能するとともに、表示部６ｂの一部としても機能する。
【００５２】
コントローラ（制御部）９は、ＭＦＰ１０に内蔵され、ＭＦＰ１０を統括的に制御する制御装置である。コントローラ９は、ＣＰＵおよび各種の半導体メモリ（ＲＡＭおよびＲＯＭ）等を備えるコンピュータシステムとして構成される。コントローラ９は、ＣＰＵにおいて、ＲＯＭ（例えば、ＥＥＰＲＯＭ（登録商標））内に格納されている所定のソフトウエアプログラム（以下、単にプログラムとも称する）を実行することによって、各種の処理部を実現する。なお、当該プログラム（詳細にはプログラムモジュール群）は、ＵＳＢメモリなどの可搬性の記録媒体に記録され、当該記録媒体から読み出されてＭＦＰ１０にインストールされるようにしてもよい。あるいは、当該プログラムは、ネットワーク等を経由してダウンロードされてＭＦＰ１０にインストールされるようにしてもよい。
【００５３】
具体的には、図２に示すように、コントローラ９は、当該プログラムの実行により、証明書管理部３０と検証処理部５８，７８とを含む各種の処理部を実現する。
【００５４】
証明書管理部３０は、各仮想環境におけるサーバ証明書を管理する処理部である。証明書管理部３０は、或る仮想環境に設けられた証明書保管部内に格納される検証用証明書を管理する。また、証明書管理部３０は、或る仮想環境内に格納された検証用証明書を他の仮想環境で利用できるように当該各検証証明書を当該他の仮想環境に転送する処理等を実行する。たとえば、証明書管理部３０は、第１の仮想環境５０の検証用証明書（第１の検証用証明書）Ｃ１を取得し、当該第１の検証用証明書Ｃ１を、第２の仮想環境７０の検証用証明書（第２の検証用証明書）Ｃ２として第２の仮想環境７０内に自動的に格納する処理を実行する。
【００５５】
第１の検証処理部５８は、第１の仮想環境５０にて動作する検証処理部である。第１の検証処理部５８は、第１の仮想環境５０内の証明書保管部５２（図６等参照）に保管される第１の検証用証明書Ｃ１を用いて、第１のサーバ証明書の検証処理を実行する（後述）（図３３も参照）。
【００５６】
第２の検証処理部７８は、第２の仮想環境７０にて動作する検証処理部である。第２の検証処理部７８は、第２の仮想環境７０内の証明書保管部７２（図６等参照）に保管される第２の検証用証明書Ｃ２を用いて、第２のサーバ証明書の検証処理を実行する（後述）。
【００５７】
＜１−３．ＭＦＰ１０における複数の仮想環境＞
ＭＦＰ１０においては、複数の仮想環境が構築される。当該複数の仮想環境は、ＭＦＰ１０のハードウエア（プロセッサおよびＨＤＤ等）を共有して（論理的に区分して）構築される。
【００５８】
たとえば、「仮想環境」としては、「仮想マシン環境」が例示される。複数の仮想マシン環境は、同一ホストＯＳ（Operating System：オペレーティングシステム）上の複数のゲストＯＳでそれぞれ動作する仮想マシンによって構成される。図３は、複数の仮想マシン環境ＶＭ（ＶＭ１，ＶＭ２，...）を示す図である。
【００５９】
図３に示されるように、同一ホストＯＳ上に複数のゲストＯＳがインストールされる。そして、当該複数のゲストＯＳのそれぞれの上にサービス処理用のアプリケーションソフトウエア（サーバアプリケーション）がインストールされることによって、複数の仮想マシン環境ＶＭ（ＶＭ１，ＶＭ２，...）が構築される。
【００６０】
なお、「仮想環境」としては、「仮想コンテナ環境」も例示される。複数の仮想コンテナ環境は、同一ホストＯＳ上の複数のゲストＯＳでそれぞれ動作する仮想コンテナ（単にコンテナとも称する）ＣＴ（ＣＴ１，ＣＴ２，...）によって構成される。図４は、複数の仮想コンテナ環境を示す図である。
【００６１】
また、「仮想環境」としては、「（ミドルウエア上の）ソフトウエア実行環境」も例示される。複数のソフトウエア実行環境は、同一ホストＯＳ上の複数のミドルウエアでそれぞれ動作するソフトウエア実行環境によって構成される。図５は、複数のソフトウエア実行環境を示す図である。図５に示されるように、当該ミドルウエアとしては、ジャバ仮想マシン（Java（登録商標）virtual machine）の実行環境、およびマイクロソフトドットネットフレームワーク（Microsoft .NET Framework）等が例示される。
【００６２】
＜１−４．ＭＦＰ１０におけるプログラム構成＞
この実施形態では、複数の仮想環境として、２つの仮想環境５０，７０がＭＦＰ１０内に構築される。また、「仮想環境」として「仮想コンテナ環境」が採用され、第１の仮想環境５０は仮想コンテナＣＴ１（図４参照）であり、第２の仮想環境７０は仮想コンテナＣＴ２である。
【００６３】
ここでは、第１の仮想環境５０の仮想環境として「ＩＷＳプラットフォーム仮想環境」を例示し、第２の仮想環境７０として「操作パネル仮想環境」を例示する。「ＩＷＳプラットフォーム仮想環境」は、ＩＷＳ（ＭＦＰの内部に設けられるサーバ（内部ウエブサーバ：Internal Web Server）とも称する）向けのプラットフォームを動作させる仮想環境（とも称する）である。また、「操作パネル仮想環境」は、操作パネルを動作させる仮想環境であり、「ＩＷＳプラットフォーム仮想環境」とは別の仮想環境である。
【００６４】
そして、図３３に示すように、第１の仮想環境５０内の第１のアプリケーション５１が外部サーバ９０との間で暗号化通信を行い、第２の仮想環境７０内の第２のアプリケーション（ブラウザ）７１も当該外部サーバ９０との間で暗号化通信を行うものとする。
【００６５】
より詳細には、外部サーバ９０へのログイン時には、第２仮想環境７０内のブラウザ（第２のアプリケーション）７１が外部サーバ９０とＳＳＬ通信（暗号化通信）を行う。当該ＳＳＬ通信に際しては、まず、第２のアプリケーション７１が外部サーバ９０からサーバ証明書（第２のサーバ証明書とも称する）を受信し、当該サーバ証明書の検証処理を実行する。そして、サーバ証明書の信頼性が確認されると、第２のアプリケーション７１は、当該外部サーバ９０との間で当該サーバ証明書内の公開鍵（および第２の仮想環境７０の秘密鍵）等を用いた暗号化通信を行う。
【００６６】
同様に、他の動作時（データ送受信時等）において、第１の仮想環境５０内の第１のアプリケーション５１が外部サーバ９０とＳＳＬ通信（暗号化通信）を行う。当該ＳＳＬ通信に際しては、まず、第１のアプリケーション５１が外部サーバ９０からサーバ証明書（第１のサーバ証明書とも称する）を受信し、当該サーバ証明書の検証処理を実行する。そして、サーバ証明書の信頼性が確認されると、第１のアプリケーション５１は、当該外部サーバ９０との間で当該サーバ証明書内の公開鍵（および第１の仮想環境５０の秘密鍵）等を用いた暗号化通信を行う。
【００６７】
また、第２のアプリケーション（ブラウザ）７１においては、第１のアプリケーション５１での処理結果（外部サーバ９０と第１のアプリケーション５１との通信に基づく処理結果を含む）の表示処理等が行われる。換言すれば、第１のアプリケーション５１と第２のアプリケーション７１とは連携して動作する。
【００６８】
＜１−５．サーバ証明書の検証を含む暗号化通信＞
上述のようなＳＳＬ通信が開始される前（換言すれば、外部サーバ９０からサーバ証明書が送信されてくる前）の所定の時点において、外部サーバ９０からのサーバ証明書を検証するための証明書（検証用証明書（詳細には、第１の検証用証明書Ｃ１））がクライアント装置（詳細には第１の仮想環境５０の証明書保管部５２）内に既に格納される（図３１および図３２参照）。たとえば、第１の検証用証明書Ｃ１が「（信頼できる）認証局の証明書」である場合（図３１参照）には、第１の仮想環境５０の構築時に証明書保管部５２内に格納される（図２７も参照）ことが多い。また、第１の検証用証明書Ｃ１が自己署名証明書である場合（図３２参照）には、第１の仮想環境５０の構築後（且つ第１のアプリケーション５１の実行前）の所定のタイミングで証明書保管部５２内に格納される（図８参照）。
【００６９】
第１実施形態では、「自己署名証明書」が第１の検証用証明書Ｃ１として採用され、第１の仮想環境５０の構築後且つ第１のアプリケーション５１のインストール時に当該第１の検証用証明書Ｃ１が自動的に証明書保管部５２に格納されるものとする。そして、ほぼ同時期に（第１の仮想環境５０の構築後且つ第１のアプリケーション５１のインストール時に）、第２のアプリケーション７１で利用される第２の検証用証明書Ｃ２として、当該第１の検証用証明書Ｃ１が自動的に証明書保管部７２に格納されるものとする。
【００７０】
その後、ＭＦＰ（クライアント）１０（詳細には、第１の仮想環境５０の第１のアプリケーション５１）は、第１の仮想環境５０における当該第１のアプリケーション５１の実行に伴う外部サーバ９０（たとえば９０ａ）との暗号化通信に際して（より詳細には、当該暗号化通信の直前に）、当該外部サーバ９０からサーバ証明書（第１のサーバ証明書とも称する）を受信する。そして、ＭＦＰ１０は、外部サーバ９０から送信されてくる当該第１のサーバ証明書を受信すると、既に格納されている検証用証明書を利用して当該第１のサーバ証明書の信頼性を検証する。詳細には、図３３に示されるように、第１の仮想環境５０にて動作する第１の検証処理部５８が、第１の仮想環境５０内の証明書保管部５２に保管される第１の検証用証明書Ｃ１を用いて、第１のサーバ証明書の検証処理を実行する。
【００７１】
より具体的には、図３１および図３２にも示すように、外部サーバ９０からのサーバ証明書（第１のサーバ証明書）内の公開鍵を利用したハッシュ値と検証用証明書（第１の検証用証明書Ｃ１）内の公開鍵を利用したハッシュ値とが比較され、当該両ハッシュ値が一致すると、外部サーバ９０から送信されてきたサーバ証明書が正規のものである旨が判定される。一方、当該両ハッシュ値が一致しない場合には、当該サーバ証明書は正規のものではない旨が判定される。サーバ証明書が正規のものであると判定される場合には、その後、サーバ証明書の公開鍵（およびクライアント（第１の仮想環境５０）側の秘密鍵）を利用した暗号化通信が、第１のアプリケーション５１と外部サーバ９０（詳細には、外部サーバ９０内のサーバアプリケーション）との間で実行される。
【００７２】
同様に、ＭＦＰ（クライアント）１０（詳細には、第２の仮想環境７０の第２のアプリケーション７１）は、第２の仮想環境７０における当該第２のアプリケーションの実行に伴う外部サーバ９０（たとえば９０ａ）との暗号化通信に際して（より詳細には、当該暗号化通信の直前に）当該外部サーバ９０からサーバ証明書（第２のサーバ証明書とも称する）を受信する。そして、ＭＦＰ１０は、外部サーバ９０から送信されてくる第２のサーバ証明書を受信すると、既に格納されている検証用証明書を利用して当該第２のサーバ証明書の信頼性を検証する。詳細には、図３３に示されるように、第２の仮想環境７０にて動作する第２の検証処理部７８が、第２の仮想環境７０内の証明書保管部７２に保管される第２の検証用証明書Ｃ２を用いて、第２のサーバ証明書の検証処理を実行する。
【００７３】
より具体的には、図３１および図３２にも示すように、外部サーバ９０からのサーバ証明書（第２のサーバ証明書）内の公開鍵を利用したハッシュ値と検証用証明書（第２の検証用証明書Ｃ２）内の公開鍵を利用したハッシュ値とが比較され、当該両ハッシュ値が一致すると、外部サーバ９０から送信されてきたサーバ証明書が正規のものである旨が判定される。一方、当該両ハッシュ値が一致しない場合には、当該サーバ証明書は正規のものではない旨が判定される。サーバ証明書が正規のものであると判定される場合には、その後、サーバ証明書の公開鍵（およびクライアント（第２の仮想環境７０）側の秘密鍵）を利用した暗号化通信が、第２のアプリケーション７１と外部サーバ９０（詳細には、外部サーバ９０内のサーバアプリケーション）との間で実行される。
【００７４】
このように、各仮想環境の各アプリケーションは、自らの仮想環境内の証明書保管部に格納された検証用証明書を用いて、サーバ証明書の検証処理を実行する。具体的には、第１の仮想環境５０の第１のアプリケーション５１は、自らの仮想環境５０内の証明書保管部５２に格納された検証用証明書Ｃ１を用いて、サーバ証明書の検証処理を実行する。一方、第２の仮想環境７０の第２のアプリケーション７１は、自らの仮想環境７０内の証明書保管部７２に格納された検証用証明書Ｃ２を用いて、サーバ証明書の検証処理を実行する。
【００７５】
なお、第２の検証用証明書Ｃ２は、第１の検証用証明書Ｃ１と同一の内容を有するものであってよい。
【００７６】
ただし、サーバ証明書の検証時において、各仮想環境の各アプリケーションは、他の仮想環境内の証明書保管部に格納された検証用証明書を参照することはできない。たとえば、図３４に示されるように、第２の仮想環境７０の第２のアプリケーション７１（第２の検証処理部７８）は、第１の仮想環境５０の証明書保管部５２に格納された第１の検証用証明書Ｃ１を参照してサーバ証明書の検証処理を実行することはできない。
【００７７】
換言すれば、複数の仮想環境のそれぞれは、自仮想環境におけるアプリケーションの実行に伴う外部サーバとの暗号化通信にて当該外部サーバから送信されてくるサーバ証明書を検証するため検証用証明書としては、自仮想環境内の保管手段内に（独自に）格納されている検証用証明書のみを利用することが可能である。
【００７８】
このような状況においては、上述のように、各仮想環境用の証明書保管部に外部サーバ９０向けの検証用証明書を、それぞれ格納する作業を伴う場合には、相当の労力を要する。
【００７９】
そこで、本実施形態においては、一の仮想環境５０で利用される検証用証明書Ｃ１が他の仮想環境７０内の証明書保管部にも自動的に格納される技術について説明する。
【００８０】
＜１−６．検証用証明書の管理＞
図７は、ＭＦＰ１０において、第１の仮想環境５０と第２の仮想環境７０とが構築された状態を示している。図７では、第１の仮想環境５０には、第１のアプリケーション５１は未だインストールされておらず、且つ、第１の仮想環境５０の証明書保管部５２には検証用証明書は未だ格納されていない。また、第２の仮想環境７０には、既に第２のアプリケーション７１がインストールされているものの、第２の仮想環境７０の証明書保管部７２には検証用証明書は未だ格納されていない。証明書保管部７２は、第２の検証用証明書Ｃ２を保管することが可能な保管部であるものの、この時点では、未だ当該第２の検証用証明書Ｃ２を保管していない。
【００８１】
以下では、サーバ証明書が外部サーバ９０から送信されてくる時点よりも前において、当該外部サーバ９０向けの各検証用証明書Ｃ１，Ｃ２が各仮想環境５０，７０（特に７０）内の証明書保管部に自動的に格納される動作等について説明する。より詳細には、第１のアプリケーション５１のインストールに際して、第１の仮想環境５０用の第１の検証用証明書Ｃ１が第１の仮想環境５０の証明書保管部５２に自動的に格納されるとともに、第２の仮想環境７０用の第２の検証用証明書Ｃ２が第２の仮想環境７０の証明書保管部７２にも自動的に格納される態様について、図６および図８〜図１１等を参照しながら説明する。
【００８２】
図８〜図１０は、図７の状態以後の各時点における状態を順次に示す図である。また、図６は、図７〜図１０の状態遷移を纏めて示す図であり、図１１は、このような動作を示すタイミングチャートである。
【００８３】
まず、ステップＳ１１（図１１参照）において、第１の仮想環境５０にて第１のアプリケーション５１のインストーラが起動して、当該第１のアプリケーション５１のインストールが開始される（図８も参照）。ここでは、当該インストールの途中において証明書の管理を行うモジュール（ソフトウエアモジュール）もインストールされ、当該モジュール（証明書管理用モジュール）が証明書管理部３０の機能を実現する。
【００８４】
また、第１のアプリケーション５１のインストール用データには、検証用証明書Ｃ１が埋め込まれているものとする。
【００８５】
ステップＳ１２において、第１の仮想環境５０内の証明書管理部３０（５３とも称する）は、第１のアプリケーション５１のインストールに際して、第１のアプリケーション５１のインストール用データに埋め込まれていた検証用証明書Ｃ１を取得する。
【００８６】
そして、証明書管理部３０（５３）は、取得した検証用証明書Ｃ１を第１の仮想環境５０内の証明書保管部５２に格納する（ステップＳ１３）（図９も参照）。
【００８７】
また、証明書管理部３０（５３）は、取得した検証用証明書Ｃ１を第１の仮想環境５０内の証明書保管部５５（図６参照）にも格納する（ステップＳ１６）。なお、証明書保管部５５は、証明書管理部５３の管理下の保管部であるとも称される。
【００８８】
さらに、第１の仮想環境５０の証明書管理部３０（５３）は、取得した検証用証明書Ｃ１（詳細には、当該検証用証明書Ｃ１の複製物）を第２の仮想環境７０（詳細には、第２の仮想環境７０の証明書保管部７２）に送信する（ステップＳ１８）（図１０も参照）。
【００８９】
第２の仮想環境７０は、第１の仮想環境５０から送信されてきた検証用証明書Ｃ１を受信する（ステップＳ２１）と、当該検証用証明書Ｃ１を検証用証明書Ｃ２として第２の仮想環境７０内の証明書保管部７２に格納する（ステップＳ２２）。なお、本願における「通信（送信および／または受信）」には、異なる複数の仮想環境の相互間の通信および同一仮想環境内の異なるプロセス間の通信（プロセス間通信）等も含まれ得る。
【００９０】
このようにして、外部サーバ９０向けの第１の仮想環境５０用の第１の検証用証明書Ｃ１が、当該外部サーバ９０向けの第２の仮想環境７０用の第２の検証用証明書Ｃ２として、第２の仮想環境７０（証明書保管部７２）に自動的に格納される。これにより、サーバ証明書が実際に送信されてくる時点（アプリケーション５１，７１の実行時点）よりも前において、各仮想環境５０，７０（特に７０）内の証明書保管部に外部サーバ９０向けの各検証用証明書Ｃ１，Ｃ２が格納される。
【００９１】
その後、第１のアプリケーション５１の実行に伴って外部サーバ９０からサーバ証明書（第１のサーバ証明書）が受信される際において、当該サーバ証明書の検証処理が、第１の仮想環境５０内の第１の検証用証明書Ｃ１を用いて実行される。また、第２のアプリケーション７１の実行に伴って当該外部サーバ９０からサーバ証明書（第２のサーバ証明書）が受信される際において、当該サーバ証明書の検証処理が、第２の仮想環境７０内の第２の検証用証明書Ｃ２を用いて実行される。
【００９２】
＜１−７．第１実施形態における効果＞
上記実施形態によれば、第１のアプリケーション５１のインストールに際して、当該第１のアプリケーション５１のインストール用データに埋め込まれていた第１の検証用証明書Ｃ１が第１の仮想環境５０内の証明書管理部３０（５３）によって取得される（ステップＳ１２）。そして、証明書管理部３０は、当該第１の検証用証明書Ｃ１を第２の検証用証明書Ｃ２として第２の仮想環境７０内の証明書保管部７２に自動的に格納する（ステップＳ１８〜Ｓ２２）。そのため、第２の仮想環境７０用の第２の検証用証明書Ｃ２を第２の仮想環境７０内の証明書保管部７２に格納する作業（図３５参照）を別途行うことを要しない。したがって、複数の仮想環境を構築する情報処理装置において、当該複数の仮想環境における検証用証明書の管理を比較的容易に行うことが可能である。
【００９３】
なお、上記実施形態は、検証用証明書として「自己署名証明書」が利用される場合において、特に有用である。ただし、これに限定されず、検証用証明書として「信頼できる認証局による検証用証明書」が利用される場合においても有用である（他の実施形態も同様）。
【００９４】
たとえば、何らかの事情で、「信頼できる認証局による検証用証明書」が未だ第２の仮想環境７０（詳細には、その証明書保管部７２）に格納されていないときにも有用である。この場合、第２の仮想環境７０用の第２の検証用証明書Ｃ２を第２の仮想環境７０内の証明書保管部７２に格納する作業（図３５参照）を別途要するときには、サーバ証明書に関する検証用証明書の管理が煩雑化する。
【００９５】
これに対して、上記実施形態によれば、「信頼できる認証局による検証用証明書」（第２の検証用証明書Ｃ２）が第２の仮想環境７０の構築時に第２の仮想環境７０内に未だ格納されていないとしても、第１のアプリケーション５１のインストール時に第１の検証用証明書Ｃ１が第２の検証用証明書Ｃ２として第２の仮想環境７０に自動的に格納される。したがって、複数の仮想環境における検証用証明書の管理を比較的容易に行うことが可能である。
【００９６】
＜２．第２実施形態＞
上記第１実施形態においては、証明書管理部３０が第１仮想環境（ＩＷＳプラットフォーム仮想環境）に設けられているが、本発明は、これに限定されず、証明書管理部３０は第１仮想環境以外の仮想環境（たとえば、第３の仮想環境あるいは第２仮想環境等）に設けられてもよい。
【００９７】
第２実施形態は、第１実施形態の変形例である。この第２実施形態においては、第３の仮想環境に証明書管理部３０が設けられる態様について、第１実施形態との相違点を中心に説明する。
【００９８】
第２実施形態においても、図７の状態から説明する。上述のように、図７の状態においては、第１の仮想環境５０の証明書保管部５２には検証用証明書は未だ格納されておらず且つ第２の仮想環境７０の証明書保管部７２にも検証用証明書は未だ格納されていない。証明書保管部７２は、第２の検証用証明書Ｃ２を保管することが可能な保管部であるものの、この時点では、未だ当該第２の検証用証明書Ｃ２を保管していない。
【００９９】
以下では、第１のアプリケーション５１のインストールに際して、第１の仮想環境５０用の第１の検証用証明書Ｃ１が第１の仮想環境５０の証明書保管部５２に自動的に格納されるとともに、第３の仮想環境内の証明書管理部３０を用いて、当該第１の検証用証明書Ｃ１が（第２の仮想環境７０用の第２の検証用証明書Ｃ２として）第２の仮想環境７０の証明書保管部７２にも自動的に格納される態様について、図１２〜図１６等を参照しながら説明する。
【０１００】
図１３〜図１５は、図７の状態以後の各時点における状態を順次に示す図である。また、図１２は、図７および図１３〜図１５の状態遷移を纏めて示す図であり、図１６は、このような動作を示すタイミングチャートである。
【０１０１】
まず、ステップＳ１１（Ｓ１１ｂ）の動作が行われる。具体的には、第１の仮想環境５０にて第１のアプリケーション５１のインストーラが起動して、当該第１のアプリケーション５１のインストールが開始される（図１３参照）。ここでは、当該インストールの途中において証明書の管理を行うモジュールもインストールされ、当該モジュールが転送処理部５６の機能を実現する。また、第１のアプリケーション５１のインストール用データには、検証用証明書Ｃ１が埋め込まれているものとする。
【０１０２】
つぎに、ステップＳ１２（Ｓ１２ｂ）において、第１の仮想環境５０内の転送処理部５６は、第１のアプリケーション５１のインストールに際して、第１のアプリケーション５１のインストール用データに埋め込まれていた検証用証明書Ｃ１を取得する。
【０１０３】
そして、転送処理部５６は、取得した検証用証明書Ｃ１（詳細には、当該検証用証明書Ｃ１の複製物）を第１の仮想環境５０内の証明書保管部５２に格納する（ステップＳ１３ｂ）（図１４参照）。
【０１０４】
また、当該検証用証明書Ｃ１は、第３の仮想環境８０を経由して第２の仮想環境７０の証明書保管部７２に格納される（ステップＳ１４〜Ｓ２２）。
【０１０５】
具体的には、まず、転送処理部５６は、取得した検証用証明書Ｃ１を第３の仮想環境８０内の証明書管理部３０（詳細には、証明書管理部３０の管理下の証明書保管部３２（図１４参照））に転送（送信）する（ステップＳ１４）。
【０１０６】
次に、証明書管理部３０は、第１の仮想環境５０から送信されてきた検証用証明書Ｃ１を受信する（ステップＳ１５）と、当該検証用証明書Ｃ１を第３の仮想環境８０内の証明書保管部３２に格納する（ステップＳ１６ｂ）。
【０１０７】
そして、証明書管理部３０は、当該検証用証明書Ｃ１の送信先をデータベース２２０に基づいて決定する（ステップＳ１７）。なお、第３の仮想環境８０においては、所定のアプリケーションプログラムがインストールされており、当該所定のアプリケーションプログラムによって証明書管理部３０の機能が実現される。また、当該所定のアプリケーションプログラムのインストールによってデータベース２２０も第３の仮想環境８０内に予め構築されているものとする。データベース２２０には、各検証用証明書を利用する仮想環境が予め規定されている。具体的には、第１の検証用証明書Ｃ１が第１の仮想環境５０と第２の仮想環境７０とで利用される旨が予め規定されている。
【０１０８】
ここでは、ステップＳ１７において、当該検証用証明書Ｃ１の送信先として第２の仮想環境７０が決定されたものとして説明を続ける。
【０１０９】
次のステップＳ１８ｂにおいては、証明書管理部３０は、取得した検証用証明書Ｃ１（詳細には、当該検証用証明書Ｃ１の複製物）を第２の仮想環境７０（詳細には、第２の仮想環境７０の証明書保管部７２）に送信する（ステップＳ１８）（図１５も参照）。
【０１１０】
第２の仮想環境７０は、第３の仮想環境８０の証明書管理部３０から送信されてきた検証用証明書Ｃ１を受信する（ステップＳ２１ｂ）と、当該検証用証明書Ｃ１を検証用証明書Ｃ２として第２の仮想環境７０内の証明書保管部７２に格納する（ステップＳ２２ｂ）。
【０１１１】
このようにして、外部サーバ９０向けの第１の仮想環境５０用の第１の検証用証明書Ｃ１が、証明書管理部３０を経由して第２の仮想環境７０に送信され、当該外部サーバ９０向けの第２の仮想環境７０用の第２の検証用証明書Ｃ２として、第２の仮想環境７０（証明書保管部７２）に自動的に格納される。これにより、サーバ証明書が実際に送信されてくる時点（アプリケーション５１，７１の実行時点）よりも前において、各仮想環境５０，７０（特に７０）内の証明書保管部に外部サーバ９０向けの各検証用証明書Ｃ１，Ｃ２が格納される。
【０１１２】
その後、第１のアプリケーション５１の実行に伴って外部サーバ９０からサーバ証明書（第１のサーバ証明書）が受信される際において、当該サーバ証明書の検証処理が、第１の仮想環境５０内の第１の検証用証明書Ｃ１を用いて実行される。また、第２のアプリケーション７１の実行に伴って当該外部サーバ９０からサーバ証明書（第２のサーバ証明書）が受信される際において、当該サーバ証明書の検証処理が、第２の仮想環境７０内の第２の検証用証明書Ｃ２（詳細には、第２の検証用証明書Ｃ２として証明書保管部７２に格納された第１の検証用証明書Ｃ１）を用いて実行される。
【０１１３】
これによれば、第１実施形態と同様、複数の仮想環境における検証用証明書の管理を比較的容易に行うことが可能である。
【０１１４】
なお、上記第２実施形態においては、転送処理部５６が第１の検証用証明書Ｃ１を証明書保管部５２に格納している（ステップＳ１３）が、これに限定されず、たとえば、ステップＳ１７の直後に、証明書管理部３０が第１の検証用証明書Ｃ１を証明書保管部５２に格納してもよい。
【０１１５】
また、上記第２実施形態においては、証明書管理部３０が第３の仮想環境８０内に設けられているが、これに限定されず、証明書管理部３０は第２の仮想環境７０等に設けられてもよい。
【０１１６】
＜３．第３実施形態＞
第３実施形態は、第２実施形態等の変形例である。以下では、第２実施形態との相違点を中心に説明する。
【０１１７】
上記各実施形態においては、第１のアプリケーション５１のインストールに際して、第１の検証用証明書Ｃ１が第２の検証用証明書Ｃ２として第２の仮想環境７０に格納される態様が例示されている。
【０１１８】
この第３実施形態においては、第２の仮想環境７０のアップデート（あるいは、第２のアプリケーション７１のアップデート）に際して、第１の検証用証明書Ｃ１が第２の検証用証明書Ｃ２として第２の仮想環境７０に格納される態様が例示される。
【０１１９】
各仮想環境および／または各アプリケーションは、アップデートされることがある。たとえば、図３６にも示されるように、第２の仮想環境７０のアップデート（あるいは第２のアプリケーション７１のアップデート）が行われることがある。この際、何らかの事情によって第２の検証用証明書Ｃ２が消去されてしまうことがある。このような状況においては、従来、ユーザ（エンドユーザあるいは管理ユーザ）が第２の検証用証明書Ｃ２を再び格納する作業を行うことが求められていた。図３６は、このような比較例に係る動作を示す図である。
【０１２０】
これに対して、この第３実施形態においては、第２の仮想環境７０のアップデート直後において、第１の検証用証明書Ｃ１（換言すれば、第１の検証用証明書Ｃ１と同一の証明書）が第２の検証用証明書Ｃ２として第２の仮想環境７０内の証明書保管部７２に自動的に格納される。より詳細には、証明書管理部３０が設けられている仮想環境（第３の仮想環境８０）と同一の仮想環境（第３の仮想環境８０）に保管されていた第１の検証用証明書Ｃ１が、第２の検証用証明書Ｃ２として第２の仮想環境７０内の証明書保管部７２に自動的に格納される。以下では、このような態様について説明する。
【０１２１】
第３実施形態においては、図１８の状態から説明する。図１８は、第２の仮想環境７０のアップデート直後の状態を示す図である。図１８には、第２の仮想環境７０のアップデート直後において、当該アップデートに起因して第２の検証用証明書Ｃ２が第２の仮想環境７０（詳細には証明書保管部７２）から消去されている状態が示されている。証明書保管部７２は、第２の検証用証明書Ｃ２を保管することが可能な保管部であるものの、この時点では、当該第２の検証用証明書Ｃ２を保管していない。
【０１２２】
以下では、第２の仮想環境７０のアップデート直後において、第３の仮想環境８０内の証明書管理部３０を用いて、第１の検証用証明書Ｃ１が第２の仮想環境７０用の第２の検証用証明書Ｃ２として第２の仮想環境７０の証明書保管部７２に自動的に格納される態様について、図１７〜図２１等を参照しながら説明する。
【０１２３】
図１９および図２０は、図１８の状態以後の各時点における状態を順次に示す図である。また、図１７は、図１８〜図２０の状態遷移を纏めて示す図であり、図２１は、このような動作を示すタイミングチャートである。
【０１２４】
まず、ステップＳ３１（図２１）において、第２の仮想環境７０のアップデート処理が行われる。ここでは、当該アップデート処理に伴って、第２の検証用証明書Ｃ２が消去されたものとする（図１８も参照）。
【０１２５】
次のステップＳ３２においては、第２の仮想環境７０は、当該第２の仮想環境７０にて保管されるべき検証用証明書を証明書管理部３０に問い合わせる（図１９参照）。具体的には、第２の仮想環境７０内の送信要求部７５が、証明書管理部３０に対して、第２の仮想環境７０にて保管されるべき検証用証明書の送信要求を付与する。なお、第２のアプリケーション７１のインストールに伴って所定のモジュールが既にインストールされており、当該所定のモジュールが送信要求部７５の機能を実現するものとする。また、当該所定のモジュールは、第２の仮想環境７０のアップデート処理後においても動作するものとする。
【０１２６】
証明書管理部３０は、第２の仮想環境７０からの問合せ（送信要求）を受信する（ステップＳ３３）と、当該第２の仮想環境７０にて保管されるべき検証用証明書（たとえば、第１の検証用証明書Ｃ１）を、第３の仮想環境８０内の証明書保管部３２から取得する（ステップＳ３４）。そして、証明書管理部３０は、当該取得した検証用証明書（第１の検証用証明書Ｃ１）を第２の仮想環境７０に送信する（ステップＳ３５）。
【０１２７】
第２の仮想環境７０は、当該検証用証明書（第１の検証用証明書Ｃ１）を証明書管理部３０から受信する（ステップＳ３６）と、当該検証用証明書を第２の仮想環境７０内の証明書保管部７２に格納する（ステップＳ３７）。
【０１２８】
なお、第２の仮想環境７０にて保管されるべき検証用証明書として複数の証明書（異なる複数の外部サーバ９０向けの複数の検証用証明書）が存在する場合には、当該複数の証明書の全てが証明書管理部３０から第２の仮想環境７０へと送信され、証明書保管部７２に格納されればよい。当該複数の証明書の一部（または全部）が証明書保管部７２に既に格納されている場合には、当該複数の証明書の一部（または全部）が上書き保存されればよい。あるいは、その時点で証明書保管部７２存在しない検証用証明書のみが保存（格納）されるようにしてもよい（換言すれば、上書き保存は行われないようにしてもよい）。
【０１２９】
このようにして、第２の仮想環境７０からの問合せに応答して、外部サーバ９０向けの第２の仮想環境７０用の検証用証明書（第１の検証用証明書Ｃ１）が、証明書管理部３０から第２の仮想環境７０に送信され、当該外部サーバ９０向けの第２の仮想環境７０用の第２の検証用証明書Ｃ２として、第２の仮想環境７０（証明書保管部７２）に自動的に格納される。これにより、第２の仮想環境７０のアップデート後にサーバ証明書が実際に送信されてくる時点（第２のアプリケーション７１の実行時点）よりも前において、第２の仮想環境７０内の証明書保管部に外部サーバ９０向けの検証用証明書（第１の検証用証明書Ｃ１）が格納される。
【０１３０】
その後、第２のアプリケーション７１の実行に伴って当該外部サーバ９０からサーバ証明書が受信される際において、当該サーバ証明書の検証処理が、第２の仮想環境７０内の検証用証明書Ｃ２（検証用証明書Ｃ１）を用いて実行される。
【０１３１】
これによれば、第１実施形態と同様、複数の仮想環境における検証用証明書の管理を比較的容易に行うことが可能である。
【０１３２】
＜第３実施形態の変形例＞
なお、第３実施形態においては、第３の仮想環境８０内の証明書管理部３０によって第１の検証用証明書Ｃ１が第２の仮想環境７０に格納されているが、これに限定されず、他の仮想環境内の証明書管理部によって第１の検証用証明書Ｃ１が第２の仮想環境７０に格納されてもよい。たとえば第１の仮想環境５０内の証明書管理部３０（５３））によって第１の検証用証明書Ｃ１が第２の仮想環境７０に格納されてもよい。この場合、送信要求部７５（図１９）は、第１の仮想環境５０内の証明書管理部５３に対して、第２の仮想環境７０にて保管されるべき検証用証明書の送信要求を付与すればよい。そして、証明書管理部５３が、第２の仮想環境７０からの送信要求（問合せ）に応答して、第１の仮想環境５０内の証明書保管部５２から取得した第１の検証用証明書Ｃ１を第２の仮想環境７０に送信すればよい。
【０１３３】
このように、証明書管理部３０が設けられている仮想環境と同一の仮想環境（第１の仮想環境５０あるいは第３の仮想環境８０等）に保管されていた第１の検証用証明書Ｃ１が第２の検証用証明書Ｃ２として第２の仮想環境７０内の証明書保管部７２に自動的に格納されればよい。
【０１３４】
また、第３実施形態においては、第２の仮想環境７０のアップデート直後において上述の動作が行われているが、これに限定されず、第２のアプリケーション７１のアップデート直後において上述の動作と同様の動作が行われてもよい。
【０１３５】
また、第３実施形態においては、第２の仮想環境７０等のアップデートに際して、第１の検証用証明書Ｃ１が第２の検証用証明書Ｃ２として第２の仮想環境７０に格納されている。
【０１３６】
ただし、これに限定されず、第２の仮想環境７０のバックアップデータを用いた復元処理（次述）に際して、第１の検証用証明書Ｃ１が第２の検証用証明書Ｃ２として第２の仮想環境７０に格納されてもよい。
【０１３７】
ここにおいて、各仮想環境のバックアップデータ（バックアップイメージデータ）を用いて復元されることがある。仮想環境のバックアップ処理においては、仮想環境のほぼ全てがバックアップ対象データとされるものの、一部のデータ（たとえば検証用証明書）が除外されることがある。このようなバックアップデータを利用した復元処理（仮想環境の復元処理）が行われた場合には、復元後の仮想環境には一部のデータ（検証用証明書等）が存在しないことがある。このような状況においては、従来、ユーザ（エンドユーザあるいは管理ユーザ）が第２の検証用証明書Ｃ２（および第１の検証用証明書Ｃ１）を再び格納する作業を行うことが求められていた。
【０１３８】
これに対して、各仮想環境のバックアップデータを用いた復元処理が行われた直後において、上記第３実施形態と同様の動作（ステップＳ３２〜Ｓ３７（図２１参照））が行われるようにしてもよい。これによれば、外部サーバ９０向けの第２の仮想環境７０用の検証用証明書（第１の検証用証明書Ｃ１）が、証明書管理部３０から第２の仮想環境７０に送信され、当該外部サーバ９０向けの第２の仮想環境７０用の第２の検証用証明書Ｃ２として、第２の仮想環境７０（証明書保管部７２）に自動的に格納されるので、第３実施形態と同様の効果を得ることが可能である。
【０１３９】
＜４．第４実施形態＞
第４実施形態は、第２実施形態等の変形例である。以下では、第２実施形態との相違点を中心に説明する。
【０１４０】
第４実施形態においては、第１の検証用証明書Ｃ１の有効期限切れが生じた際（図２４参照）に、新たな第１の検証用証明書Ｃ１が取得され、当該新たな第１の検証用証明書Ｃ１が第２の検証用証明書Ｃ２として第２の仮想環境７０に格納される態様が例示される。また、当該新たな第１の検証用証明書Ｃ１は、第１の仮想環境５０にも格納される。
【０１４１】
以下では、図２２および図２３を参照しながら説明する。図２２は、第４実施形態に係る動作を示すタイミングチャートである。また、図２３は、第４実施形態に係る動作を示す概念図である。
【０１４２】
或る時点において、第１の検証用証明書Ｃ１の有効期限切れ（ステップＳ４０（図２２））が発生する（図２４も参照）と、期限切れ検出部３４は、証明書管理部３０と協働して、当該有効期限切れを検出する（図２３も参照）。そして、期限切れ検出部３４が当該有効期限切れを検出すると、更新要求部３５は、第１の検証用証明書Ｃ１の更新要求を外部サーバ９０に送信する（ステップＳ４１）。なお、期限切れ検出部３４および更新要求部３５は、第３の仮想環境８０にインストールされたプログラム（モジュール）によって実現される処理部である。
【０１４３】
更新要求部３５からの更新要求に応じて返信されてきた更新後の第１の検証用証明書Ｃ１が第３の仮想環境８０（証明書管理部３０等）によって受信される（ステップＳ４２）と、証明書管理部３０は、当該更新後の第１の検証用証明書Ｃ１を第３の仮想環境８０内の証明書保管部３２に格納する（ステップＳ４３）。
【０１４４】
その後、証明書管理部３０は、当該検証用証明書Ｃ１の送信先をデータベース２２０に基づいて決定する（ステップＳ４４）。ここでは、ステップＳ４４において、当該検証用証明書Ｃ１の送信先として、第１の仮想環境５０と第２の仮想環境７０とが決定されたものとする。
【０１４５】
証明書管理部３０は、更新後の第１の検証用証明書Ｃ１を第１の仮想環境５０に送信し（ステップＳ４５）、当該第１の検証用証明書Ｃ１を第１の仮想環境５０内の証明書保管部５２に格納する（ステップＳ４６）。
【０１４６】
また、証明書管理部３０は、更新後の第１の検証用証明書Ｃ１を第２の仮想環境７０に送信し（ステップＳ４７，Ｓ４８）、当該第１の検証用証明書Ｃ１を第２の仮想環境７０内の証明書保管部７２に格納する（ステップＳ４９）。
【０１４７】
以上のような動作によれば、第１の検証用証明書Ｃ１の有効期限切れの直後において、第１の検証用証明書Ｃ１が第２の検証用証明書Ｃ２として第２の仮想環境７０内の証明書保管部７２に自動的に格納される。また、第１の検証用証明書Ｃ１は第１の仮想環境５０内の証明書保管部５２にも自動的に格納される。したがって、複数の仮想環境における検証用証明書の管理を比較的容易に行うことが可能である。
【０１４８】
なお、上記第４実施形態においては、第３の仮想環境８０内の期限切れ検出部３４によって第１の検証用証明書Ｃ１の有効期限切れが検出され、第３の仮想環境８０内の更新要求部３５によって第１の検証用証明書Ｃ１の更新要求が外部サーバ９０に送信され、第３の仮想環境８０内の証明書管理部３０が更新後の第１の検証用証明書Ｃ１を取得しているが、これに限定されない。
【０１４９】
たとえば、図２５に示すように、第１の仮想環境５０内の期限切れ検出部５４によって第１の検証用証明書Ｃ１の有効期限切れが検出され、第１の仮想環境５０内の更新要求部５７によって第１の検証用証明書Ｃ１の更新要求が外部サーバ９０に送信されてもよい。さらに、第１の仮想環境５０内の証明書管理部５３が更新後の第１の検証用証明書Ｃ１を外部サーバ９０から取得してもよい。その後、図２５に示すように、第１実施形態（図６参照）と同様に、証明書管理部５３が更新後の第１の検証用証明書Ｃ１を第２の仮想環境７０に送信して当該第２の仮想環境７０内の証明書保管部７２に格納してもよい。同様に、証明書管理部５３が更新後の第１の検証用証明書Ｃ１を証明書保管部５２にも格納するようにしてもよい。
【０１５０】
＜５．第５実施形態＞
上記各実施形態においては、第１の仮想環境５０の構築時において第１の検証用証明書Ｃ１は第１の仮想環境５０内に未だ格納されていない（図７等参照）が、これに限定されない。たとえば、第１の仮想環境５０の構築時（たとえば、ゲストＯＳのインストール時等）において、第１の検証用証明書Ｃ１（「認証局による検証用証明書」あるいは「自己署名証明書」）が当該第１の仮想環境５０内に既に格納されていてもよい（図２６参照）。
【０１５１】
第５実施形態は、第２実施形態等の変形例である。以下では、第２実施形態との相違点を中心に説明する。
【０１５２】
第５実施形態では、図２６に示されるように、ＭＦＰ１０内にて構築された第１の仮想環境５０に対して第１のアプリケーション５１がインストールされる際に、第１の検証用証明書Ｃ１が第１の仮想環境５０内の証明書保管部５２から抽出されて取得される。その後、当該取得された第１の検証用証明書Ｃ１が第２の検証用証明書Ｃ２として第２の仮想環境７０に格納される。このような態様について、図２６〜図３０を参照しつつ説明する。なお、図２７〜図３０は、各時点における状態を順次に示す図である。また、図２６は、図２７〜図３０の状態遷移を纏めて示す図である。
【０１５３】
第５実施形態では、図２７に示すように第１の仮想環境５０の構築時点において、（第１および第２実施形態（図７参照）等とは異なり、）第１の検証用証明書Ｃ１が第１の仮想環境５０内に既に格納されている。
【０１５４】
その後、第１のアプリケーション５１がインストールが開始（図２８参照）されると、ステップＳ１２（図１６も参照）（Ｓ１２ｅ）において、第１の仮想環境５０内の転送処理部５６は、第１の仮想環境５０の証明書保管部５２内に既に格納されている検証用証明書Ｃ１を取得する。
【０１５５】
次に、転送処理部５６は、取得した検証用証明書Ｃ１を第３の仮想環境８０内の証明書管理部３０に送信し、証明書管理部３０は、受信した第１の検証用証明書Ｃ１を、証明書管理部３０の管理下の証明書保管部３２（図２９参照）に格納する（ステップＳ１４，Ｓ１５，Ｓ１６）。これにより、証明書管理部３０は、証明書保管部５２に予め格納されていた第１の検証用証明書Ｃ１を取得する。なお、第５実施形態では、第２実施形態等と異なり、ステップＳ１３の処理は実行されない。
【０１５６】
以後、第２実施形態と同様の動作が行われればよい。
【０１５７】
なお、ここでは、主に第２実施形態の変形例として説明しているが、これに限定されず、第１実施形態等に対して上記と同様の改変が施されてもよい。その場合、証明書管理部５３（図６参照）が、第１の仮想環境５０内の証明書保管部５２に予め格納されている第１の検証用証明書Ｃ１を取得し、当該取得された第１の検証用証明書Ｃ１を第２の検証用証明書Ｃ２として第２の仮想環境７０の証明書保管部７２に格納すればよい。
【０１５８】
＜６．変形例等＞
以上、この発明の実施の形態について説明したが、この発明は上記説明した内容のものに限定されるものではない。
【０１５９】
たとえば、上記各実施形態においては、２つの仮想環境５０，７０がＭＦＰ１０内に構築されているが、これに限定されず、３つ以上の仮想環境がＭＦＰ１０内に構築されてもよい。その場合には、たとえば、第１の仮想環境５０に関する第１の検証用証明書Ｃ１が、第２の仮想環境７０内の証明書保管部７２のみならず、他の仮想環境（第３仮想環境および第４仮想環境等）内の各証明書保管部に対しても、証明書管理部３０等によって自動的に格納されればよい。
【０１６０】
また、上記第１実施形態等においては、証明書管理部３０（５３）が第１のアプリケーション５１のインストールに伴って動作しているが、これに限定されない。たとえば、第１のアプリケーション５１のインストール前において既に動作していてもよい。具体的には、証明書管理部５３は、第１の仮想環境５０の構築時あるいは当該第１の仮想環境５０の構築直後等に、第１のアプリケーション５１とは別にインストールされ、その動作を開始するようにしてもよい。
【符号の説明】
【０１６１】
１  情報処理システム
１０  ＭＦＰ
３０，５３  証明書管理部
３２  （第３の仮想環境８０内の）証明書保管部
５０  第１の仮想環境
５１  第１のアプリケーション
５２  （第１の仮想環境５０内の）証明書保管部
５８  （第１の仮想環境５０内の）検証処理部
７０  第２の仮想環境
７１  第２のアプリケーション
７２  （第２の仮想環境７０内の）証明書保管部
７８  （第２の仮想環境７０内の）検証処理部
８０  第３の仮想環境
９０  外部サーバ
Ｃ１  第１の検証用証明書
Ｃ２  第２の検証用証明書
【図１】
2019075656.tif 000003
【図２】
2019075656.tif 000004
【図３】
2019075656.tif 000005
【図４】
2019075656.tif 000006
【図５】
2019075656.tif 000007
【図６】
2019075656.tif 000008
【図７】
2019075656.tif 000009
【図８】
2019075656.tif 000010
【図９】
2019075656.tif 000011
【図１０】
2019075656.tif 000012
【図１１】
2019075656.tif 000013
【図１２】
2019075656.tif 000014
【図１３】
2019075656.tif 000015
【図１４】
2019075656.tif 000016
【図１５】
2019075656.tif 000017
【図１６】
2019075656.tif 000018
【図１７】
2019075656.tif 000019
【図１８】
2019075656.tif 000020
【図１９】
2019075656.tif 000021
【図２０】
2019075656.tif 000022
【図２１】
2019075656.tif 000023
【図２２】
2019075656.tif 000024
【図２３】
2019075656.tif 000025
【図２４】
2019075656.tif 000026
【図２５】
2019075656.tif 000027
【図２６】
2019075656.tif 000028
【図２７】
2019075656.tif 000029
【図２８】
2019075656.tif 000030
【図２９】
2019075656.tif 000031
【図３０】
2019075656.tif 000032
【図３１】
2019075656.tif 000033
【図３２】
2019075656.tif 000034
【図３３】
2019075656.tif 000035
【図３４】
2019075656.tif 000036
【図３５】
2019075656.tif 000037
【図３６】
2019075656.tif 000038