(57)【特許請求の範囲】
【請求項１】
複数のセキュリティ対策方針を指定する指定部と、
該指定された複数のセキュリティ対策方針の各々について、必須に適用される一または複数の第１実装例と、選択的に適用される複数の第２実装例とを取得する取得部と、
該取得した複数の第２実装例のうち、該取得された一または複数の第１実装例を適用することで除外された複数の第２実装例の各々について、前記複数のセキュリティ対策方針のうち当該第２実装例を選択的適用の対象としているセキュリティ対策方針の数を算出し、該算出された数が多い第２実装例を当該複数の第２実装例のなかから優先的に選択することにより、前記複数のセキュリティ対策方針に適合する実装例の組み合わせを一つ決定する決定部と、
該決定された組み合わせを出力する出力部と
を有する情報処理装置。
【請求項２】
前記セキュリティ対策方針はISO/IEC１５４０８規格に従って生成される情報である
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記取得部は、前記一または複数の実装例の各々について、対応するセキュリティ対策方針の実現への貢献度を取得し、
前記決定部は、選択対象となっている複数の実装例について前記数が同じである場合、
該選択対象となっている複数の実装例についての貢献度を用いて、一つの実装例を選択する
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
セキュリティ対策方針と、当該セキュリティ対策方針に対して、必須に適用される一または複数の第１実装例と、選択的に適用される複数の第２実装例とを記憶したデータベースと、
複数のセキュリティ対策方針を指定する指定部と、
該指定された複数のセキュリティ対策方針の各々について、必須に適用される一または複数の第１実装例と、選択的に適用される複数の第２実装例とを前記データベースから取得する取得部と、
該取得された複数の第２実装例のうち、該取得された一または複数の第１実装例を適用することで除外された複数の第２実装例の各々について、前記複数のセキュリティ対策方針のうち当該第２実装例を選択的適用の対象としているセキュリティ対策方針の数を算出し、該算出された数が多い第２実装例を当該複数の第２実装例のなかから優先的に選択することにより、前記複数のセキュリティ対策方針に適合する実装例の組み合わせを一つ決定する決定部と、
該決定された組み合わせを出力する出力部と
を有する情報処理システム。
【請求項５】
複数のセキュリティ対策方針の指定を受け付けるステップと、
取得手段が、該指定された複数のセキュリティ対策方針の各々について、必須に適用される一または複数の第１実装例と、選択的に適用される複数の第２実装例とを取得するステップと、
決定手段が、該取得された複数の第２実装例のうち、該取得された一または複数の第１実装例を適用することで除外された複数の第２実装例の各々について、前記複数のセキュリティ対策方針のうち当該第２実装例を選択的適用の対象としているセキュリティ対策方針の数を算出し、該算出された数が多い第２実装例を当該複数の第２実装例のなかから優先的に選択することにより、前記複数のセキュリティ対策方針に適合する実装例の組み合わせを一つ決定するステップと、
該決定された組み合わせを出力するステップと
を有する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムにおけるセキュリティ設計を支援する技術に関する。
【背景技術】
【０００２】
システムのセキュリティ設計を行う際には、専門家がコンサルタントとしてセキュリティ設計を担当し、定められた手順を踏んで、ＳＴ（Security Target）という所定の形式に従って記載されたセキュリティ対策の指針となる文書を完成させることが一般的に行われている。セキュリティ設計を行う手法としては、例えば特許文献１に記載されたものがある。特許文献１は、代表的な国際セキュリティ基準であるISO/IEC27001（ISMS）とISO/IEC158（CC）とを統合したセキュリティ設計方法を開示する。特許文献１の発明によれば、それぞれを単独で行うよりも効率よくセキュリティ設計が可能になる。セキュリティ設計が完了すると、ISO/IEC27001（ISMS）に準拠したセキュリティ設計書とISO/IEC158（CC）に準拠したセキュリティ設計書（ＳＴ）が出力される。特許文献２、３には、セキュリティの指針の策定を支援するツールが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２５８５１２号公報
【特許文献２】特開２００４−２２０４５９号公報
【特許文献３】特開２００８−２３４４０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
策定されたＳＴ等のセキュリティの指針に従ってシステムを構築するためには、具体的な実装態様を決定する必要がある。実装態様とは、どのようなハードウェア資源を用いてどのようなタイミングでどのような仕様でどのような機能を実行するのかを指定する実装例の集合体である。ここで実装例とは、例えば、所定のアプリケーションの実行であり、所定のデータ送受信プロトコルの採用であり、その他のプロセスの実行や機能モジュールのシステムへの実装である。ここで、通常、一つのセキュリティの指針に対して採用可能な実装例は複数存在する。つまり、ある脅威（例えばコンピュータウィルスへの感染）への対策に対するアプローチは複数存在し得る。逆に、複数のセキュリティの指針の実現に対して有効であるような実装例も存在する。このような状況において、与えられたセキュリティ指針から好適な実装例（の組み合わせ）を決定するのは容易なことではない。
【０００５】
以下、図１２を用いて、上記の状況を具体例に説明する。通常、策定されたＳＴは複数のセキュリティの指針（以下、「セキュリティ対策方針」という）の組み合わせによって表現される。同図においては、セキュリティ対策方針として「O.AUTH_PEER_INFO」、「O.AUTH_PEER」、「O.AUTH_ADMIN」の３つがISO/IEC158規格に従って策定されたものと仮定している。「O.AUTH_PEER_INFO」を実現するための実装例としては、「Firewall」、「Web server構成ファイルの利用」、「SSL」、「IPsec」、「統合ログ管理ツールの導入」、「IPS」、「API内の検証」「APIエントリ・レベルでの検証」が存在すると仮定する。セキュリティ指針「O.AUTH_PEER」を実現するための実装例としては、「IPsec」、「統合ログ管理ツールの導入」、「証明書によるサーバ認証機構」が存在する。「O.AUTH_ADMIN」を実現するための実装例としては、「統合ログ管理ツールの導入」が存在する。このように、一つのセキュリティ対策方針に対して複数の実装例が対応する。さらに、実装例には、そのセキュリティ対策方針の実現に必要な実装例（以下、「必須実装例」という）と、複数のものからいずれか一つを選択すれば足りる実装例（以下、「選択的実装例」という）が存在する。同図において、必須実装例は実線で、選択的実装例は点線で、選択対象の属するグループは＃１、＃２で、それぞれ表されている。
【０００６】
同図において、「O.AUTH_PEER_INFO」に対する必須実装例は、「Firewall」、「Web server構成ファイルの利用」、「統合ログ管理ツールの導入」であり、選択的実装例は、「SSL」、「IPsec」、「IPS」、「API内の検証」、および「APIエントリ・レベルでの検証」である。「＃１」、「＃２」とあるのは、選択的実装例を構成するグループの識別子である。つまり、「O.AUTH_PEER_INFO」を実現するためには、「Firewall」、「Web server構成ファイルの利用」、「統合ログ管理ツールの導入」の３つの実装例の導入が必須であり、加えて、＃１のグループに属する「SSL」と「IPsec」のなかからいずれか一つが選択され、且つ＃２のグループに属する「IPS」、「API内の検証」「APIエントリ・レベルでの検証」からいずれか一つが選択されなければならない。逆に、実装例の側からみると、対応できるセキュリティ対策指針を複数持つもの（同図における「IPsec」）が存在しうる。
【０００７】
現状では、実装態様の決定においては、専門家の勘や経験に大きく依存している。セキュリティの専門家でない技術者が、実装例の組み合わせが数多く考えられるなかで効率的・効果的な実装例の組み合わせ（より具体的には、より少ない数の実装例でセキュリティ対策指針が実現されるような組み合わせ）を決定することは困難である。
【０００８】
なお、上記特許文献等に記載の技術は、あくまで想定される脅威に対して効果的なセキュリティ対策（同図でいえば「O.AUTH_PEER_INFO」、「O.AUTH_PEER」、「O.AUTH_ADMIN」の３つ）を決定するプロセスを支援するものであって、策定された指針から実装例を決定するプロセスを支援するものではない。
【０００９】
本発明は、セキュリティ対策方針に基づいて実装例を決定する作業を支援すること目的とする。
【課題を解決するための手段】
【００１０】
本発明は、一の態様において、複数のセキュリティ対策方針を指定する指定部と、該指定された複数のセキュリティ対策方針の各々について、必須に適用される一または複数の第１実装例と、選択的に適用される複数の第２実装例とを取得する取得部と、該取得した複数の第２実装例のうち、該取得された一または複数の第１実装例を適用することで除外された複数の第２実装例の各々について、前記複数のセキュリティ対策方針のうち当該第２実装例を選択的適用の対象としているセキュリティ対策方針の数を算出し、該算出された数が多い第２実装例を当該複数の第２実装例のなかから優先的に選択することにより、前記複数のセキュリティ対策方針に適合する実装例の組み合わせを一つ決定する決定部と、該決定された組み合わせを出力する出力部とを有する情報処理装置を提供する。
好ましい態様において、前記セキュリティ対策方針はISO/IEC１５４０８規格に従って生成される情報である。
他の好ましい態様において、前記取得部は、前記一または複数の実装例の各々について、対応するセキュリティ対策方針の実現への貢献度を取得し、前記決定部は、選択対象となっている複数の実装例について前記数が同じである場合、該選択対象となっている複数の実装例についての貢献度を用いて、一つの実装例を選択する。
更に他の好ましい態様において、前記取得部によって取得される実装例には、前記選択的に適用される一または複数の実装例に加えて、必須に適用される一または複数の実装例が含まれる。
更に他の好ましい態様において、前記決定部は、前記必須に適用される実装例を特定し、当該特定の結果適用が不要なる選択的実装例を決定することにより、当該選択的実装例については選択候補から除外する。
本発明は、他の観点において、セキュリティ対策方針と、当該セキュリティ対策方針に対して、必須に適用される一または複数の第１実装例と、選択的に適用される複数の第２実装例とを記憶したデータベースと、複数のセキュリティ対策方針を指定する指定部と、該指定された複数のセキュリティ対策方針の各々について、必須に適用される一または複数の第１実装例と、選択的に適用される複数の第２実装例とを前記データベースから取得する取得部と、該取得された複数の第２実装例のうち、該取得された一または複数の第１実装例を適用することで除外された複数の第２実装例の各々について、前記複数のセキュリティ対策方針のうち当該第２実装例を選択的適用の対象としているセキュリティ対策方針の数を算出し、該算出された数が多い第２実装例を当該複数の第２実装例のなかから優先的に選択することにより、前記複数のセキュリティ対策方針に適合する実装例の組み合わせを一つ決定する決定部と、該決定された組み合わせを出力する出力部とを有する情報処理システムを提供する。
本発明は、更に他の観点において、複数のセキュリティ対策方針の指定を受け付けるステップと、取得手段が、該指定された複数のセキュリティ対策方針の各々について、必須に適用される一または複数の第１実装例と、選択的に適用される複数の第２実装例とを取得するステップと、決定手段が、該取得された複数の第２実装例のうち、該取得された一または複数の第１実装例を適用することで除外された複数の第２実装例の各々について、前記複数のセキュリティ対策方針のうち当該第２実装例を選択的適用の対象としているセキュリティ対策方針の数を算出し、該算出された数が多い第２実装例を当該複数の第２実装例のなかから優先的に選択することにより、前記複数のセキュリティ対策方針に適合する実装例の組み合わせを一つ決定するステップと、該決定された組み合わせを出力するステップとを有する情報処理方法を提供する。
【発明の効果】
【００１１】
本発明によれば、与えられた複数のセキュリティ対策方針に適合する実装例の一つの組み合わせが決定される。
【図面の簡単な説明】
【００１２】
【図１】情報処理システム１の模式図。
【図２】端末１０の機能ブロック図。
【図３】データベース３０に格納される情報の例を表す図。
【図４】情報処理装置２０の機能ブロック図。
【図５】情報処理装置２０の動作フロー図。
【図６】セキュリティ対策方針と取得した実装例との関係を模式的に表す図
【図７】セキュリティ対策方針と必須実装例との対応関係を模式的に表す図。
【図８】必須実装例に関連する選択的実装例を選択候補から除外する処理を説明するための図。
【図９】同一グループ内の選択的実装例において選択候補を絞り込むことを説明するための図。
【図１０】選択的実装例の組み合わせパターンを示す図。
【図１１】複数の組み合わせパターンから一つを選択する処理を説明するための図。
【図１２】セキュリティ対策方針と適合する実装例との関係を説明するための図。
【発明を実施するための形態】
【００１３】
以下、図面を参照しつつ本発明の実施形態を説明する。
１．構成
図１は、本発明の一実施例に係る情報処理システム１の模式図である。情報処理システム１は、端末１０と情報処理装置２０とデータベース３０とを含む。端末１０と情報処理装置２０とデータベース３０とは、通信網４０を介して情報の送受信を行うことができるようになっている。なお、情報処理装置２０とデータベース３０は物理的に同一の装置であってもよい。
【００１４】
図２は端末１０の機能を表す図である。端末１０はパーソナルコンピュータや携帯情報端末などの情報処理装置であって、制御部１０１、通信部１０２、表示部１０３、入力部１０４および図示せぬ記憶部を含む。通信部１０２はＬＡＮカードや無線通信モジュールなどによって実現され、有線または無線により、通信網４０を介して情報処理装置２０と情報の送受信を行う。制御部１０１はＣＰＵ等のプロセッサによって実現され、通信部１０２、表示部１０３、入力部１０４および図示せぬ記憶部を制御する。
表示部１０３はディスプレイ装置であって情報処理装置２０から受信した情報を表示する。入力部１０４はキーボードやマウス等の入力手段であって、ユーザが情報や指示を制御部１０１に供給するために用いられる。上記記憶部はＲＡＭ、ＲＯＭ、ＨＤＤ等の記憶手段であって、ＯＳプログラムや入力部１０４から入力された情報や、情報処理装置２０から受信した情報等を記憶する。
端末１０において、入力部１０４を介してユーザによる複数のセキュリティ対策方針の指定がなされると、指定された複数のセキュリティ対策方針を情報処理装置２０に送信する。この複数のセキュリティ対策方針は、システムに想定される脅威に基づき、既存の手法を用いてISO/IEC15408規格に従って生成されたものである。
【００１５】
データベース３０は、各セキュリティ対策方針について、当該セキュリティ対策方針を実現するために必要な実装例とその属性とを対応付けて記憶したデータベースである。データベース３０は、情報処理装置２０からセキュリティ対策方針をキーとした問い合わせを受けつけ、当該セキュリティ対策方針に対応する実装例を特定して情報処理装置２０に送信する。
ここで、実装例とは、策定されたＳＴ等のセキュリティの指針をシステムに実装するための具体的な実装態様のことであり、どのようなハードウェア資源またはソフトウェアを用いて、どのようなタイミングで、どのような機能をコンピュータシステム内に実現させるのかを特定するものである。実装例とは、例えば、所定のアプリケーションの実行であり、所定のデータ送受信プロトコルの採用であり、その他のプロセスの実行である。属性とは、その実装例が必須実装例なのか選択的実装例なのか、および選択的実装例の場合はその属するグループを表す情報である。
【００１６】
ここで、必須実装例とは、そのセキュリティ対策方針を実現するためには必ず用いなければならない実装例である。選択的実装例とは、複数の選択的実装例で構成されるあるグループにおいて、いずれか一つ（またはそれ以上）を選択する必要があるものである。さらに、選択的実装例については、貢献度が対応付けて記憶される。貢献度とは、その実装例が用いられた場合、その関連付けられたセキュリティ対策方針の実現（すなわち、そのセキュリティ対策方針の対象となっている脅威から防御された状態となること）に対してどの程度貢献するのか、換言すれば、その実装例を採用することでどの程度の効果が見込まれるのかを表す情報である。通常、その実装例を用いれば１００％確実にセキュリティの脅威から防御されるということは考えにくく、セキュリティ対策への貢献度（その対象とする脅威からの防御効果）は実装例ごとに異なりうる。貢献度は、例えば、低いものから高いものへと順に１〜１００（ポイント）の数値で表される。貢献度の表現方法については他の方法を用いてもよい。また、数値の決定方法は、既存の技術を用いることができる。要するに、貢献度は、同一のグループ内における貢献度（効果）の相対的大きさを表す指標となっていればよい。
【００１７】
図３は、データベース３０に格納される情報の例を表す図である。セキュリティ対策「O.AUTH_PEER_INFO」には、実装例（「Firewall」、「Web server構成ファイルの利用」、「SSL」、「IPsec」、「IPS」、「API内の検証」、および「APIエントリ・レベルでの検証」）が対応付けられている。「Firewall」および「Web server構成ファイルの利用」は必須実装例であり、「SSL」および「IPsec」は＃１のグループに属する選択的実装例であり、「IPS」、「API内の検証」および「APIエントリ・レベルでの検証」は＃２のグループに属する選択的実装例である。すなわち、この例では、「O.AUTH_PEER_INFO」の実現には「Firewall」、「Web server構成ファイルの利用」の実装が必須であり、加えて＃１および＃２のグループのそれぞれから一つずつ実装例が選択されなければならない。つまり、可能な実装例の組み合わせは２＊３＝６通りある。
【００１８】
ここで、実装例「Firewall」とは、ある特定のコンピュータネットワークとその外部との通信を制御し、内部のコンピュータネットワークの安全を維持することを目的としたソフトウェア（あるいはそのソフトウェアを搭載したハードウェア）の技術を導入することを意味する。
実装例「Web server構成ファイルの利用」とは、アプリケーションやWebサイトのオプション設定（例えば（***.config）を拡張子として持つXMLファイル）を参照するようなプロセスをシステムに組み込むという意味である。
実装例「IPS」とは、通常のファイアウォールでは防ぐことができない不正アクセスから、企業のネットワークを防御する機器を導入すること、あるいは不正に細工されたパケットやエラーを含んだパケットなどがないか常に監視し、怪しい振る舞いや攻撃、不正侵入の試みを検知すると、リアルタイムに接続を遮断するなどして防御する機能をハードウェアまたはソフトウェアとしてシステムに組み込むことを意味する。
SSL（Secure Sockets Layer）とは、通信を暗号化する技術であり、実装例「SSL」とはSSLをシステムに導入することを意味する。
実装例「IPsec」（Security Architecture for Internet Protocol）とは、暗号技術を用いて、IPパケット単位でデータの改竄防止や秘匿機能を提供するプロトコルをシステム内で用いることを意味する。
API（Application Program Interface）とは、あるプラットフォーム（OSやミドルウェア）向けのソフトウェアを開発する際に使用できる命令や関数の集合のこと、もしくはそれらを利用するためのプログラム上の手続きを定めた規約の集合である。実装例「APIの検証」とは、悪意のあるまたは不正なアクセスの実行命令等がAPIに含まれていないかチェックするプロセスを導入するという意味である。実装例「APIエントリ・レベルでの検証」とは新たなユーザに対してのみAPIの検証を実行するという意味である。
なお、本実施例に記載の実装例はあくでも一例に過ぎず、任意の実装例を定義・使用することができる。
【００１９】
図４は、情報処理装置２０の機能を表す図である。情報処理装置２０は、取得部２１０、特定部２２０、および通信部２３０を含む。通信部２３０は、通信網４０を介して端末１０と情報の送受信を行う通信モジュール等によって実現され、指定部２３１および出力部２３２を含む。指定部２３１は、複数のセキュリティ対策方針を端末１０から指定されると取得部２１０に供給する。出力部２３２は、第２特定部２２２から出力された情報を端末１０に送信する。取得部２１０は、指定部２３１から供給された複数のセキュリティ対策方針の各々についてデータベース３０に問い合わせを行い、データベース３０から必須実装例および選択的実装例を取得する。取得部２１０は、取得した複数のセキュリティ対策方針と対応する実装例の情報を特定部２２０に供給する
【００２０】
特定部２２０は、プロセッサやメモリ（RAM、ROM、HDD等）によって実現される情報処理モジュールであって、第１特定部２２１および第２特定部２２２を含む。第１特定部２２１は、取得部２１０から供給された、複数のセキュリティ対策方針と、これらに対応する実装例（必須実装例および選択的実装例）とに基づいて、まず必須実装例を特定し、続いて当該特定の結果適用が不要なる選択的実装例を決定することにより、当該選択的実装例については選択候補から除外する。特定された必須実装例および選択候補として残っている選択的実装例の情報、およびこれらとセキュリティ対策方針との対応関係を特定する情報は、第２特定部２２２に供給される。
【００２１】
第２特定部２２２は、適用数評価部２２４および貢献度評価部２２３を含む。適用数評価部２２４は、特定部２２０における処理を経ても選択的実装例の組み合わせが複数考えられる場合（つまり実装例の組み合わせが一つに定まらない場合）、取得部２１０にて取得された複数の実装例の各々について、前記複数のセキュリティ対策方針のうち当該実装例を選択的適用の対象としているセキュリティ対策方針の数を算出し、該算出された数が多い実装例を当該複数の実装例のなかから優先的に選択することにより、前記複数のセキュリティ対策方針に適合する実装例の組み合わせを決定する。貢献度評価部２２３は、適用数評価部２２４の処理においても実装例の組み合わせが一つに絞れきれない場合、即ち選択対象となっている複数の実装例について前記数が同じである場合、該選択対象となっている複数の実装例についての貢献度を用いて、一つの実装例を選択する。
なお、貢献度評価部２２３における処理を経てもまだ実装例の組み合わせが一つに絞り込めない（つまり、総合貢献度が同一である組み合わせパターンが２以上ある）場合、さらに、対象となっている実装例組み合わせの中から一つの組み合わせパターンを決定する。この決定は、例えば、一つの組み合わせをランダムに選択するものであってもよいし、予め定められた他の情報（例えば個別の選択的実装例にそれぞれ付加された順位などの情報）を用いて行ってもよい。
こうして、端末１０で指定された複数のセキュリティ対策方針を満足する一つの実装例の組み合わせが最終的に決定される。決定された一つの実装例の組み合わせは出力部２３２に出力され、端末１０に出力される。
【００２２】
２．動作
図５は、情報処理装置２０にて実行される動作の一例を表す図である。同図のＳ１００において、情報処理装置２０は、端末１０にて指定された複数のセキュリティ対策方針を取得する。Ｓ２００において、指定した複数のセキュリティ対策方針と、問い合わせ要求とをデータベース３０に送信する。当該要求に対する応答としてデータベース３０から複数のセキュリティ対策方針に対応する実装例（必須実装例および選択的実装例を含む）が情報処理装置２０に提供される。
【００２３】
図６は、Ｓ２００において取得された、端末１０から指定された複数のセキュリティ対策方針と、データベース３０から取得され当該セキュリティ対策方針に対応する実装例の例を示す。同図においては、セキュリティ対策方針にはＳＴ１〜ＳＴ５が含まれており、実装例にはＩ１〜Ｉ１６が含まれる例が示されている。図１２と同様、セキュリティ対策方針と実装例との対応関係を線で表すとともに、実線は必須実装例を、点線は選択的実装例をそれぞれ表す。
【００２４】
ここで、実装例「管理者権限の及ばないマシンへの書き出し」とは、管理者権限のないユーザによって使用されている端末にはデータの書き出しを制限する機能を設けることである。「ライト・ワンス媒体を利用」とは、システム内の端末から、書き込みは一回限りだが読取りは何度でもできるようにアクセス制限機能を有する記憶媒体を利用することである。「監査証跡にタイムスタンプを付与」とは、システム内の電子データに対して証拠性を持たせるためにデータの移動があるとタイムススタンプを付与するというプロセスを導入することである。「証明書によるサーバ認証機構」とは、認証サーバが発行した電子証明書を持っているユーザ間のみでシステム内においてデータ交換を認めるというという機能を導入することである。「管理者識別認証」とは、システムのユーザで管理者権限あるか否かを判定する機能を導入することである。「利用者識別」とは、ユーザを識別する機能を導入することである。「アクセス制御の実施」とは、所定のリソースへのアクセスについて制限を設ける機能を導入することである。その他実装例については、図４で説明した内容と同一である。
【００２５】
図５のＳ３００において、Ｉ１〜Ｉ１６から不要な実装例を除外し、実装例の組み合わせを一つ決定する。具体的には、まずＳ３０２において、データベース３０から取得した実装例のうち必須実装例を全て特定する。特定された全ての必須実装例は、最終的に決定される実装例の組み合わせに必ず含まれることになる。
図７は、説明の便宜上、図６で示したセキュリティ対策方針と実装例との対応関係から、必須実装例に関する対応関係のみを示した図である。同図の例では、Ｉ１、Ｉ２、Ｉ４、Ｉ５、Ｉ１３〜Ｉ１６（「○」で示されているもの）が必須実装例として特定され、これらの実装例が採用されることが確定する。残りの選択的実装例（「？」で示されているもの）については、現時点では採用が確定していない。
【００２６】
図５のＳ３０４において、第１特定部２２１が、Ｓ３０２における必須実装例の確定に起因して、選択候補から必然的に除外されるべき選択的実装例を全て特定する。例えば、図８に示すように、ＳＴ１に関する選択的実装例のグループ＃１について、Ｉ３およびＩ４のうちいずれかが選択されるべきところ、Ｉ４は、ＳＴ４との関係において必須実装例となっているから、Ｉ４が選択されることが確定する。この結果、ＳＴ１に関してＩ３を選択する必要がなくなる。こうしてＩ３は選択候補から除外され、不採用が確定する（この状態を同図では×で示している）。
【００２７】
続いて、適用数評価部２２４にて選択的実装例の絞り込みを行う。まず、任意の一つのセキュリティ対策に着目し、当該セキュリティ対策に関する選択的実装例を特定する。図９は、同一グループ内の選択的実装例において選択候補を絞り込むことを説明するための図である。同図の例では、ＳＴ５に着目した場合に、対応する選択的実装例がＩ６、Ｉ７、Ｉ８、Ｉ９の４つあることが特定されたことを示している。なお、図が煩雑にならないよう、これらの実装例に関係のない対応関係の線は同図から捨象されている。続いて、当該選択的実装例Ｉ６、Ｉ７、Ｉ８、Ｉ９において、自身を選択候補としているセキュリティ対策方針の数を決定する。換言すれば、ＳＴ５以外にも自身を選択候補として指定しているセキュリティ対策方針があるか、あればその数（以下、「適用数」という）を決定する。同図の例では、Ｉ６およびＩ９については、ＳＴ２に対しても選択候補となっているので、適用数は「２」である。Ｉ７、Ｉ８については、ＳＴ５以外には選択候補とされていないので、当該適用数は「１」である。
【００２８】
算出された各実装例についての適用数に基づき、選択候補として残す実装例（逆にいえば、選択候補から除外する実装例）を決定する。具体的には、適用数が大きいものほど優先的に選択候補として残す（換言すると、適用数が小さいものほど優先的に選択候補から除外する）。同図の例では、Ｉ７およびＩ８は、Ｉ６やＩ９に比べて適用数が低いから、Ｉ７およびＩ８が選択候補から除外されることが決定される。Ｉ６およびＩ９については適用数が等しいので、優劣がつけられず、この段階ではいずれか一方を選択することはしない。
こうして、着目した一つのセキュリティ候補ＳＴ５に対して選択的実装例がＩ６、Ｉ９に絞り込まれた。この処理を全てのセキュリティ対策方針（ＳＴ１〜ＳＴ４）に関して繰り返す。
【００２９】
図５のＳ３０６において、Ｓ３０４における処理の結果、選択的実装例の組み合わせが唯一に決定されるか否かを判定する。組み合わせが唯一に決定される場合（Ｓ３０６：ＮＯ）、当該組み合わせが確定し、Ｓ４００にて当該組み合わせが出力される。例えば、図９のように組み合わせが唯一に決定されていない場合（Ｓ３０６：ＹＥＳ）、つまり、選択候補として残っている実装例の組み合わせパターンが複数考えられる場合、Ｓ３０８にて組み合わせを一つに絞り込む処理を行う。
図１０は、図６で示したセキュリティ対策方針と必須実装例との対応関係に基づいて、図５のＳ３０４の処理を実行した結果、考えられる選択的実装例の組み合わせパターンを示す。図６に示した選択的実装例のグループ＃１〜＃４のうち、＃１については、上述のようにＳ３０４において、Ｓ３０２における必須実装例の確定に起因して、選択候補から必然的に除外されるべき選択的実装例が特定される。また、＃３についても同様に選択候補から必然的に除外されるべき選択的実装例が特定される。よって、未確定の選択的実装例のグループが＃２、＃３の２つあり、＃２についてはＩ１０、Ｉ１１およびＩ１２が選択候補であり、＃４についてはＩ６、Ｉ９が選択候補である。よって、考えられる組み合わせパターンは２＊３＝６通りである。これらのパターン（パターン１〜６）を図１０の（ａ）〜（ｆ）にそれぞれ示した。
【００３０】
図５のＳ３０８においては、貢献度評価部２２３は、まず未確定の各選択的実装例において貢献度を特定する。ここで、複数のセキュリティ対策方針によって選択候補として指定されている場合は、各セキュリティ対策方針に関する貢献度の合計値をその実装例の貢献度と決定する。図１０に示す例のように、Ｉ６は、ＳＴ２とＳＴ５とに関して選択候補となっており、ＳＴ２に対しては貢献度「２０」が、ＳＴ５に対しては貢献度「１０」が設定されている場合、Ｉ６の貢献度は「３０」と決定される。すべての未確定の実装例について貢献度が計算されたら、各パターンについて、当該パターンを構成する未確定実装例の貢献度の合計（総合貢献度という）を計算する。
【００３１】
図１１は、複数の組み合わせパターンから一つを選択する処理を説明するための図である。同図に示すように、Ｉ６、Ｉ９、Ｉ１０、Ｉ１１、Ｉ１２についての貢献度が、それぞれ「３０」、「１０」、「３０」、「１０」、「２０」と算出されたと仮定する。そうすると、パターン１については、構成要素であるＩ６とＩ１０の貢献度の合計である「６０」が総合貢献度となる。同様に、パターン２〜６について、それぞれ「４０」、「５０」、「３０」、「３０」、「２０」が総合貢献度として算出される。このうち総合貢献度の最も大きいパターンが最終的な実装例の組み合わせとして決定される。図１１の場合は、パターン１すなわちＩ１６およびＩ１０が最終的に選択される。
【００３２】
なお、図１１の例には存在しないが、等しい総合貢献度を有する複数の組み合わせパターンが存在した場合、所定の方法でそのなかからいずれか一つのパターンを決定する。この決定は一つの組み合わせパターンをランダムに選択するものであってもよい。あるいは、組み合わせパターンを構成する実装例のうち最も大きな貢献度を有する実装例を含むパターンを選択してもよい。逆に、最も小さな貢献度を有する実装例を含むパターンが除外されるようにしてもよい。その他、貢献度を用いてその他の既存の各種統計処理を行って一の組み合わせパターンを決定することができる。
【００３３】
Ｓ４００において、決定された実装例の組み合わせが端末１０に送信される。図１１の場合、指定されたＳＴ１、ＳＴ２、ＳＴ３、ＳＴ４、ＳＴ５を全て実現するための実装例の組み合わせはＩ１、Ｉ２、Ｉ３、Ｉ４、Ｉ６、１３、Ｉ１４、Ｉ１５およびＩ１６であるという情報が出力され、端末１０のユーザに提供される。
【００３４】
上記実施例によれば、選択的実装例のうち、適合するセキュリティ対策方針の数が多い、換言すれば適用範囲が広いものが選択されるので、採用すべき実装例の数を減らすことができる。さらに、セキュリティ対策方針の数が等しい場合は、選択対象となっている実装例の組み合わせ貢献度の合計が最大となるものが選択される。よって、実装が複雑になるのを抑えつつ、セキュリティ対策方針の実現性が最も高い実装例が選択される。このように、上記実施例においては、ユーザは複数のセキュリティ対策方針を指定すれば、好適な実装例の組み合わせの提示を受けることができる。すなわち、ユーザは経験や勘によって又は手探りで、実装例の組み合わせを探る作業から解放される。このようにして、ユーザによるシステムのセキュリティ構築作業の支援が実現される。
【００３５】
３．その他の実施例
上記実施例は本発明の一例であって、適宜変形等を行うことができる。以下、変形を行う観点を例示する。
【００３６】
各セキュリティ対策方針に対応する実装例は選択的実装例のみで構成されていてもよい。この場合、図５のＳ３０２およびＳ３０４のプロセスは省略される。
【００３７】
情報処理装置２０におけるプロセスの順序として、適用数による絞込みの後に貢献度による最終特定を行う態様ではなく、先に貢献度を用いた絞り込みを行い、その後必要に応じて適用数による絞りこみを行うという態様を採用してもよい。例えば、まず、各選択的実装例の貢献度（あるいは他の選択的実装例を組み合わせた場合の貢献度の合計）が所定値以下であるものを除外する処理を行い、この処理を行っても組み合わせの選択肢が存在する場合、上述した適用数に基づく絞りこみ処理を行う。こうすれば、実装の容易さ（適用する選択された実装例の数の少なさないしシステムの簡易さ）よりもセキュリティ強化を重視したシステム設計が可能となる。すなわち、本発明においては、適用数および貢献度の少なくともいずれかの要素に基づいて選択すべき実装例の決定がなされればよい。
【００３８】
Ｓ３０８において着目すべきセキュリティ対策方針の順序に特に制限はない。例えば、演算速度向上や演算量低減の観点から望ましいのであれば、対応する選択的実装例の数が多いセキュリティ対策方針について優先的に処理を実行する。また、上述したセキュリティ対策方針や実装例の提示順序に特段の意味はない。
【００３９】
図６の例においては、セキュリティ対策方針は、各グループにつき一つの選択的実装例を選択するように指定していたが、各グループにつき２以上を選択するように指定してもよい。要するに、実装例の選択肢が２以上あるような状況であれば本発明を適用することができる。
【００４０】
図５のＳ３０８において、セキュリティ対策方針ごとに重み付け値を導入し、算出した適用数あるいは貢献度の少なくともいずれかにこの重み付け値を乗じたものを用いてもよい。例えば、ＳＴ１の確実な実現性を他のセキュリティ対策方針よりも重要視する場合、ＳＴ１のみに重み付け値「１.２」（１２０％）を設定する。すなわち、ＳＴ１に対応する実装例については、適用数や貢献度には「１．２」が乗じられて用いられる。この結果、ＳＴ１に対応する実装例が選択される可能性が上がる。
この重み付け値は、セキュリティ対策方針とともに端末１０から情報処理装置２０に送信されてもよい。あるいは、予め定めら得たアルゴリズムに従って情報処理装置２０が指定されたセキュリティ対策方針の組み合わせに基づいて設定されてもよい。
【００４１】
貢献度は、データベース３０とは異なるノードが保有しても良い。例えば、データベース３０には、図３から貢献度を除いた情報のみが記憶され、貢献度は情報処理装置２０の記憶部（図示せず）に記憶され、データベース３０から選択的実装例を取得すると情報処理装置２０は当該記憶部からそれらの貢献度を読み出す。あるいは、実装例と貢献度とを対応付けて記憶したデータベースを情報処理システム１内に設け、通信網４０を介してデータベース３０からの問い合わせに応じて貢献度の情報の提供ができるようにしてもよい。
【００４２】
本発明に係るセキュリティ対策方針の策定は、必ずしもセキュリティ規格ISO/IEC15408に従ったものである必要はない。要するに、本発明は、複数のセキュリティ対策方針からなる一つの指針が与えられ、各セキュリティ対策方針について採用しうる実装例の選択肢が存在する状況において、当該指針から採用すべき実装例の組み合わせを決定するいかなる処理においても適用することができる。
【００４３】
上述した端末１０、情報処理装置２０、データベース３０の機能構成は一例に過ぎず、本発明においては、各機能をどのようにハードウェアに実装するのかについては限定されない。一例としては、上述した情報処理装置２０の機能は、情報処理装置２０のＣＰＵがプログラムを実行することで実現される。このプログラムは、磁気記録媒体（磁気テープ、磁気ディスク（ＨＤＤ（Hard Disk Drive）、ＦＤＤ（Flexible Disk Drive））など）、光記録媒体（光ディスク（ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk））など）、光磁気記録媒体、半導体メモリなどのコンピュータ読取り可能な記録媒体に記憶した状態で提供され得る。このようなプログラムはインターネットのようなネットワーク経由でダウンロードさせることも可能である。
【００４４】
要は、本発明に係る情報処理装置は、複数のセキュリティ対策方針を指定する指定部と、該指定された複数のセキュリティ対策方針の各々について、選択的に適用される一または複数の実装例を取得する取得部と、前記取得部にて取得された複数の実装例の各々について、前記複数のセキュリティ対策方針のうち当該実装例を選択的適用の対象としているセキュリティ対策方針の数を算出し、該算出された数が多い実装例を当該複数の実装例のなかから優先的に選択することにより、前記複数のセキュリティ対策方針に適合する実装例の組み合わせを一つ決定する決定部と、該決定された組み合わせを出力する出力部とを有していればよい。
【００４５】
また、端末１０、情報処理装置２０、データベース３０の機能構成は一つのハードウェア装置に実装されてもよい。この場合、通信網４０を介さずにセキュリティ対策方針や実装例のやり取りが装置内部の機能モジュール間で行われることになる。要するに、本発明の情報処理システムは、セキュリティ対策方針と、当該セキュリティ対策方針に対して選択的に適用される一または複数の実装例を記憶するデータベースと、複数のセキュリティ対策方針を指定する指定部と、該指定された複数のセキュリティ対策方針の各々について、選択的に適用される一または複数の実装例を前記データベースから取得する取得部と、該取得された複数の実装例の各々について、前記複数のセキュリティ対策方針のうち当該実装例を選択的適用の対象としているセキュリティ対策方針の数を算出し、該算出された数が多い実装例を当該複数の実装例のなかから優先的に選択することにより、前記複数のセキュリティ対策方針に適合する実装例の組み合わせを一つ決定する決定部と、該決定された組み合わせを出力する出力部とを有していればよい。
【符号の説明】
【００４６】
１・・・情報処理システム、１０・・・端末、２０・・・情報処理装置、３０・・・データベース、４０・・・通信網、１０１・・・制御部、１０２・・・通信部、１０３・・・表示部、１０４・・・入力部、２１０・・・取得部、２２０・・・特定部、２２１・・・第１特定部、２２２・・・第２特定部、２２３・・・貢献度評価部、２２４・・・適用数評価部、２３０・・・通信部、２３１・・・指定部、２３２・・・出力部
【図１】
0005780988.tif 000002
【図２】
0005780988.tif 000003
【図３】
0005780988.tif 000004
【図４】
0005780988.tif 000005
【図５】
0005780988.tif 000006
【図６】
0005780988.tif 000007
【図７】
0005780988.tif 000008
【図８】
0005780988.tif 000009
【図９】
0005780988.tif 000010
【図１０】
0005780988.tif 000011
【図１１】
0005780988.tif 000012
【図１２】
0005780988.tif 000013