IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧

特許7574919ポリシー生成装置、ポリシー生成方法及びプログラム
<>
  • 特許-ポリシー生成装置、ポリシー生成方法及びプログラム 図1
  • 特許-ポリシー生成装置、ポリシー生成方法及びプログラム 図2
  • 特許-ポリシー生成装置、ポリシー生成方法及びプログラム 図3
  • 特許-ポリシー生成装置、ポリシー生成方法及びプログラム 図4
  • 特許-ポリシー生成装置、ポリシー生成方法及びプログラム 図5
  • 特許-ポリシー生成装置、ポリシー生成方法及びプログラム 図6
  • 特許-ポリシー生成装置、ポリシー生成方法及びプログラム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-21
(45)【発行日】2024-10-29
(54)【発明の名称】ポリシー生成装置、ポリシー生成方法及びプログラム
(51)【国際特許分類】
   G06F 21/62 20130101AFI20241022BHJP
【FI】
G06F21/62
【請求項の数】 11
(21)【出願番号】P 2023522112
(86)(22)【出願日】2021-05-20
(86)【国際出願番号】 JP2021019149
(87)【国際公開番号】W WO2022244179
(87)【国際公開日】2022-11-24
【審査請求日】2023-11-10
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】三谷 昌平
(72)【発明者】
【氏名】シン タニヤ
(72)【発明者】
【氏名】ガハテ ナクル
(72)【発明者】
【氏名】植田 啓文
【審査官】辻 勇貴
(56)【参考文献】
【文献】特開2009-296036(JP,A)
【文献】特開2009-140041(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/62
(57)【特許請求の範囲】
【請求項1】
アクセス制御に関連する複数の要素について、要素の組み合わせと単独の要素との関係を少なくとも示す、前記複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアの少なくとも1つが定義されたスコアデータと、を取得する取得手段と、
前記関係データ及びスコアデータを用いて、アクセス制御のポリシーを生成するポリシー生成手段と、を備える
ポリシー生成装置。
【請求項2】
アクセス制御に関連する複数の要素について、前記複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアの少なくとも1つが定義されたスコアデータと、を取得する取得手段と、
前記関係データ及びスコアデータを用いて、アクセス制御のポリシーを生成するポリシー生成手段と、を備え、
前記ポリシー生成手段は、アクセス制御の対象以外の対象に関する前記スコアデータを用いて、アクセス制御の対象に関するアクションを設定するポリシーを生成する、
ポリシー生成装置。
【請求項3】
前記取得手段は、人物が前記スコアデータを前記ポリシー生成装置に入力する入力手段を有する、
請求項1又は2に記載のポリシー生成装置。
【請求項4】
前記ポリシー生成手段は、一部のスコアが定義されていない前記スコアデータを用いて、前記ポリシーを生成する、
請求項1乃至3のいずれか1項に記載のポリシー生成装置。
【請求項5】
前記ポリシー生成手段は、前記ポリシーが設定するアクションが全順序集合であり、実数値で定義される前記スコアデータの各スコアに対し、前記アクションが順序同型となるように前記ポリシーを生成する、
請求項1乃至のいずれか1項に記載のポリシー生成装置。
【請求項6】
前記ポリシー生成手段は、アクセス制御の対象以外の対象に関する前記スコアデータを用いて、アクセス制御の対象に関するアクションを設定するポリシーを生成する、
請求項1、3乃至5のいずれか1項に記載のポリシー生成装置。
【請求項7】
前記ポリシー生成手段が生成した前記ポリシーを人物に提示する提示手段と、
前記ポリシーを人物が変更又は事前に固定するための入力を受け付けるポリシー設定入力手段と、をさらに備える
請求項1乃至のいずれか1項に記載のポリシー生成装置。
【請求項8】
前記ポリシー設定入力手段によって人物が変更しなかった前記ポリシーのパターンについても、前記変更の理由を推定することによって変更するポリシー変更手段をさらに備える
請求項に記載のポリシー生成装置。
【請求項9】
前記ポリシー設定入力手段によって人物が変更しなかった前記ポリシーのパターンについても、前記ポリシーを決定する重みを調整することによって変更するポリシー変更手段をさらに備える
請求項に記載のポリシー生成装置。
【請求項10】
アクセス制御に関連する複数の要素について、要素の組み合わせと単独の要素との関係を少なくとも示す、前記複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアの少なくとも1つが定義されたスコアデータと、を取得し、
前記関係データ及びスコアデータを用いて、アクセス制御のポリシーを生成する、
コンピュータが実行するポリシー生成方法。
【請求項11】
アクセス制御に関連する複数の要素について、要素の組み合わせと単独の要素との関係を少なくとも示す、前記複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアの少なくとも1つが定義されたスコアデータと、を取得し、
前記関係データ及びスコアデータを用いて、アクセス制御のポリシーを生成する、
ことをコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はポリシー生成装置、ポリシー生成方法及びプログラムが格納された非一時的なコンピュータ可読媒体に関する。
【背景技術】
【0002】
ネットワークにおけるアクセス制御は、ネットワークのセキュリティ及び必要なアクセスの維持にとって重要である。
【0003】
例えば、引用文献1には、オブジェクトグループとオブジェクトとの関係等を用いてアクセス制御ポリシーを生成し、オブジェクトへのアクセスを制御するアクセス制御実施手段毎に異なるアクセス制御リストを生成するアクセス制御システムが開示されている。このアクセス制御システムは、ファイルシステムが異なるOS(Operating System)等、アクションとの組み合わせの異なるオブジェクトが混在し、同時に多種類のアクセス制御実施手段が接続されていても、これまでと同じ方法やシステムでアクセス制御ポリシーを記述し、アクセス制御を一括して実施することを目的としている。
【先行技術文献】
【特許文献】
【0004】
【文献】特許第5424062号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
この開示は、人間の時間や労力を削減することが可能なポリシー生成装置、ポリシー生成方法及びプログラムが格納された非一時的なコンピュータ可読媒体を提供するものである。
【課題を解決するための手段】
【0006】
一実施の形態にかかるポリシー生成装置は、アクセス制御に関連する複数の要素について、複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアの少なくとも1つが定義されたスコアデータと、を取得する取得手段と、関係データ及びスコアデータを用いて、アクセス制御のポリシーを生成するポリシー生成手段を備える。
【0007】
一実施の形態にかかるポリシー生成方法は、アクセス制御に関連する複数の要素について、複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアの少なくとも1つが定義されたスコアデータと、を取得し、関係データ及びスコアデータを用いて、アクセス制御のポリシーを生成することをコンピュータが実行するものである。
【0008】
一実施の形態にかかる非一時的なコンピュータ可読媒体は、アクセス制御に関連する複数の要素について、複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアの少なくとも1つが定義されたスコアデータと、を取得し、関係データ及びスコアデータを用いて、アクセス制御のポリシーを生成することをコンピュータに実行させるプログラムが格納されたものである。
【発明の効果】
【0009】
この開示により、人間の時間や労力を削減することが可能なポリシー生成装置、ポリシー生成方法及びプログラムが格納された非一時的なコンピュータ可読媒体を提供することができる。
【図面の簡単な説明】
【0010】
図1】実施の形態1にかかるポリシー生成装置の一例を示すブロック図である。
図2】実施の形態1にかかるポリシー生成装置の処理の一例を示すフローチャートである。
図3】実施の形態2にかかるポリシー生成システムの一例を示すブロック図である。
図4】実施の形態2にかかるポリシーを生成するアルゴリズムの一例を示す概略図である。
図5】実施の形態2にかかるポリシーを示すテーブルの一例を示す概略図である。
図6】実施の形態3にかかるポリシー生成システムの一例を示すブロック図である。
図7】各実施の形態にかかる装置のハードウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【0011】
実施の形態1
以下、図面を参照してこの開示の実施の形態1について説明する。
図1は、ポリシー生成装置の一例を示すブロック図である。ポリシー生成装置10は、取得部11及びポリシー生成部12を備える。ポリシー生成装置10の各部(各手段)は、不図示の制御部(コントローラ)により制御される。以下、各部について説明する。
【0012】
取得部11は、アクセス制御に関連する複数の要素について、複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアの少なくとも1つが定義されたスコアデータを取得する。なお、取得部11は、ポリシー生成装置10の内部又は外部から情報を取得するインタフェースで構成される。取得の処理は、取得部11が自動的に実行しても良いし、手動での入力によってなされても良い。
【0013】
「アクセス制御に関連する要素」は、アクセス制御に関連する任意の情報を示すものである。要素の具体例としては、アクセス元の各種データ、接続ポート、送信先IP(Internet Protocol)アドレス、アクセスの時間帯(又は時刻)、アクセス対象のリソースIDなど、アクセス制御に関連する任意のIDや属性が含まれ得る。なお、アクセス元の各種データの具体例としては、アクセス元のIPアドレス、ユーザID、デバイスID、アプリケーションID、ユーザ位置、アクセス元の機器が使用しているOSといったものが含まれるが、これらに限られない。
【0014】
また、「アクセス制御に関連する要素」として、要素単独だけでなく、異なる要素を任意に組み合わせたものも含まれる。組み合わせの例として、(ユーザID×ユーザ位置×リソースID)という異なる属性を有する要素の組み合わせや、(送信元IPアドレス×送信先IPアドレス)のような、IPアドレスという同じ属性を有する要素の組み合わせが想定されるが、組み合わせはこれに限られない。また、組み合わせる対象の要素の数は、2以上の任意の数であって良い。以下、このような要素を、「エンティティ」とも称する。
【0015】
そして、「複数の要素間の関係を示す関係データ」は、異なる単独の要素同士の関係、要素の組み合わせと単独の要素との関係、又は異なる要素の組み合わせ同士の関係を示す。関係データは、例えば、包含関係や論理関係がバイナリで定義されたものである。
【0016】
また、「スコアデータ」は、実数値としてのスコアが設定されたデータである。「アクセスのリスクの観点に基づくスコア」は、そのアクセスが不正や誤りであった場合の損失の量や不正の生じやすさ、つまりアクセスを否認する方向に働くパラメータであり、「アクセスのニーズの観点に基づくスコア」は、そのアクセスによって得られる利益の量や利益が得られる確度、つまりアクセスを許可する方向に働くパラメータである。そのため、両者のパラメータは、属性として逆の値を有する。例えば、「アクセスのリスクの観点に基づくスコア」としてマイナスの値が設定され、「アクセスのニーズの観点に基づくスコア」としてプラスの値が設定されても良い。別の例として、「アクセスのリスクの観点に基づくスコア」として0又は0に近い値が設定され、「アクセスのニーズの観点に基づくスコア」として絶対値の大きな値が設定されても良い。以上に示した「関係データ」及び「スコアデータ」の具体例については、実施の形態2で後述する。
【0017】
ポリシー生成部12は、取得部11が取得した関係データ及びスコアデータを用いて、アクセス制御のポリシーを生成する。このポリシーを用いることにより、関係データ又はスコアデータに変更が生じるような動的な場合でも、ポリシーを自動的に再生成することによりアクセス制御が可能となる。
【0018】
図2は、ポリシー生成装置10の代表的な処理の一例を示したフローチャートであり、このフローチャートによって、ポリシー生成装置10の処理が説明される。まず、ポリシー生成装置10の取得部11は、アクセス制御に関連する複数の要素について、複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアの少なくとも1つが定義されたスコアデータを取得する(ステップS11;取得ステップ)。次に、ポリシー生成部12は、関係データ及びスコアデータを用いて、アクセス制御のポリシーを生成する(ステップS12;ポリシー生成ステップ)。
【0019】
以上のようにして、ポリシー生成装置10は、複数の要素間の関係を示す関係データと、スコアデータとを用いて、ポリシーを自動的に生成することができる。そのため、人間がポリシー自体を生成する必要がなくなり、ポリシー生成の際における人間の時間や労力を削減することが可能となる。また、アクセスのリスクあるいはニーズの少なくとも1つがスコアに反映されることで、ポリシー生成装置10は、それぞれのアクセスに伴う利益と損失とのトレードオフを定量的に評価することができる。そのため、ポリシー生成装置10は、アクセスによって得られる利益を保ちつつ、アクセスが不正や誤りであった場合の損失を小さくするようにアクセスの制御を決定することで、システムのセキュリティを維持することができる。
【0020】
実施の形態2
以下、図面を参照してこの開示の実施の形態2について説明する。実施の形態2では、実施の形態1にて説明したポリシー生成装置10の具体例を開示する。
【0021】
図3は、ゼロトラストネットワーク上におけるポリシー生成システム20の一例を示すブロック図である。ポリシー生成システム20は、入力部21、データストア22、ポリシーエンジン23、ポリシー提示部24及びポリシーエンフォーサ25を備える。以下、各部の詳細について説明する。
【0022】
入力部21は、キーボード、ボタン、マウス等、ポリシー生成システム20の管理者がデータを入力するためのインタフェースである。データストア22は、データが格納されたストレージ(記憶部)であり、ポリシー生成システム20は自動的に収集したデータをデータストア22に格納する。入力部21及びデータストア22は、実施の形態1の取得部11に対応するものであり、ポリシーエンジン23に、複数の要素間の関係を示す関係データと、アクセスのリスクの観点に基づくスコア及びアクセスのニーズの観点に基づくスコアが定義されたスコアデータを出力する。このとき、入力部21からは、管理者が手動で入力する関係データ、スコアデータの少なくともいずれかが入力され、データストア22からは、ポリシー生成システム20が自動で収集した関係データ、スコアデータの少なくともいずれかが入力されることになる。
【0023】
管理者は、入力部21から、スコアデータにおけるニーズ又はリスクのスコアを定義し、入力することができる。例えば、管理者は、アクセス元である特定のユーザについて、そのユーザが特定のリソースにアクセスするニーズ(アクセスニーズ)を設定することができる。詳細には、管理者は、複数のユーザを複数のグループに分類し、各グループの特定のリソースへのアクセスニーズを設定しても良い。一例として、管理者は、ユーザIDを「R&D」グループと「経理」グループのいずれかに分類する。そして、「R&D」グループについて、実験環境及び実験データのファイルのリソースIDへのアクセスニーズを「1」と設定し、その他のファイルのリソースIDへのアクセスニーズを「0」と設定する。また、管理者は、「経理」グループについて、決算情報のファイルのリソースIDへのアクセスニーズを「1」と設定し、その他のファイルのリソースIDへのアクセスニーズを「0」と設定する。ここで「1」は、アクセスニーズがあることを示し、「0」は、アクセスニーズが定められないことを示す。アクセスニーズがあるリソースについてのアクセスについては、アクセスニーズが定められないリソースについてのアクセスと比較して、ポリシーで許可することがより好ましい。したがって、管理者は、アクセスニーズがある場合のスコアを、アクセスニーズが定められない場合のスコアよりも高く設定する。
【0024】
また、管理者は、特定のリソースについて、ユーザIDに加えて、又はユーザIDに代えて、その他のアクセス元の各種データの観点からスコアを入力することもできる。その他のアクセス元の各種データの例は、IPアドレス、デバイスID、アプリケーションID、ユーザ位置、アクセス元の機器が使用しているOSである。例えば、管理者は、特定のユーザについて、特定の場所から特定のリソースにアクセスするニーズを、上述と同様に設定しても良い。
【0025】
さらに、管理者は、アクセス制御に関連する任意の1又は複数のエンティティについて、特定のリソースにアクセスするニーズを設定することも可能である。エンティティの具体例は、実施の形態1で説明した通りである。例えば、管理者は、特定のリソースの特定の時間帯(又は時刻)におけるリスクスコアを設定しても良い。
【0026】
さらに、管理者は、特定のリソースについて、3種類以上のスコアを設定しても良い。例えば、あるユーザAが、時間帯12:00-15:00にリソースαにアクセスするニーズがある場合、管理者はスコアを次の通り設定する。
Score(User=A, Time=12:00-15:00, Resource=α)=+1 ・・・(1)
また、ニーズを特に定めない場合は、スコアは次の通り設定される。
Score(User=A, Time=12:00-15:00, Resource=α)=0 ・・・(2)
ニーズが低い場合は、スコアは次の通り設定される。
Score(User=A, Time=12:00-15:00, Resource=α)=-1 ・・・(3)
逆に、ニーズが非常に高い場合は、管理者はスコアを次の通り設定する。
Score(User=A, Time=12:00-15:00, Resource=α)=10 ・・・(4)
このようにして、管理者は、特定のリソースの総合的なアクセスニーズを設定することができる。
【0027】
また、管理者は、特定のリソースについて、仮に不適切なアクセスが行われた場合の被害の大きさを、リスクとしてスコアで設定しても良い。例えば、管理者は、リソースの重要度が大きくなるほど、スコアの絶対値を大きく設定することができる。
【0028】
なお、管理者が入力しなかったスコアについては、ポリシー生成システム20は、スコアを自動的にデフォルト値(例えば0)とする。スコアがデフォルト値となった場合でも、ポリシーエンジン23が生成したポリシーにおいて、一律にアクセスの認可又は否認はされない。この点については後述する。
【0029】
一方、データストア22には、ポリシー生成システム20に関して機械的に収集されたデータが格納される。このデータは、関係データ及びスコアデータを含む。また、このデータは、脅威インテリジェンス、アセットデータベース、インベントリ、運用ニーズ、承認、リソースの感度、認証サーバ、監査ソフトウェア又はセンサ、IDS(Intrusion Detection System)、CDM(Continuous Diagnostics and Mitigation)、SIEM(Security Information and Event Management)、NWDAF(Network Data Analytics Function)、活動ログ、IDマネジメント、PKI(Public Key Infrastructure)、インダストリーコンプライアンス、リスク分析システム、その他利用可能な様々な1又は複数の情報源に関するデータである。これらの情報源は、ゼロトラストネットワーク上に位置しても良いし、ゼロトラストネットワーク外に位置していても良い。また、監査ソフトウェア又はセンサは、デバイス上に設けられていても良い。
【0030】
なお、監査ソフトウェアは、例えばセキュリティ又はアセット管理の少なくともいずれかについてのソフトウェアである。センサは、例えばGPS(Global Positioning System)センサ、人感センサ又は温度センサの少なくともいずれかであり、実際には建物に設けられていても良い。
【0031】
脅威インテリジェンスに関しては、セキュリティ機関が提供する脅威情報及び脆弱性情報、また、システムの脅威分析により発見された脆弱性情報に関するデータが用いられても良い。セキュリティ機関が提供する脅威情報は、例えば、脅威が疑われるIPアドレス、デバイスID、アプリケーション、プロセス、通信のシグネチャ又は製造元、ユーザ又はネットワークの挙動、リソースID、リソースの場所等に関する。セキュリティ機関が提供する脆弱性情報は、例えば、OSや製造元等のデバイス情報、プロトコル、暗号化又は認証方式、バージョン等のアプリケーション情報、又はそれらの任意の組み合わせ等に関する。システムの脅威分析により発見された脆弱性情報は、例えば、デバイスID、IPアドレス、アプリケーション、特定の操作に伴うコマンドのIDや通信経路に関する。また、この脆弱性情報は、特定のデバイスに特定のポートでアクセスするという組み合わせ、特定のOSで特定のアプリケーションを利用するという組み合わせ、又は、アクセス権限変更のような特定の操作履歴のもとで、個人情報又はIoT(Internet of Things)機器といった特定のリソースにアクセスするという組み合わせの情報等についても含んでいても良い。これらの情報は、アクセスの認可についてマイナスの寄与を生じさせるものである。
【0032】
また、認証サーバからは、認証履歴として、ユーザ、デバイス、アプリケーションなどの認証方式、認証の失敗回数、前回の認証における成功からの経過時間、認証時の挙動や認証時刻、認証がなされたユーザ位置等のデータがデータストア22に格納されても良い。例えば、前回の認証における成功からの経過時間が長いほど、リスクが高いことを示すスコアが設定される。また、IDSからは、ネットワークにおけるサブネットアドレス、IPアドレス、ポート、アプリケーション、デバイスなどの怪しい挙動・シグネチャ等のデータがデータストア22に格納されても良い。
【0033】
リスク分析システムからは、各種のリスクに関するデータがデータストア22に格納されても良い。さらに、データストア22には、ニーズに関するスコアとして、特定のユーザ間の通信履歴によるアクセスニーズが格納されても良い。また、データストア22には、リスクスコアとして、ユーザ、デバイス、アプリケーション、IPアドレス若しくはその他のエンティティのID、又はそれらの任意の組み合わせ等が信頼できる度合いを示す信頼スコアが格納されても良い。この信頼スコアは、例えば異常検知エンジンにおける異常検知や、安全な認証方式で認証に成功した認証履歴等を用いて算出されたものであり、この算出自体は、ゼロトラストネットワークのトラストエンジン等、図示しない手段でなされても良い。あるエンティティの挙動がセキュリティ上疑わしいものである場合には、そのエンティティには低い信頼スコアがつけられることになる。
【0034】
以下に、具体的なスコアの数値を列挙する。例えば、アクセス元とアクセス先の間の通信履歴から判断したニーズスコアとして、以下の値が設定される。
Score(SrcIP=192.168.1.10, DstIP=192.168.1.1)=+0.5 ・・・(5)
Score_2(User=B, Time=12:00-15:00, Resource=β)=+1.5 ・・・(6)
(5)は、送信元のIPアドレスと送信先のIPアドレスに関するスコアであり、(6)は、送信元のユーザ、時間帯及びリソースに関するスコアである。なお、(6)は、(1)~(4)と同じエンティティに関するスコアであるが、(1)~(4)と区別するために、異なる種類のスコアとして設定されている。
【0035】
その他、送信元の機器のOSと送信元のブラウザに関するスコアとして、次のようなものが設定されても良い。
Score(OS=***.ver.19.01, Application=***)=-1 ・・・(7)
さらに、ユーザに関するスコアとして、次のようなものが設定されても良い。
Score(User=C)=-2 ・・・(8)
【0036】
なお、例えば情報源からの出力が異常度のような実数の場合、データストア22はその出力値をそのまま格納しても良い。後述のポリシーエンジン23は、その出力値をそのままスコアとして利用することができるからである。また、情報源からの出力が脅威の有無のような離散的な情報である場合、脅威がある場合が「-1」、ない場合が「0」のように、スコアの値が2値の固定値として設定されても良い。あるいは、脅威レベルに応じて、その脅威レベルを示すスコアが0,-1,-2,-3,・・・のように3段階以上の値として設定されても良い。また、スコアには、必要に応じて正規化処理がなされても良い。以上に示した数値の設定又は正規化処理は、データストア22に格納する際になされても良いし、ポリシーエンジン23がポリシー生成の処理の際に実行しても良い。
【0037】
また、データストア22には、機械的に収集された、現在の関係を示す関係データが格納されている。関係データは、例えば、あるデータ等のリソースに対してどのアプリケーション又はポートがアクセスするか、ユーザがどのデバイスを使っており、デバイスにどのIPアドレスが割り当てられているか、デバイス間のトポロジー、通信頻度等を示すデータである。
【0038】
以下に、関係データの具体例を列挙する。例えば、ユーザAがデバイス1を使っているが、デバイス2は使っていない場合、関係データは次の通りになる。
relation((User=A),(Device=1))=True,
relation((User=A),(Device=2))=False ・・・(9)
また、リソースrにアクセスするために、ポート1000を使用し、ポート2000は使用されない場合、関係データは次の通りになる。
relation((Resource=r),(Port=1000))=True,
relation((Resource=r),(Port=2000))=False ・・・(10)
また、ユーザAと、ユーザA及びリソースαとの組に関する組み合わせの間の包含関係について、関係データの例は次の通りになる。
relation((User=A, Resource=α), (Resource=α))=True,
relation((User=A, Resource=α), (Resource=β))=False ・・・(11)
以上と同様に、True又はFalseにより、全ての関係性が表される。データストア22は、これらの関係情報を、認証サーバやアセットデータベース、インベントリ等から取得することができる。
【0039】
また、上記に示した関係データを用いることで、ポリシー生成システム20は、新たな関係データを算出することができる。例えば、アクセス元ユーザがA、アクセス先リソースがrで、AはIPアドレスとして192.168.1.10を使っており、リソースrがIPアドレス192.168.1.1に位置する場合、新しい関係データが次のように算出できる。
relation((User=A, Resource=r),(SrcIP=192.168.1.10, DstIP=192.168.1.1))=True,
relation((User=A, Resource=r),(SrcIP=192.168.1.10, DstIP=192.168.1.2))=False
・・・(12)
【0040】
以上のようにして、データストア22は、任意のエンティティについてのスコアデータ及び関係データを取得することができる。なお、設定されなかったスコアについては、入力部21の場合と同様に、ポリシー生成システム20は、スコアを自動的にデフォルト値(例えば0)とする。
【0041】
ポリシーエンジン23は、実施の形態1のポリシー生成部12に対応し、入力部21及びデータストア22から出力されたスコアデータ及び関係データを用いて、ポリシー生成アルゴリズムに基づき、認可アルゴリズムとしてのポリシーを生成する。ここで、あるアクセスに関して、そのアクセス元及びアクセス先のエンティティであるIPアドレス、ポートといったアクセス制御の対象を対象tとし、上述のスコアデータ及び関係データを各対象tのアクセス制御の仕方を決めるための条件cと設定する。この場合、ポリシーは、各対象tに対するアクセスの認可、承認待ち、否認といったアクセス制御の仕方の一覧である。ポリシーは、次のようなモデル関数fθにより算出されるアクションスコアと、具体的なアクセス制御の仕方(アクション)とを対応付けることで決定されるものである。
fθ (t,c)=a ・・・(13)
条件cには、上述の通り、管理者が定義したスコアデータが含まれている。
【0042】
なお、適切なモデル関数fθを生成するためには、リスクが上がった場合、又はニーズが下がった場合に、管理者の意図を反映して、アクセス制御のアクションを厳しくするという必要条件が存在する。
【0043】
ポリシーエンジン23は、前記必要条件を満たすため、スコアに対して単調(Monotonic)なモデル関数fθを生成する。モデル関数fθが単調であり、ポリシーが設定するアクションが全順序集合であることにより、実数値で定義されるスコアデータの各スコアに対し、アクションが順序同型となる。単調となる関数の例として、ここでは非負の数による重み付き和が用いられた関数を定義して説明するが、関数はこれに限られない。これにより、ニーズが下がった場合又はリスクが上がった場合に、アクションがアクセスを許可しない方向に変化することから、上述の必要条件は満たされる。
【0044】
図4は、ポリシーエンジン23がポリシーを生成するアルゴリズムの一例を示すイメージ図である。図4上部のginにおける黒丸は各条件cに関するスコア、goutにおける黒丸は、各対象tを示す。ginの左側は、各デバイスi(i=1~デバイス数)のリスク(当該デバイスが不正にアクセスされることの危険性、信頼の低さ)スコアを示し、ginの右側は、2個のエンティティの組み合わせである(ユーザi,リソースj)のニーズスコアを示す。前者は、スコアの意味を表すラベルγによって、当該スコアがデバイスのリスクを表すことを特定し、当該スコアは一階テンソルで表現される。後者は、スコアの意味を表すラベルγによって、ユーザがリソースへアクセスするニーズを当該スコアが表すことを特定し、当該スコアは二階テンソルで表現される。つまり、γは、あるスコアにおけるエンティティの個数を示すとともに、スコアがどのようなものであるか、その種類を示している。
【0045】
なお、図4においては、一階テンソルの一部の成分が+1の値を有し、二階テンソルの一部の成分が0の値を有することが示されている。この0の値は、上述の通り、リスク又はニーズの少なくともいずれかについてスコアが定義されない場合に設定される値である。また、脅威が存在するなど、アクセスにリスクが生じるような場合には、スコアの成分はマイナスの値となる。
【0046】
また、図4のgoutの黒丸は、詳細には、各対象tに対してどのようなアクセス制御の仕方(アクション)を行うかを示すスコアである、アクションスコアaの出力を示す。図4には、例として、対象 (IP1,ポート1)のアクションスコアa1’,1’と、対象 (IP4,ポート1)のアクションスコアa4’,1’が示されている。
【0047】
図4にて、ginの黒丸とgoutの黒丸の関連性を示すのがモデル関数fθであり、ginとgoutの間の矢印の有無は、関係データによって示される関係を表す。さらに、ginとgoutとの矢印間の結びつきの度合いを示す重みwγは、上述の各条件cに関するスコアの意味を表すラベルγ毎に、ポリシーエンジン23が設定する。例えば、γ=2が、ユーザがリソースへアクセスするニーズを表す場合、重みwγ=2は、((IP,ポート),(ユーザ,リソース))の組み合わせで示される四階テンソルで表現される。重みwγは、例えば、ラベルγによって表されるリスク又はニーズのスコアが、不正なアクセスによって引き起こされる損失又はアクセスの認可によって得られる利益に寄与する度合いの推定値である。
【0048】
以上に基づくと、対象(IP1~IPL)に関するアクションスコアaは、次の式で表される。
【数14】
・・・(14)
(14)式の右辺における
【数15】
・・・(15)
は、入力関数ginに、次元γのテンソルで表されたスコアの各成分xが入力されることを示す。また、(14)式右辺におけるrγは、次元γにおけるエンティティ同士の関係を示し、
【数16】
・・・(16)
のように設定される。r=0はエンティティ同士が無関係であることを示し、r=1はエンティティ同士が関係を有することを示す。さらに、(14)式の右辺におけるwγは、次元γにおける重みパラメータであり、ポリシーエンジン23が学習をすることにより決定される。次元γは、上述の通り、スコアの種類を示す。
【0049】
(14)式の左辺は、ポリシー計算の結果得られたアクションスコアaであり、ポリシーエンジン23はアクションスコアaと、1種類以上の閾値thとの大小関係により、ある対象に対しての離散化されたアクションを決定する。一例として、アクションスコアがaであり、aが0以上1以下の値を取り得る値であって、アクションがアクセスの認可(Accept)、承認待ち(Wait)、否認(Drop)の3種類を取り得る場合、ポリシーエンジン23は、アクションを次のように決定する。
【数17】
・・・(17)
(17)式において、認可と承認待ちとを分ける閾値thは2/3であり、承認待ちと否認とを分ける閾値thは1/3である。このように、ポリシーエンジン23は、アクションスコアが小さい値となるほど、アクセスを許可しない方向にアクションを決定する。
【0050】
以上に示したアルゴリズムでは、スコアデータにおけるスコアをテンソル形式で表現している。この形式は、任意の次元γに対して拡張性を有するため、任意の個数のエンティティの組み合わせを表現することができる。
【0051】
また、リスク又はニーズの少なくともいずれかについてスコアが定義されない場合に、アルゴリズムは、スコアとして0を設定することができる。
【0052】
さらに、(14)式で示す通り、モデル関数fθは単調な関数である。かつ、アルゴリズムでは、アクションスコアが減少するほど、適用されるアクションがアクセスを認めないような閾値thが設定される。
【0053】
また、ポリシーエンジン23は、入力部21及びデータストア22からのデータに基づいて条件cを特定した上で、その条件下で様々な対象tに対するアクションを列挙して生成することができる。そのため、ポリシーエンジン23は、ポリシーエンフォースメント時(及びポリシー生成時)において、ポリシーエンフォーサ25とのアクセスデータの送受信をする必要がない。入力部21及びデータストア22からのデータが時間的に変化する場合であっても、ポリシーエンジン23は、当該変化に応じてアクションスコアを再計算し、ポリシーを再生成してポリシーエンフォーサ25へ一方的に送信する。これにより、各アクセスに対するポリシーエンフォースメントはポリシーエンフォーサ25の内部で完結することができる。
【0054】
また、ポリシーエンジン23は、管理者が学習などによって重みwγを調整することにより、管理者の意図をポリシー生成の仕方、換言すればリスクとニーズの間のトレードオフの取り方に反映することができる。したがって、入力部21及びデータストア22から入力されるデータが同じであっても、デバイスのリスク回避とアクセスニーズを満足することを同程度に実現するポリシーだけでなく、デバイスのリスク回避をより優先したポリシーや、アクセスニーズを満足することをより優先したポリシーなど、様々な意図やセキュリティ戦略に基づく異なるポリシーを生成することができる。
【0055】
図3に戻り、説明を続ける。ポリシーエンジン23は、生成したポリシーをポリシー提示部24及びポリシーエンフォーサ25に出力する。なお、ポリシーエンジン23は、例えばACL(Access Control List)又はアクセスプロキシの形でポリシーを出力しても良いが、出力する形式はこれらに限られない。
【0056】
ポリシー提示部24は、ポリシーエンジン23で生成されたポリシーを管理者に提示するインタフェースであり、例えば、ディスプレイ等の表示部を有する。ポリシーエンフォーサ25は、生成されたポリシーに従ってネットワーク上のアクセスを実際に制御する。
【0057】
(計算例)
以上のポリシー生成システム20の説明に基づき、具体的な値を用いたポリシー生成のアルゴリズム計算例について以下で説明する。
【0058】
まず、計算の前提について定義する。ここでは、エンティティとして、ユーザID、デバイス、アプリケーション、リソース、IPアドレス、ポートを例示する。また、この例において、ポリシーエンジン23は、(送信元IPアドレス、送信先IPアドレス、送信先ポート)→Actionという、IPアドレス及びポートベースのACL形式でポリシーを出力する。この形式において、括弧内のエンティティが上述の対象tである。また、Actionは、認可、承認待ち、否認のいずれかを取り得るとする。
【0059】
また、スコアとして、情報源を参照して自動的に更新されるものをScore(User),Score(Device),Score(Application),Score(IP),Score(Port),Score(Device,Application),Score(SrcIP,DstIP)とする。これらのスコアは、認証履歴、異常検知履歴、脆弱性情報、通信履歴等によってデータストア22によって生成される。また、入力部21を用いて人が定義するスコアを、Score(User,Resource) とする。このスコアは、ユーザがリソースにアクセスするニーズを示す。
【0060】
また、次元γはこの例で1~8までの値を有しており、ポリシー生成アルゴリズムの重みパラメータwγは、以下の式(18)のように設定される。
【数18】

・・・(18)
【0061】
また、データストア22は、関係データとして、ユーザIDとデバイス間、リソースとデバイス間、デバイスとIPアドレス間、リソースとポート間の全てのエンティティの組み合わせに対する、True/Falseを取得する。ただし、データストア22は、Trueを取得し、取得していないその他のデータについてFalseを定義しても良い。
【0062】
ポリシーエンジン23は、以上の取得情報に基づいて、上述の計算を実行し、ACL形式のポリシーを更新する。この例において、ポリシーエンジン23は、(SrcIp=192.168.1.10,DstIP=192.168.1.1,DstPort=1000)のアクセスに対して取るべき、最新のActionを計算する。
【0063】
まず、ポリシーエンジン23は、関係データに基づき、(SrcIP=192.168.1.10,DstIP=192.168.1.1,DstPort=1000)に関係する集合を取得する。取得する集合は、ユーザの集合、デバイスの集合、アプリケーションの集合、IPアドレスの集合、ポートの集合、(デバイス,アプリケーション)の集合、(SrcIP,DstIP)の集合、(ユーザ,リソース)の集合である。
【0064】
具体的には、ユーザ=A、ポート1000を使用するアプリケーション、IP=192.168.1.10及び192.168.1.1、(ユーザ=A,リソース=r)、 (SrcIP=192.168.1.10,DstIP=192.168.1.1)の集合に関して、式(16)で示した関係rが1となり、その他の集合については、関係rは0となる。
【0065】
以上に基づき、アクションスコアは、式(18)で示された重みパラメータwγを用いると、次のように計算される。
Action Score = Score(User=A)* wγ=1 + Score(Device=1) * wγ=2+ …
+ Score(SrcIP=192.168.1.10, DstIP=192.168.1.1) * wγ=7
+ Score (User=A, Resource=r) * wγ=8
= (-1)* 1 - 1 * 2 + … +1 * 0.5 + 1 * 1 = -1.5 ・・・(19)
ここで、単調の関数goutとして
【数20】
・・・(20)
を用い、アクションの決定基準として式(17)を用いると、
gout (-1.5) < 1/3 ・・・(21)
となり、このアクセスは否認される。
【0066】
ポリシーエンジン23は、同様にして、全てのSrcIP,DstIP,Portに対するアクションを生成し、ACL形式で列挙することができる。図5は、そのようなACL形式のポリシーを例示したテーブルである。図5では、(SrcIP=192.168.1.10,DstIP=192.168.1.1)であり、SrcPortが任意、DstPortが22、80、443の場合のポリシーが示されている。DstPortが22、80、443の場合のそれぞれのスコアは0.11、0.6、0.81なので、それぞれのアクションは認可、承認待ち、否認となる。
【0067】
また、ポリシーエンジン23は、あらかじめアクションを生成するのではなく、アクセスの検出時に、そのアクセスに対するアクションをアクセスプロキシとして計算することもできる。ポリシーエンジン23は、入力されるデータの時間変化に応じて、出力するポリシーを変化させることができる。
【0068】
近年、ゼロトラストネットワークの技術が進展することで、当該ネットワークにおけるアクセス制御の重要性が増している。ゼロトラストネットワークは、例えば、会社や自治体等で用いられるローカル5G(5th Generation)において適用することができる。
【0069】
ゼロトラストネットワークは、全てのデバイスからのアクセスについてセキュリティに関するスコアを算定し、そのアクセスを許可するか否かを決定するものである。これにより、ネットワーク内部に脅威が侵入しても、その脅威が重要なファイルにアクセスすることを防止し、被害の拡大を防ぐことができる。また、ゼロトラストネットワークは、ネットワーク外部からのアクセスについても、一概に遮断するのではなく、上述のスコア算定に基づく判定をすることで、信頼できるアクセスについては許可することができる。そのため、ネットワークの安全性と可用性を両立させることができる。
【0070】
このようなゼロトラストネットワークにおいては、ネットワークのポリシーエンジンが、リスク、ニーズ、信頼等の観点に基づく様々な情報を統合することによって、アクセスの許可や否認といったアクションを決める。アクションを精度良く決定するためには、詳細なポリシーを生成することが必要となる。また、ネットワークの環境(アクセス制御に関連する複数の要素)が変化した場合でも、環境変化をポリシーに的確に反映させられるようにするため、生成するポリシーは動的であることが好ましい。そのため、生成するポリシーが複雑になり、このようなポリシーをどうやって定義又は生成するかが課題となる。
【0071】
例えば、管理者がポリシーを生成する場合、上述の様々な情報に基づいてポリシーを生成する必要があるため、ポリシー生成のための時間や労力が大きくなってしまう。また、詳細なポリシーを生成するための具体的な認可アルゴリズムの一例として、決定木と信頼スコアを用いることも考えられるが、その場合でも、決定木を作成するためのポリシー生成のための時間や労力が膨大なものになってしまうという課題があった。特に、人間のあいまいで抽象的な意図を厳密で具体的なポリシーの形に変換する点について、掛かる時間や労力が大きい。また、人間の作業工程上、必要なポリシーの定義漏れが生ずる可能性もあった。
【0072】
これに対し、この開示に係るポリシー生成システム20は、管理者のあいまいで抽象的な意図を、リスク及び運用ニーズの観点に基づくスコアとして、数値化して入力部21から入力させている。そして、厳密な細かいポリシーは、ポリシー生成システム20が、入力部21からのスコアデータ及びデータストア22からのデータに基づいて自動で作成し、提示部26で管理者に提示する。管理者は最初のスコアデータだけを最小限の設定として入力すれば良く、具体的で厳密なポリシーを生成する必要がないため、ポリシー生成に必要な時間や労力を大幅に削減できるほか、ポリシー生成システム20は、管理者の意図を反映したポリシーを生成することができる。また、管理者が明示的にポリシーを設定しない設定漏れがあった場合でも、ポリシー生成システム20は、信頼度が低いアクセスを一律に許可せず、リスクに応じて否認するような中間的なポリシーを生成することができ、管理者の意図を補間することができる。したがって、ポリシー生成システム20は、管理者の意図を反映させた、ネットワークの安全性と可用性を両立させることができるポリシーを生成することができる。ポリシーとして、例えば上述のようなエンフォーサ用のACLが生成されても良い。
【0073】
例えば、関係データとして、IPアドレスとポートの組み合わせが用いられた場合に、ポリシーエンジン23は、ユーザやデバイスの状況の動的な変化に応じて、ニーズが存在せず、リスクがある通信だけを遮断するポリシーを生成することができる。ユーザやデバイスの状況の変化とは、上述の通り、ユーザ位置、デバイスの認証履歴、時間帯等の変化をいう。この場合、信頼度が非常に低下した機器は他のリソースにアクセスすることができず、通信から隔離されても良い。また、信頼度がやや低下した機器(セキュリティ上疑わしい機器)については、ニーズ又はアクセス先のリソースの重要度に応じて、一部のポートにおける通信が制限されても良い。
【0074】
また、ポリシー生成システム20は、テンソル表現で、関係データ及びスコアデータを組み合わせた情報を扱うことができるほか、重みを調節することで、各情報の重要性を補正できる。そのため、ポリシー生成システム20は、多様な種類の情報を扱うことができるため、適用できる用途を広く取ることができる。
【0075】
また、ポリシー生成システム20は、一時的なACLの形で、現在のネットワークの背景情報に応じたポリシーを動的に生成できるので、ポリシーエンフォーサ25がポリシーエンジン23をトリガさせなくとも、背景情報に応じたアクセス制御が実行できる。そのため、アクセス制御を低レイテンシとすることができる。
【0076】
また、ポリシー生成システム20は、管理者がスコアデータを入力する入力部21を有する。そのため、管理者は、アクセス制御に関して、自身の意図をポリシーに反映させることができる。
【0077】
また、ポリシーエンジン23は、一部のスコアが定義されていないスコアデータを用いて、ポリシーを生成することもできる。そのため、ポリシーエンジン23が生成するポリシーは、状況に関しての汎用性が高くなる。
【0078】
また、ポリシーエンジン23は、ポリシーが設定するアクションが全順序集合であり、実数値で定義されるスコアデータの各スコアに対し、アクションが順序同型となるようにポリシーを生成することもできる。ニーズが下がった場合又はリスクが上がった場合に、ポリシーで規定されるアクションはアクセスを許可しない方向に変化するため、ポリシー生成システム20は、アクションを管理者の意図を反映したものにすることができる。
【0079】
また、ポリシーエンジン23は、アクセス制御の対象以外の対象に関するスコアデータを用いて、アクセス制御の対象に関するアクションを設定するポリシーを生成することもできる。そのため、ポリシーエンジン23は、ポリシーをより精度高く決定することができる。
【0080】
なお、実施の形態2におけるモデル関数は、多層のものが設定されても良い。この場合のモデル関数の一例は次の通りである。
【数22】
・・・(22)
式(22)におけるgは、式(14)のgoutに相当する。また、式(22)における重みパラメータwは非負の値である。
【0081】
実施の形態3
以下、図面を参照してこの開示の実施の形態3について説明する。実施の形態3では、実施の形態2にて説明したポリシー生成システム20のさらなるバリエーションを開示する。
【0082】
実施の形態2では、デバイス、ユーザ、リソース、時間帯(又は時刻)といった要素に関するリスクやニーズをスコアとしてポリシーエンジンに入力することで、実際のアクセスで用いられるIPアドレスやポート番号に応じて、それらの間のトレードオフが自動的に評価される方法を開示した。これにより、実際の当該アクセスによって得られる利益を維持しつつ、当該アクセスが不正であった場合の損害を小さくするポリシー(アクセス制御の仕方)を自動生成することが可能となった。
【0083】
しかしながら、実施の形態2においては、管理者が直接ポリシーを定義することなく、ポリシーエンジンがリスクやニーズからポリシーを全て自動生成するため、生成されたポリシーの中で不適切なものがあった場合、管理者が不適切なポリシーを個別に変更する必要がある。例えば、ユーザのアクセスニーズを満足するために、リスクの高いデバイスに対してもアクセスを許可してしまうポリシーが生成され、管理者がそのポリシーを許容できない場合、管理者はリスクの高いデバイスに関連するポリシーを全て変更する必要があり、タイムコストを要する。
【0084】
これに対し、実施の形態3は、管理者が不適切なポリシーの一部を変更するだけで、その他の全ての不適切なポリシーにも自動的に変更を波及させるポリシー生成システムを開示する。例えば、ポリシー生成システムは、当該変更の目的がデバイスのリスクを優先するものであることを自動的に推定することで、全ての不適切なポリシーを変更することができる。これにより、不適切なポリシーの変更に必要なコストを抑制できる。
【0085】
図6は、ゼロトラストネットワーク上におけるポリシー生成システム30の一例を示すブロック図である。ポリシー生成システム30は、ポリシー生成システム20と比較して、構成要素として変更部31をさらに備える。
【0086】
管理者は、ポリシー提示部24で提示されたポリシーを視認して、ポリシーを修正するように、入力部21を用いて新たに当該ポリシーの変更情報を入力する。この際に、管理者は、実施の形態2と同様に、当該ポリシーを生成するスコアをさらに入力しても良い。入力部21は、関係データやニーズ・リスクのスコアを管理者が実施の形態2に示したように手動設定する手段としてだけでなく、ポリシーを管理者が変更又は事前に固定するための入力を受け付けるポリシー設定入力手段としても機能する。このときに、変更部31は、入力部21から入力された変更情報を反映するようにポリシーエンジン23のモデル関数を調節して、一旦生成されたポリシーを変更させる。
【0087】
このとき、変更部31は、入力部21から入力された変更情報によっては変更されなかったポリシーのパターンについても、生成するポリシーを変更する。このポリシーの変更は、入力部21及びデータストア22から現在取得した関係データ及びスコアデータが変更情報の入力前後で変わっていない場合であっても、実行される。管理者が一部のポリシーのパターンを変更した結果、ポリシーエンジン23内部のモデル関数は、当該パターンを実現するよう、変更部31によって調節される。これにより、リスクやニーズの間のトレードオフの取り方そのものが変化することで、管理者が直接変更しなかったポリシーについても、その変更が実現される。なお、ポリシーエンジン23内部のモデル関数が調節されることで、管理者が直接変更したポリシーと、管理者が直接変更しなかったポリシーの両方が、ポリシーエンジン23の内部で同時に変更される。
【0088】
管理者の直接の変更対象ではないエンティティについて当初導出されたアクションは、不適切なリスクやニーズの間のトレードオフの取り方に起因して生成されていたと考えられる。そのため、このようなエンティティについても、直接管理者が変更する対象と同様に、新たな前提(トレードオフの取り方)の下で異なるアクションを導出する必要がある。
【0089】
具体例として、管理者は、入力部21を用いて、ポリシーのうち一部のものを教師データとして入力することができる。この教師データは、ポリシーの正解を定義するものである。変更部31は、その教師データがポリシーに反映されるように、重みパラメータを学習し、調整する。つまり、変更部31は、教師データとして変更されなかったポリシーを含む全てのポリシーについて、教師データが変更内容として反映されるように、ポリシーを決定する重みパラメータを調整する。
【0090】
変更部31は、例えば、管理者が入力部21から入力したポリシーの変更情報を解析して、変更情報で示されたポリシーと、従前に生成されたポリシーとを比較することにより、変更の理由を推定しても良い。一例として、変更部31は、変更情報を用いて、管理者の変更の意図が、デバイスのリスク回避をより優先させるようにすること、又は、アクセスニーズを満足することをより優先させるようにすることを自動的に推定する。この推定結果を用いて、変更部31は、ポリシーエンジン23内部のモデル関数を調節することができる。なお、変更部31は、例えば教師あり学習やクラスタリングなどの手法を用いて、変更の理由を推定することができる。
【0091】
なお、所定のアクセスに対して取るべきアクション(例えば認可や否認)が最初から決まっていれば、管理者は、そのようなアクションが導出されるように、入力部21を操作して、ポリシー生成前(事前)からポリシーを固定することもできる。
【0092】
(計算例)
以上のポリシー生成システム30の説明に基づき、具体的な値を用いたポリシー生成のアルゴリズム計算例について説明する。この例では、実施の形態2の計算例において、アクションが承認、認証待ち、否認の場合にアクションスコアaがそれぞれ0.9、0.5、0.1となるように、管理者が教師データを入力部21から入力する。
【0093】
実施の形態2の計算例におけるアルゴリズムが、(SrcIP=192.168.1.10, DstIP=192.168.1.1, DstPort=1000)の組み合わせに対してa=0.6を出力する一方、この組み合わせについて管理者が定義したポリシーが「Drop」であるとする。この場合、変更部31は、同じ入力に対する出力をy=0.1に近づけるように、機械学習などにより重みパラメータを更新する。
【0094】
以上のようにして、変更部31は、管理者の入力に応じてポリシーを変更することができるため、ポリシーを状況変化等に応じた的確なものに変更することができる。このとき、変更部31は、管理者によって直接変更されなかったポリシーのパターンについても重みパラメータを介して自動的に変更することで、変更の対象ではないエンティティについても、当初のポリシーによるアクションよりも適切なアクションを導出することができる。
【0095】
なお、この開示は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、実施の形態2において、閾値thは2種類としたが、1種類、又は3種類以上の閾値thが設定されても良い。実施の形態2、3において、ポリシーエンジン23はモデル関数として上述のものと異なるものを用いても良く、その場合、ポリシーエンジン23は、重みパラメータwγとは異なるパラメータを学習しても良い。
【0096】
以上に示した実施の形態では、この開示をハードウェアの構成として説明したが、この開示は、これに限定されるものではない。この開示は、上述の実施形態において説明されたポリシー生成装置又はポリシー生成システムの処理(ステップ)を、コンピュータ内のプロセッサにコンピュータプログラムを実行させることにより実現することも可能である。
【0097】
図7は、以上に示した各実施の形態の処理が実行される情報処理装置(信号処理装置)のハードウェア構成例を示すブロック図である。図7を参照すると、この情報処理装置90は、信号処理回路91、プロセッサ92及びメモリ93を含む。
【0098】
信号処理回路91は、プロセッサ92の制御に応じて、信号を処理するための回路である。なお、信号処理回路91は、送信装置から信号を受信する通信回路を含んでいても良い。
【0099】
プロセッサ92は、メモリ93からソフトウェア(コンピュータプログラム)を読み出して実行することで、上述の実施形態において説明された装置の処理を行う。プロセッサ92の一例として、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、FPGA(Field-Programmable Gate Array)、DSP(Demand-Side Platform)、ASIC(Application Specific Integrated Circuit)のうち一つを用いてもよいし、そのうちの複数を並列で用いてもよい。
【0100】
メモリ93は、揮発性メモリや不揮発性メモリ、またはそれらの組み合わせで構成される。メモリ93は、1個に限られず、複数設けられてもよい。なお、揮発性メモリは、例えば、DRAM (Dynamic Random Access Memory)、SRAM (Static Random Access Memory)等のRAM (Random Access Memory)であってもよい。不揮発性メモリは、例えば、PROM (Programmable Random Only Memory)、EPROM (Erasable Programmable Read Only Memory) 等のROM (Random Only Memory)、フラッシュメモリや、SSD(Solid State Drive)であってもよい。
【0101】
メモリ93は、1以上の命令を格納するために使用される。ここで、1以上の命令は、ソフトウェアモジュール群としてメモリ93に格納される。プロセッサ92は、これらのソフトウェアモジュール群をメモリ93から読み出して実行することで、上述の実施形態において説明された処理を行うことができる。
【0102】
なお、メモリ93は、プロセッサ92の外部に設けられるものに加えて、プロセッサ92に内蔵されているものを含んでもよい。また、メモリ93は、プロセッサ92を構成するプロセッサから離れて配置されたストレージを含んでもよい。この場合、プロセッサ92は、I/O(Input/Output)インタフェースを介してメモリ93にアクセスすることができる。
【0103】
以上に説明したように、上述の実施形態における各装置が有する1又は複数のプロセッサは、図面を用いて説明されたアルゴリズムをコンピュータに行わせるための命令群を含む1又は複数のプログラムを実行する。この処理により、各実施の形態に記載された信号処理方法が実現できる。
【0104】
プログラムは、コンピュータに読み込まれた場合に、実施形態で説明された1又はそれ以上の機能をコンピュータに行わせるための命令群(又はソフトウェアコード)を含む。プログラムは、非一時的なコンピュータ可読媒体又は実体のある記憶媒体に格納されてもよい。限定ではなく例として、コンピュータ可読媒体又は実体のある記憶媒体は、random-access memory(RAM)、read-only memory(ROM)、フラッシュメモリ、solid-state drive(SSD)又はその他のメモリ技術、CD-ROM、digital versatile disk(DVD)、Blu-ray(登録商標)ディスク又はその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又はその他の磁気ストレージデバイスを含む。プログラムは、一時的なコンピュータ可読媒体又は通信媒体上で送信されてもよい。限定ではなく例として、一時的なコンピュータ可読媒体又は通信媒体は、電気的、光学的、音響的、またはその他の形式の伝搬信号を含む。
【0105】
以上、実施の形態を参照して本開示を説明したが、本開示は上記によって限定されるものではない。本開示の構成や詳細には、開示のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【0106】
10 ポリシー生成装置
11 取得部 12 ポリシー生成部
20、30 ポリシー生成システム
21 入力部 22 データストア
23 ポリシーエンジン 24 ポリシー提示部
25 ポリシーエンフォーサ
31 変更部
図1
図2
図3
図4
図5
図6
図7