(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-01-10
(45)【発行日】2025-01-21
(54)【発明の名称】分析装置、分析方法及びプログラム
(51)【国際特許分類】
G06F 8/10 20180101AFI20250114BHJP
G06F 21/57 20130101ALI20250114BHJP
【FI】
G06F8/10
G06F21/57
(21)【出願番号】P 2024111709
(22)【出願日】2024-07-11
(62)【分割の表示】P 2024095219の分割
【原出願日】2024-06-12
【審査請求日】2024-07-12
【早期審査対象出願】
(73)【特許権者】
【識別番号】523002644
【氏名又は名称】PwCビジネスアシュアランス合同会社
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】佐藤 要太郎
【審査官】円子 英紀
(56)【参考文献】
【文献】特許第3728536(JP,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/00 -8/38
G06F 8/60 -8/77
G06F 9/44 -9/445
G06F 9/451
G06F 21/57
(57)【特許請求の範囲】
【請求項1】
分析対象である分析対象ソフトウェアの指定を受け付ける受付部と、
前記分析対象ソフトウェアがインストールされた装置から、前記分析対象ソフトウェアが動作する際に用いる設定情報を取得する取得部と、
前記設定情報に基づいて、前記分析対象ソフトウェアを活用した開発及び運用行為がITシステムに関するコンプライアンス基準を満たしていることを説明可能か否かを分析する分析部と、
前記分析部による分析結果を出力する出力部と、
を有
し、
前記受付部は、分析対象である複数の分析対象ソフトウェアの指定と、前記複数の分析対象ソフトウェアを活用した開発及び運用行為を分析するための情報であって前記複数の分析対象ソフトウェアの組合せごとに定められる第2前処理情報とを受け付け、
前記取得部は、前記複数の分析対象ソフトウェアの各々がインストールされた装置から、前記複数の分析対象ソフトウェアの各々の前記設定情報を取得し、
前記分析部は、
前記複数の分析対象ソフトウェアの各々の前記設定情報を、前記設定情報に対する前処理を行う方法を分析対象ソフトウェアごとに示す第1前処理情報に基づいて分析することで、前記複数の分析対象ソフトウェアの各々における第1前処理後の設定情報を生成し、
前記第2前処理情報に基づいて、前記複数の分析対象ソフトウェアの各々における第1前処理後の設定情報を分析することで、前記複数の分析対象ソフトウェアの各々の前記第1前処理後の設定情報を集計した第2前処理後の設定情報を取得し、前記コンプライアンス基準を満たしていることを説明可能か否かの分析方法が定義された定義情報と、前記第2前処理後の設定情報とを比較することで、前記複数の分析対象ソフトウェアを活用した開発及び運用行為が前記コンプライアンス基準を満たしていることを説明可能か否かを分析する、
分析装置。
【請求項2】
前記分析部は、前記設定情報に対し前処理を行うことで、前処理後の設定情報を生成し、生成した前処理後の設定情報と、前処理後の設定情報が前記コンプライアンス基準を満たしていることを説明可能か否かの分析方法が定義された定義情報とを比較することで、前記設定情報が前記コンプライアンス基準を満たしていることを説明可能か否かを分析する、
請求項1に記載の分析装置。
【請求項3】
分析装置が行う分析方法であって、
分析対象である分析対象ソフトウェアの指定を受け付けるステップと、
前記分析対象ソフトウェアがインストールされた装置から、前記分析対象ソフトウェアが動作する際に用いる設定情報を取得するステップと、
前記設定情報に基づいて、前記分析対象ソフトウェアを活用した開発及び運用行為がITシステムに関するコンプライアンス基準を満たしていることを説明可能か否かを分析するステップと、
前記分析するステップによる分析結果を出力するステップと、
を含
み、
前記受け付けるステップは、分析対象である複数の分析対象ソフトウェアの指定と、前記複数の分析対象ソフトウェアを活用した開発及び運用行為を分析するための情報であって前記複数の分析対象ソフトウェアの組合せごとに定められる第2前処理情報とを受け付け、
前記取得するステップは、前記複数の分析対象ソフトウェアの各々がインストールされた装置から、前記複数の分析対象ソフトウェアの各々の前記設定情報を取得し、
前記分析するステップは、
前記複数の分析対象ソフトウェアの各々の前記設定情報を、前記設定情報に対する前処理を行う方法を分析対象ソフトウェアごとに示す第1前処理情報に基づいて分析することで、前記複数の分析対象ソフトウェアの各々における第1前処理後の設定情報を生成し、
前記第2前処理情報に基づいて、前記複数の分析対象ソフトウェアの各々における第1前処理後の設定情報を分析することで、前記複数の分析対象ソフトウェアの各々の前記第1前処理後の設定情報を集計した第2前処理後の設定情報を取得し、前記コンプライアンス基準を満たしていることを説明可能か否かの分析方法が定義された定義情報と、前記第2前処理後の設定情報とを比較することで、前記複数の分析対象ソフトウェアを活用した開発及び運用行為が前記コンプライアンス基準を満たしていることを説明可能か否かを分析する、
分析方法。
【請求項4】
コンピュータに、
分析対象である分析対象ソフトウェアの指定を受け付けるステップと、
前記分析対象ソフトウェアがインストールされた装置から、前記分析対象ソフトウェアが動作する際に用いる設定情報を取得するステップと、
前記設定情報に基づいて、前記分析対象ソフトウェアを活用した開発及び運用行為がITシステムに関するコンプライアンス基準を満たしていることを説明可能か否かを分析するステップと、
前記分析するステップによる分析結果を出力するステップと、
を実行させ
、
前記受け付けるステップは、分析対象である複数の分析対象ソフトウェアの指定と、前記複数の分析対象ソフトウェアを活用した開発及び運用行為を分析するための情報であって前記複数の分析対象ソフトウェアの組合せごとに定められる第2前処理情報とを受け付け、
前記取得するステップは、前記複数の分析対象ソフトウェアの各々がインストールされた装置から、前記複数の分析対象ソフトウェアの各々の前記設定情報を取得し、
前記分析するステップは、
前記複数の分析対象ソフトウェアの各々の前記設定情報を、前記設定情報に対する前処理を行う方法を分析対象ソフトウェアごとに示す第1前処理情報に基づいて分析することで、前記複数の分析対象ソフトウェアの各々における第1前処理後の設定情報を生成し、
前記第2前処理情報に基づいて、前記複数の分析対象ソフトウェアの各々における第1前処理後の設定情報を分析することで、前記複数の分析対象ソフトウェアの各々の前記第1前処理後の設定情報を集計した第2前処理後の設定情報を取得し、前記コンプライアンス基準を満たしていることを説明可能か否かの分析方法が定義された定義情報と、前記第2前処理後の設定情報とを比較することで、前記複数の分析対象ソフトウェアを活用した開発及び運用行為が前記コンプライアンス基準を満たしていることを説明可能か否かを分析する、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
現在、ITシステムの開発及び運用において遵守すべき各種のコンプライアンス基準が
公開されている。例えば非特許文献1には、財務会計システムに関するITリスク、IT
統制の仕組み及びIT統制の現状等が開示されている。また、非特許文献2には、ソース
コードのバージョン管理、成果物の生成、動作環境への配送等の一部を自動化するソフト
ウェアが示されている。
【先行技術文献】
【非特許文献】
【0003】
【文献】“IT統制とIT統制規準”, [online], 金融庁, インターネット<URL:https://www.fsa.go.jp/singi/singi_kigyou/siryou/naibu/20050310/01.pdf>
【文献】“CI/CD パイプラインにおけるセキュリティの留意点に関する技術レポート”, [online], デジタル庁, インターネット<URL: https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/e2a06143-ed29-4f1d-9c31-0f06fca67afc/33f31336/20240329_resources_standard_guidelines_guideline_01.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0004】
ITシステムを開発及び運用する企業は、様々なコンプライアンス基準を遵守すること
が求められている。また、一部の企業はITシステムの開発及び運用に複数の補助的なソ
フトウェアを活用することで省力化や作業ミスリスクの低減を図っている。しかしながら
、企業がITシステムの開発及び運用に活用するソフトウェアが備える機能は膨大であり
、更に、コンプライアンス基準で求められる要求事項は多岐に渡ることから、コンプライ
アンス基準を遵守しながらITシステムの開発及び運用を行えているかを分析するには、
膨大な稼働が必要になる。
【0005】
そこで、本発明は、ITシステムの開発及び運用に関するコンプライアンス基準を遵守
していることを自動的に分析することを可能にする技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係る分析装置は、分析対象である分析対象ソフトウェアの指定を受け
付ける受付部と、分析対象ソフトウェアがインストールされた装置から、分析対象ソフト
ウェアが動作する際に用いる設定情報を取得する取得部と、設定情報に基づいて、分析対
象ソフトウェアを活用した開発及び運用行為が、ITシステムに関するコンプライアンス
基準を満たしていることを説明可能か否かを分析する分析部と、分析部による分析結果を
出力する出力部と、を有する。
【発明の効果】
【0007】
本発明によれば、ITシステムの開発及び運用に関するコンプライアンス基準を遵守し
ていることを自動的に分析することを可能にする技術を提供することができる。
【図面の簡単な説明】
【0008】
【
図1】本実施形態に係る分析システムのシステム構成例を示す図である。
【
図2】分析装置のハードウェア構成例を示す図である。
【
図3】分析装置の機能ブロック構成例を示す図である。
【
図7】分析装置が行う処理手順の一例を示す図である。
【
図8】分析装置が行う処理手順の一例を示す図である。
【
図9】アクセス権限に関する設定情報の一例を示す図である。
【
図10】アクセス権限に関する設定情報の一例を示す図である。
【
図11】アクセス権限に関する設定情報の一例を示す図である。
【
図12】第2前処理情報の入力を受け付ける画面例を示す図である。
【発明を実施するための形態】
【0009】
添付図面を参照して、本発明の実施形態について説明する。なお、各図において、同一
の符号を付したものは、同一又は同様の構成を有する。
【0010】
<システム構成>
図1は、本実施形態に係る分析システム1のシステム構成例を示す図である。分析シス
テム1は、分析装置10と、1つ以上の情報処理装置20とを含む。分析装置10と、1
つ以上の情報処理装置20は、無線又は有線の通信ネットワークNを介して接続され、相
互に通信を行うことができる。
【0011】
分析装置10は、情報処理装置20で動作するソフトウェアが、ITシステムの開発及
び運用に関する各種のコンプライアンス基準を遵守しているか否かを分析する装置である
。分析装置10は、パーソナルコンピュータであってもよいし、1又は複数のサーバ等で
あってもよい。
【0012】
情報処理装置20は、分析対象であるソフトウェア(以下、「分析対象ソフトウェア」
という。)がインストールされているシステムである。分析対象ソフトウェアは、企業が
ITシステム(例えば、企業の社内システム、社内ツール、及び、企業が顧客にサービス
を提供するためのソフトウェア等)の開発及び運用に活用するソフトウェアである。例え
ば、ソースコードのバージョン管理ツール、ソースコードから実行可能なソフトウェアを
生成することを支援するツール、開発・運用作業を管理するツール、ITシステムへのア
クセスを制御しまた権限を管理するツールを含む。
【0013】
ITシステムに関する各種のコンプライアンス基準は、具体的な基準を定めた複数の条
文から構成されている。コンプライアンス基準は、例えば、情報セキュリティマネジメン
トシステム(ISMS)に関する規格であるISO27001及びISO27002、政府情
報システムのためのセキュリティ評価制度であるISMAP(Information system Secur
ity Management and Assessment Program)、FISC(The Center for Financial Indu
stry Information Systems)が定める金融機関等のコンピュータシステムの安全対策基準
等であるFISCガイドライン等が挙げられるが、これらに限られない。
【0014】
分析装置10は、分析対象ソフトウェアを活用した開発及び運用行為が、指定されたコ
ンプライアンス基準を満たしていることを説明可能か否かを分析し、分析結果を出力する
。より具体的には、分析装置10は、情報処理装置20から、分析対象ソフトウェアに設
定されている各種の設定情報を取得し、取得した設定情報を確認することで、分析対象ソ
フトウェアを活用した開発及び運用行為がコンプライアンス基準の条文を満たしているこ
とを説明可能か否かを分析する。分析結果は、例えば、説明可能、部分的に説明可能及び
説明不能の3パターンに分類されてもよい。説明可能とは、分析対象ソフトウェアを活用
した開発及び運用行為が、指定されたコンプライアンス基準を満たしている状態(つまり
、基準を満たしていることを第三者に説明することができる状態)を意味する。また、部
分的に説明可能とは、分析対象ソフトウェアを活用した開発及び運用行為が、指定された
コンプライアンス基準を一部満たしている状態(つまり、基準を一部満たしていることを
第三者に説明することができる状態)を意味する。また、説明不能とは、分析対象ソフト
ウェアを活用した開発及び運用行為が、指定されたコンプライアンス基準を満たしていな
い状態(つまり、基準を満たしていることを第三者に説明することができない状態)を意
味する。設定情報は、API(Application Programming Interface)を用いて取得可能
な情報であってもよいし、設定ファイルを情報処理装置20からダウンロードすることで
取得可能な情報であってもよい。なお、以下の説明において、「コンプライアンス基準を
満たしているか否か」は、「コンプライアンス基準を満たしていることを説明可能である
か否か」と同義である。同様に、「条文を満たしているか否か」は、「条文を満たしてい
ることを説明可能であるか否か」と同義である。
【0015】
例えば、セキュリティに関するコンプライアンス基準に、「管理者権限を有するユーザ
はN人以下であること」という条文が存在すると仮定する。この場合、分析装置10は、
情報処理装置20から、ユーザアカウントの権限設定に関する設定情報を取得し、取得し
た設定情報を分析することで、分析対象ソフトウェアの管理者権限を有するユーザがN人
以下であるか否かを分析する。もし、管理者権限を有するユーザがN人以下であった場合
、分析装置10は、分析対象ソフトウェアを活用した開発及び運用行為が、条文を満たし
ていると判断することができる。
【0016】
また、分析装置10は、分析対象ソフトウェアを活用した開発及び運用行為がコンプラ
イアンス基準を満たしているのか否かについて、分析対象ソフトウェアを単体で使用した
開発及び運用行為について分析を行うようにしてもよいし、複数の分析対象ソフトウェア
を使用した開発及び運用行為について分析するようにしてもよい。例えば、「管理者権限
を有するユーザは4人以下とすること」という条文が存在する場合、分析装置10は、複
数の分析対象ソフトウェアの各々から権限設定に関する設定情報を取得し、取得した複数
の設定情報を集計して分析することで、複数の分析対象ソフトウェア全体に対して管理者
権限を有するユーザが4人以下であるか否かを分析する。例えば、ソフトウェアAに対し
て管理者権限を有するユーザは、ユーザM、N及びPであり、ソフトウェアBに対して管
理者権限を有するユーザは、ユーザM、Q及びRであるとする。この場合、もしソフトウ
ェアA単体で使用した開発及び運用行為に対して分析を行う場合、ソフトウェアAで管理
者権限を有するユーザは3人(ユーザM、N及びP)であるから条文を満たしていること
になる。一方、ソフトウェアA及びBの両方を使用した開発及び運用行為に対して分析を
行う場合、ソフトウェアA又はBのいずれかで管理者権限を有するユーザは5人(ユーザ
M、N、P、Q及びR)であるから条文を満たしていないことになる。
【0017】
<ハードウェア構成>
図2は、分析装置10のハードウェア構成例を示す図である。分析装置10は、CPU
(Central Processing Unit)、GPU(Graphics Processing Unit)等のプロセッサ1
1、メモリ(例えばRAM(Random Access Memory)又はROM(Read Only Memory))
、HDD(Hard Disk Drive)及び/又はSSD(Solid State Drive)等の記憶装置12
、有線又は無線通信を行うネットワークIF(Network Interface)13、入力操作を受
け付ける入力装置14、及び情報の出力を行う出力装置15を有する。入力装置14は、
例えば、キーボード、タッチパネル、マウス及び/又はマイク等である。出力装置15は
、例えば、ディスプレイ、タッチパネル及び/又はスピーカ等である。
【0018】
<機能ブロック構成>
図3は、分析装置10の機能ブロック構成例を示す図である。分析装置10は、記憶部
100と、受付部101と、取得部102と、分析部103と、出力部104とを含む。
記憶部100は、分析装置10が備える記憶装置12を用いて実現することができる。ま
た、受付部101と、取得部102と、分析部103と、出力部104とは、分析装置1
0のプロセッサ11が、記憶装置12に記憶されたプログラムを実行することにより実現
することができる。また、当該プログラムは、記憶媒体に格納することができる。当該プ
ログラムを格納した記憶媒体は、コンピュータ読み取り可能な非一時的な記憶媒体(Non-
transitory computer-readable medium)であってもよい。非一時的な記憶媒体は特に限
定されないが、例えば、USB(Universal Serial Bus)メモリ又はCD-ROM(Comp
act Disc Read-Only Memory)等の記憶媒体であってもよい。
【0019】
記憶部100は、取得データ定義情報100a、第1前処理情報100b、条文定義情
報100c及び第2前処理情報100dを格納する。取得データ定義情報100aは、コ
ンプライアンス基準を満たしているか否かの分析を行うために、分析対象ソフトウェアか
ら取得すべき設定情報を示す。第1前処理情報100bは、分析対象ソフトウェアから取
得した設定情報に対し前処理を行う方法を定義する。具体的には、第1前処理情報100
bは、設定情報を分析に利用可能な形式のデータに変換するための処理方法や、設定情報
から分析に利用するデータを生成するための生成方法等を定義する。分析対象ソフトウェ
アから取得した設定情報は、ソフトウェア個別のフォーマットで記載されていることから
、そのままでは分析に利用することが困難である。そのため、本実施形態では、第1前処
理情報100bを用いて、設定情報に対し前処理を行うことで、コンプライアンス基準を
満たしているか否かの分析に直接利用可能なデータを生成するようにしている。
【0020】
条文定義情報100cは、コンプライアンス基準を満たしているか否かを分析する方法
をコンプライアンス基準ごと及び条文ごとに定義する。第2前処理情報100dは、複数
の分析対象ソフトウェアを活用した開発及び運用行為がコンプライアンス基準を満たして
いるか否かを分析する際に用いる情報である。第1前処理情報100bに従って変換又は
生成したデータは、あくまで分析対象ソフトウェア個々に関するデータに過ぎず、複数の
分析対象ソフトウェアを活用した開発及び運用行為がコンプライアンス基準を満たしてい
るか否かを分析する際には適さないことがある。そのため、本実施形態では、第2前処理
情報100dを用いて、第1前処理情報100bに従って変換又は生成したデータを、複
数の分析対象ソフトウェアを活用した開発及び運用行為の分析に直接利用可能なデータに
変換又は加工するようにしている。
【0021】
受付部101は、分析対象である分析対象ソフトウェアの指定を受け付ける。また受付
部101は、コンプライアンス基準に含まれる複数の条文のうち、分析する条文の指定を
受け付ける。また、受付部101は、複数の分析対象ソフトウェアの指定を受け付けるよ
うにしてもよい。
【0022】
取得部102は、分析対象ソフトウェアがインストールされた情報処理装置20(装置
)から、分析対象ソフトウェアが動作する際に用いる設定情報を取得する。また、取得部
102は、受付部101で受け付けた複数の分析対象ソフトウェアの各々がインストール
された情報処理装置20から、複数の分析対象ソフトウェアの各々の設定情報を取得する
ようにしてもよい。取得部102は、情報処理装置20又は分析対象ソフトウェアが提供
するAPIを呼び出すことで設定情報を取得するようにしてもよいし、情報処理装置20
から設定情報が記述されたファイルをダウンロードするようにしてもよい。
【0023】
分析部103は、取得部102で取得された設定情報に基づいて、分析対象ソフトウェ
アを活用した開発及び運用行為がコンプライアンス基準を満たしているか否かを分析する
。より詳細には、分析部103は、指定されたコンプライアンス基準に対応する条文定義
情報100cを、記憶部100から取得する。続いて、分析部103は、取得した設定情
報に対し、第1前処理情報100bに従って前処理を行うことで前処理後の設定情報を生
成し、生成した前処理後の設定情報と、前処理後の設定情報がコンプライアンス基準を満
たしているか否かの分析方法が定義された条文定義情報100c(定義情報)とを比較す
ることで、設定情報がコンプライアンス基準を満たしているか否かを分析する。
【0024】
また、分析部103は、複数の分析対象ソフトウェアの各々の設定情報を分析すること
で、複数の分析対象ソフトウェアの各々の設定情報に設定された設定内容を集計した評価
結果を取得し、コンプライアンス基準を満たしているか否かの分析方法が定義された条文
定義情報100c(定義情報)と、当該評価結果とを比較することで、複数の分析対象ソ
フトウェアを活用した開発及び運用行為がコンプライアンス基準を満たしているか否かを
分析する。
【0025】
出力部104は、分析部103による分析結果をディスプレイやプリンタ等に出力する
。
【0026】
図4は、取得データ定義情報100aの一例を示す図である。取得すべき設定情報は、
分析対象ソフトウェアごとに異なることから、取得データ定義情報100aは、分析対象
ソフトウェアごとに用意される。
図4のAは、ソフトウェアAに対応する取得データ定義
情報100aの例を示している。また、
図4のBは、ソフトウェアBに対応する取得デー
タ定義情報100aの例を示している。「カテゴリ」は、設定情報が属するカテゴリの種
別を示す。なお、「カテゴリ」に格納されるカテゴリの種別は、後述する
図6で説明する
コンプライアンス基準の条文の「カテゴリ」に格納されるカテゴリの種類と同一である。
図4のAの例では、「accessControlList」は、アクセス権限に関連する設定情報である
ことを意味する。「取得方法」は、設定情報を取得する方法を示す。「設定情報」は、取
得される設定情報の名称を示す。例えば
図4のAの例では、API-A1を呼び出すこと
で「accessControlList」と呼ばれる設定情報を取得することができ、API-A2を呼
び出すことで「logConfig」と呼ばれる設定情報を取得することができる。
【0027】
図5は、第1前処理情報100bの一例を示す図である。設定情報は、分析対象ソフト
ウェアごとに異なることから、第1前処理情報100bは、分析対象ソフトウェアごとに
用意される。「設定情報」は、前処理を行う対象の設定情報の名称を示す。「前処理後の
設定情報」は、設定情報を前処理することで得られるデータの内容を示す。「前処理方法
」は、設定情報を前処理することで前処理後データを生成する方法を示す。前処理は、ど
のような処理であってもよいが、例えば、設定情報から分析に必要な情報を抽出すること
、設定情報のフォーマットを他のフォーマットに変換すること等が挙げられる。
【0028】
図5のAの例では、ユーザIDの権限設定を変更する権限(権限C)を有するユーザ数
は、accessControlListにおいて、「roles/owner」、「roles/iam.roleAdmin」又は「rol
es/iam.securityAdmin」のいずれかが設定がされているユーザアカウント数をカウントす
ることで抽出できることが定義されている。
【0029】
図6は、条文定義情報100cの一例を示す図である。「カテゴリ」は、条文が属する
カテゴリの種別を表す。なお、「カテゴリ」に格納可能なカテゴリの種別の全部又は一部
は、取得データ定義情報100aの「カテゴリ」に格納可能なカテゴリの種別と同一であ
る。「分析対象データ」は、条文の分析に用いるデータの種別を示す。「分析対象データ
」に設定情報が設定されている場合、分析対象ソフトウェアから取得した設定情報(より
具体的には、前処理後の設定情報)を用いて条文の分析を行うことを意味する。また、「
分析用データ」に手入力データが設定されている場合、ユーザにより手入力されたデータ
を用いて条文の分析を行うことを意味する。条文の中には、分析対象ソフトウェアを利用
する部屋の物理的セキュリティに関する条文など、分析対象ソフトウェアから取得した設
定情報から分析を行うことができない条文が存在する。このような条文について分析を行
う場合、ユーザが回答した手入力データを用いて分析を行うことになる。
【0030】
「分析方法」は、設定情報又は手入力データをどのように分析するのかを示す。例えば
図6のAの例では、前処理後の設定情報が、権限Aを有するユーザ数が1以下であり、権
限Bを有するユーザ数が1以下であり、かつ、権限Cを有するユーザ数が1以下であると
の条件を満たしている場合、分析対象ソフトウェアを活用した開発及び運用行為は、条文
No1(アクセス権限)を遵守していることを「Green(説明可能)」である、と分
析されることが示されている。
【0031】
<処理手順>
以下、分析装置10を用いて、情報処理装置20にインストールされている1以上の分
析対象ソフトウェアを活用した開発及び運用行為について、コンプライアンス基準を満た
しているか否かの分析を行う場合の処理手順の一例を説明する。
【0032】
図7は、分析装置10が行う処理手順の一例を示す図である。また、
図9及び
図10は
、ソフトウェアAのアクセス権限に関する設定情報の一例であり、
図11は、ソフトウェ
アBのアクセス権限に関する設定情報の一例である、
図7及び
図9~
図11を用いて、分
析装置10が、分析対象ソフトウェアの設定情報を取得して前処理を行うまでの処理手順
を説明する。
【0033】
ステップS10で、受付部101は、ユーザから、開発及び運用行為に用いられる1以
上の分析対象ソフトウェアの指定を受け付ける。例えば、受付部101は、取得データ定
義情報100aに定義されているソフトウェアを抽出して画面に一覧表示させ、当該画面
に表示されたソフトウェアの一覧の中から、1以上の分析対象ソフトウェアの指定を受け
付けるようにしてもよい。
【0034】
ステップS11で、受付部101は、ユーザから、分析対象の1以上の条文の指定を受
け付ける。例えば、受付部101は、条文定義情報100cに定義されているコンプライ
アンス基準及び条文を抽出して画面に一覧表示させ、当該画面に表示された一覧の中から
、分析対象とする1以上のコンプライアンス基準及び1以上の条文を受け付けるようにし
てもよい。
【0035】
ステップS12で、分析部103は、条文定義情報100cの「分析対象データ」を参
照することで、指定された分析対象の条文の分析に用いるデータは、設定情報なのか、そ
れとも手入力データなのかを特定する。条文の分析に用いるデータが設定情報である場合
はステップS13の処理手順に進み、手入力データである場合はステップS17の処理手
順に進む。
【0036】
ステップS13で、分析部103は、分析対象ソフトウェアに対応する取得データ定義
情報100aを参照し、分析対象の条文のカテゴリに対応する設定情報及び当該設定情報
の取得方法を特定する。
【0037】
ステップS14で、取得部102は、情報処理装置20にアクセスし、ステップS13
で特定された設定情報を、特定された取得方法に従って取得する。例えば、特定された取
得方法がAPI-A1である場合、取得部102は、情報処理装置20が備えるAPI-
A1を呼び出すことで、設定情報を取得する。例えば、分析対象ソフトウェアAのアクセ
ス権限に関する設定情報を取得する場合、取得部102は、API-A1を呼び出すこと
で、分析対象ソフトウェアAから、accessControlListを取得する。また、分析対象ソフ
トウェアBのアクセス権限に関する設定情報を取得する場合、取得部102は、API-
B1を呼び出すことで、分析対象ソフトウェアBから、accessControlConfを取得する。
【0038】
ステップS15で、取得部102は、分析対象ソフトウェアに対応する第1前処理情報
100bにアクセスし、ステップS14で取得した設定情報に対応する前処理方法を取得
する。
【0039】
ステップS16で、分析部103は、ステップS14で取得した設定情報を、ステップ
S15で取得した前処理方法に従って処理することで、前処理後の設定情報(以下、「第
1前処理後の設定情報」という)を生成する。
【0040】
ここで、
図9及び
図10を用いて具体例を説明する。例えば、分析部103は、
図9及
び
図10に示すソフトウェアAの設定情報(accessControlList)について前処理を行う
場合、
図5のAに示す第1前処理情報100bにおける「accessControlList」の「前処
理方法」に基づいて、ユーザ数をカウントする。例えば
図9の例では、aaa@example.co.j
p及びbbb@example.co.jpの2つのアカウントが存在し、2つのアカウントとも、roles/ow
nerの権限を有している。同様に
図10の例では、ccc@example.co.jpの1つのアカウント
が存在し、roles/storage.objectviewerの権限を有している。したがって、分析部103
は、分析対象ソフトウェアAの設定情報(accessControlList)について、商用環境のデ
ータを参照する権限(以下、「権限A」という)を有するユーザ数は3人(aaa@example.
co.jp、bbb@example.co.jp及びccc@example.co.jp)であり、商用環境の設定を変更する
権限(以下、「権限B」という)を有するユーザ数は2人(aaa@example.co.jp及びbbb@e
xample.co.jp)であり、ユーザIDの権限設定を変更する権限(以下、「権限C」という
)を有するユーザ数は2人(aaa@example.co.jp及びbbb@example.co.jp)であることを示
す、第1前処理後の設定情報を生成する。
【0041】
また、
図11に示すソフトウェアBの設定情報(accessControlConf)について前処理
を行う場合、分析部103は、
図5のBに示す第1前処理情報100bにおける「access
ControlConf」の「前処理方法」に基づいて、ユーザ数をカウントする。例えば
図11の
例では、aaa0001、ddd1234及びeee2345の3つのアカウントが存在し、aaa0001及びddd123
4についてはadminの権限を有し、eee2345についてはreadの権限を有している。したがっ
て、分析部103は、分析対象ソフトウェアBの設定情報(accessControlConf)につい
て、権限Aを有するユーザ数は0であり、権限Bを有するユーザ数は0であり、権限Cを
有するユーザ数は2人(aaa0001及びddd1234)であることを示す、第1前処理後の設定情
報を生成する。
【0042】
ステップS17で、取得部102は、分析対象の条文を分析するために必要な手入力デ
ータの入力を受け付ける。例えば、取得部102は、
図6のBの「分析方法」で定義され
た条件を画面に表示させ、どの条件を満たしているのかをユーザに選択させることで、手
入力データの入力を受け付けるようにしてもよい。
【0043】
ステップ18で、分析装置10は、ユーザから、分析対象として受け付けた全ての条文
についてステップS12~ステップS17の処理手順を実行した場合、処理を終了する。
一方、分析装置10は、ユーザから、分析対象として受け付けた条文の一部についてステ
ップS12~ステップS17の処理手順を実行していない場合、ステップS12の処理手
順に戻り、残りの条文について、ステップS12~ステップS17の処理手順を実行する
。
【0044】
図8は、分析装置10が行う処理手順の一例を示す図である。
図8を用いて、分析装置
10が、第1前処理後の設定情報及び手入力データに基づいて分析対象ソフトウェアを活
用した開発及び運用行為の分析を行う際の処理手順を説明する。
【0045】
ステップS21で、受付部101は、ステップS10(
図7)でユーザにより指定され
た分析対象ソフトウェアが複数であるか否かを判定する。ユーザにより指定された分析対
象ソフトウェアが複数である場合、すなわち、複数の分析対象ソフトウェアを活用した開
発及び運用行為について分析を実行する場合はステップS22に進む。ユーザにより指定
された分析対象ソフトウェアが単体である場合、すなわち、分析対象ソフトウェアを単体
で使用した開発及び運用行為について分析を行う場合はステップS24に進む。
【0046】
ステップS22で、受付部101は、ユーザから、複数の分析対象ソフトウェアを活用
した開発及び運用行為について分析を行うための第2前処理情報の入力を受け付ける。ま
た、受付部101は、ユーザから入力されたデータを、記憶部100の第2前処理情報1
00dに格納する。ユーザから受け付ける第2前処理情報の内容は、開発及び運用行為に
用いられる複数の分析対象ソフトウェアの組み合わせ、及び、条文ごとに予め定められて
いてもよい。例えば、アクセス権限に関する条文の場合、第2前処理情報は、各分析対象
ソフトウェアの設定情報から特定されたアクセス権限を有する複数のユーザのうち、複数
の分析対象ソフトウェア間で共通するユーザを特定する情報であってもよい。なお、第2
前処理情報は、ユーザから入力を受け付けるのではなく、予め記憶部100に格納されて
いてもよい。
【0047】
ここで、
図12を用いて、第2前処理情報の入力を受け付ける方法の一例を具体的に説
明する。受付部101は、
図12に示す画面を用いて、ユーザから第2前処理情報の入力
を受け付けるようにしてもよい。
図12の画面は、分析対象であるソフトウェアA及びソ
フトウェアBのそれぞれについて、アカウントを有しているユーザの氏名及びアカウント
名の入力を受け付ける画面である。
図12に入力された内容によれば、ユーザAは、ソフ
トウェアAのアカウント(aaa@example.co.jp)とソフトウェアBのアカウント(aaa0001
)の両方を有している。また、ユーザBは、ソフトウェアAのアカウント(bbb@example.
co.jp)を有している。また、ユーザCは、ソフトウェアAのアカウント(ccc@example.c
o.jp)を有している。また、ユーザDは、ソフトウェアBのアカウント(ddd1234)を有
している。また、ユーザEは、ソフトウェアBのアカウント(eee2345)を有している。
【0048】
図12に入力された情報から、ソフトウェアAのアカウント(aaa@example.co.jp)と
ソフトウェアBのアカウント(aaa0001)は、同一のユーザAのアカウントであることが
わかる。このように、第2前処理情報は、複数のソフトウェアのアカウントのうち同一ユ
ーザが保有するアカウントを特定可能な情報であってもよい。
【0049】
ステップS23で、分析部103は、第2前処理情報と第1前処理後の設定情報とを用
いて、複数の分析対象ソフトウェア全体での前処理後の設定情報(以下、「第2前処理後
の設定情報」ともいう)を生成する。以下に説明する第2前処理後の設定情報は、複数の
分析対象ソフトウェアの各々の第1前処理後の設定情報を集計した情報とも言えることか
ら、「集計情報」と呼ばれてもよい。
【0050】
ステップS16(
図7)で説明した通り、
図9~
図11の例では、分析部103は、分
析対象ソフトウェアAの設定情報(accessControlList)について、権限Aを有するユー
ザ数は3人(aaa@example.co.jp、bbb@example.co.jp及びccc@example.co.jp)であり、
権限Bを有するユーザ数は2人(aaa@example.co.jp及びbbb@example.co.jp)であり、権
限Cを有するユーザ数は2人(aaa@example.co.jp及びbbb@example.co.jp)であることを
示す、第1前処理後の設定情報を生成した。また、分析部103は、分析対象ソフトウェ
アBの設定情報(accessControlConf)について、権限Aを有するユーザ数は0であり、
権限Bを有するユーザ数は0であり、権限Cを有するユーザ数は2人(aaa0001及びddd12
34)であることを示す、第1前処理後の設定情報を生成した。
【0051】
また、ステップS22で説明したとおり、第2前処理情報として、ソフトウェアAのア
カウント(aaa@example.co.jp)とソフトウェアBのアカウント(aaa0001)は、同一のユ
ーザAのアカウントであることを示す情報が入力されている。つまり、分析対象ソフトウ
ェアAで権限Cを有するaaa@example.co.jpのユーザと、分析対象ソフトウェアBで権限
Cを有するaaa0001のユーザは同一人物である。したがって、分析部103は、分析対象
ソフトウェアA及びB全体では、権限Aを有するユーザ数は3人(3+0)であり、権限
Bを有するユーザ数は2人(2+0)であり、権限Cを有するユーザ数は3人(2+2-
1)であることを示す、第2前処理後の設定情報を生成する。
【0052】
ステップS24で、分析部103は、前処理後の設定情報(第1前処理後の設定情報又
は第2と条文定義情報)と条文定義情報とに基づいて、条文に対する分析を実行する。も
し、ステップS21で、ユーザにより指定された分析対象ソフトウェアが単体である場合
、分析部103は、第1前処理後の設定情報と、分析対象の1以上の条文に対応する条文
分析情報とを比較することで、当該分析対象ソフトウェアを活用した開発及び運用行為が
条文を満たしているか否かを分析する。一方、ステップS21で、ユーザにより指定され
た分析対象ソフトウェアが複数である場合、分析部103は、第2前処理後の設定情報と
、分析対象の1以上の条文に対応する条文分析情報とを比較することで、当該複数の分析
対象ソフトウェアを活用した開発及び運用行為が条文を満たしているか否かを分析する。
例えば、ステップS23で説明した例で生成された第2前処理後の設定情報と、
図6のA
の例に示すコンプライアンス基準Aの条文No1とを比較すると、当該第2前処理後の設
定情報は、権限Cを有するユーザ数は3人であることから、Red(説明不能)に該当す
ること判断されることになる。
【0053】
ステップS25で、出力部104は、分析対象の1以上の条文に対する分析結果を出力
する。
図13に、分析結果の出力例を示す。
図13の例では、分析対象ソフトウェアA及
びBの両方を活用した開発及び運用行為が、コンプライアンス基準Aの条文No1を満た
しているか否かを分析した結果、条文に準拠していることを説明不能との分析結果が表示
されている。また、コンプライアンス基準Aの条文No2については準拠していることを
説明可能との分析結果が表示されている。
【0054】
以上説明した本実施形態において、取得データ定義情報100a、第1前処理情報10
0b、条文定義情報100c及び第2前処理情報100dが示す情報の全部又は一部は、
記憶部100に記憶されているのではなく、分析装置10のプログラムに処理ロジックと
して埋め込まれていてもよい。例えば、取得データ定義情報100aが分析装置10のプ
ログラムに処理ロジックとして埋め込まれている場合、
図7のステップS13の処理手順
において、分析部103は、当該処理ロジックにしたがって、分析対象の条文のカテゴリ
に対応する設定情報及び当該設定情報の取得方法を特定するようにしてもよい。
【0055】
<まとめ>
以上説明した実施形態によれば、分析装置10は、分析対象のソフトウェアから、当該
ソフトウェアを活用した開発及び運用行為がコンプライアンス基準を満たしているか否か
の分析に必要な設定情報を取得し、取得した設定情報を分析することで、ソフトウェアを
活用した開発及び運用行為がコンプライアンス基準を満たしているか否かを分析するよう
にした。これにより、ソフトウェアを活用した開発及び運用行為が、ITシステムに関す
るコンプライアンス基準を遵守していることを自動的に分析することが可能になる。
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定
して解釈するためのものではない。実施形態で説明したフローチャート、シーケンス、実
施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したもの
に限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構
成同士を部分的に置換し又は組み合わせることが可能である。
【符号の説明】
【0056】
1 分析システム、10 分析装置、11 プロセッサ、12 記憶装置、13 ネッ
トワークIF、14 入力装置、15 出力装置、20 情報処理装置、100 記憶部
、100a 取得データ定義情報、100b 第1前処理情報、100c 条文定義情報
、100d 第2前処理情報、101 受付部、102 取得部、103 分析部、10
4 出力部
【要約】
【課題】ITシステムに関するコンプライアンス基準を遵守していることを自動的に分析
すること。
【解決手段】分析対象である分析対象ソフトウェアの指定を受け付ける受付部と、分析対
象ソフトウェアがインストールされた装置から、分析対象ソフトウェアが動作する際に用
いる設定情報を取得する取得部と、設定情報に基づいて、分析対象ソフトウェアを活用し
た開発及び運用行為が、ITシステムに関するコンプライアンス基準を満たしていること
を説明可能か否かを分析する分析部と、分析部による分析結果を出力する出力部と、を有
する分析装置を提供する。
【選択図】
図3