オブジェクト複製制御装置およびプログラム
【課題】資源が有するオブジェクトに対する複製処理を適切に制御することが可能なオブジェクト複製制御装置およびプログラムを提供することにある。
【解決手段】資源アクセス手段は、第1の資源にアクセスしてオブジェクトおよびポリシ情報を取得する。第1の属性情報取得手段は、第1の属性情報を取得する。第1のポリシ評価手段は、第1の属性情報がポリシ情報を構成する基底ポリシ情報の第1の条件を満たすかを判定する。複写処理実行手段は、第1の条件を満たす場合、複写処理を実行する。格納手段は、複写されたオブジェクトとポリシ情報を構成する表明ポリシ情報とを関連づけて格納する。第2の属性情報取得手段は、第2の属性情報を取得する。第2のポリシ評価手段は、第2の属性情報が格納手段に格納された表明ポリシ情報の第2の条件を満たすかを判定する。転写処理実行手段は、第2の条件を満たす場合、転写処理を実行する。
【解決手段】資源アクセス手段は、第1の資源にアクセスしてオブジェクトおよびポリシ情報を取得する。第1の属性情報取得手段は、第1の属性情報を取得する。第1のポリシ評価手段は、第1の属性情報がポリシ情報を構成する基底ポリシ情報の第1の条件を満たすかを判定する。複写処理実行手段は、第1の条件を満たす場合、複写処理を実行する。格納手段は、複写されたオブジェクトとポリシ情報を構成する表明ポリシ情報とを関連づけて格納する。第2の属性情報取得手段は、第2の属性情報を取得する。第2のポリシ評価手段は、第2の属性情報が格納手段に格納された表明ポリシ情報の第2の条件を満たすかを判定する。転写処理実行手段は、第2の条件を満たす場合、転写処理を実行する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、資源が有するオブジェクトの複製処理を制御するためのオブジェクト複製制御装置およびプログラムに関する。
【背景技術】
【0002】
近年、特定の情報やアクションを、権限情報に基づいて制御するアクセス制御技術の重要性が高まっている。例えば、アクション可否形式のアクセス制御については広く利用されている。
【0003】
アクション可否形式のアクセス制御としては、例えば文書ファイルに対する権限情報をセキュリティ属性とするものがある。詳しくは、ユーザに割り当てられた文書ファイルに対する権限情報が「閲覧許可」または「編集許可」等のアクション可否形式で記述される。この種の権限情報は、例えばアクセス制御マトリックス(Access Control Matrix)またはアクセス制御リスト(Access Control list)として知られている。
【0004】
しかしながら、アクション可否形式のアクセス制御では、許可されるアクセス時間またはアクセス場所等の条件、または詳細な機能制限等の柔軟なアクセス制御内容を記述することは困難である。
【0005】
このため、近年では、アクション可否形式だけではなく、アクセス制御ポリシ形式のアクセス制御が利用されている。アクセス制御ポリシは、アクセス制御ルールの集合であり、標準的な記述仕様が公開されている。このアクセス制御ポリシ形式のアクセス制御では、許可される条件または詳細な機能制限の記述が可能である。
【0006】
アクセス制御ポリシ形式のアクセス制御では、例えば文書ファイルに対するアクセス要求を受けると、アクセスに関する属性情報に基づいてアクセス制御ポリシを評価することにより当該ファイルを開いてよいか否かを判定した上で、アクセス制御ポリシで規定された機能に制限する等の制御が可能となる。なお、アクセス制御ポリシは、例えば文書ファイル毎に関連づけられている。
【0007】
このような技術は、一般的にディジタル権利管理(DRM:Digital Rights Management)とも呼ばれる。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2001−306521号公報
【非特許文献】
【0009】
【非特許文献1】Tim Moses、" eXtensible Access Control Markup Language (XACML) Version 2.0 "、[online]、 [2007年5月17日検索]、インターネット<URL:http://docs.oasis-open.org/xacml/2.0/access_control-xacml-2.0-core-spec-os.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0010】
ところで、現在知られているDRM技術およびその製品においては、ファイル形式の情報に対する保護を目的とするものが多く、例えば文書ファイル内の個々のオブジェクト(文字列または画像等の文書を構成する任意のデータオブジェクト)に対して一律に制御が適用される(一律許可または一律拒否)。
【0011】
ここで、情報漏洩対策という観点から考察すると、一般的に情報の複製(処理)について制御することが重要であると考える。
【0012】
しかしながら、上記したようにファイル単位で保護される場合、例えば図面設計支援アプリケーションのような文書ファイル内の個々のオブジェクトの再利用が頻繁に行われるアプリケーションにおいては利便性が大幅に損なわれる。
【0013】
また、例えば設計図面の場合には、個々のオブジェクト(例えば特定の部品設計データまたは数値データ等)により重要度が異なる場合があるため、再利用する場合でもそれぞれのオブジェクトに応じた制御(特に複製に対する制御)を行う必要がある。
【0014】
これに対して、上述したようなアクセス制御(アクセス制御ポリシ形式のアクセス制御)を全てのオブジェクトに対して施すことが考えられる。
【0015】
ここで、複製処理は、一般的に複写処理(COPY)および転写処理(PASTE)の2つの処理(アクション)から構成される。具体的には、複写処理によって一時的な情報保管領域(例えばクリップボード等)に複製元の資源に属するオブジェクト(複製元となる文書ファイル内のオブジェクト)が複製され、転写処理によって複製先の資源(複製先となる文書ファイル上)にオブジェクトが貼り付けられることによって、複製処理が完了することになる。
【0016】
この場合、複写処理の時点では複製先の資源が必ずしも明確ではないため、アクセス制御ポリシを評価する際に必要な属性情報が不足する場合がある。一般的に、アクセス制御におけるアクセス決定を判定するためには、例えばアクセス主体の識別子、アクセス主体が有するロール(役割)、複製元および複製先等の資源の重要度、当該資源の種別、アクセス時刻およびアクセス場所等、様々な属性情報が判断基準の一要素として用いられることが多い。
【0017】
なお、これらの属性情報は、通常、資源への行為発生時点で取得される。すなわち、上記した複写処理の時点と転写処理の時点とで、属性情報の値に相違が生じる可能性があり、アクセス制御におけるアクセス決定を適切に判定できないことが懸念される。
【0018】
更に、転写処理の時点では複製元の資源が必ずしも明確ではない。このため、転写処理の時点で、当該複製元の資源(複製元となる文書ファイル)に関連づけられているアクセス制御ポリシそのものを参照できるとは限らない。このため、アクセス制御におけるアクセス決定を適切に判定できない場合がある。
【0019】
そこで、本発明が解決しようとする課題は、資源が有するオブジェクトに対する複製処理を適切に制御することが可能なオブジェクト複製制御装置およびプログラムを提供することである。
【課題を解決するための手段】
【0020】
実施形態によれば、複製対象となるオブジェクトを複写する複写処理および当該複写されたオブジェクトを転写する転写処理から構成される当該複製対象となるオブジェクトに対する複製処理を制御するオブジェクト複製制御装置が提供される。
【0021】
本実施形態に係るオブジェクト複製制御装置は、資源アクセス手段と、第1の属性情報取得手段と、第1のポリシ評価手段と、複写処理実行手段と、格納手段と、第2の属性情報取得手段と、第2のポリシ評価手段と、転写処理実行手段とを具備する。
【0022】
資源アクセス手段は、前記複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報であって前記複写処理を許可するための第1の条件を含む基底ポリシ情報と当該基底ポリシ情報に関連づけられている前記転写処理を許可するための第2の条件を含む表明ポリシ情報とから構成されるポリシ情報を有する第1の資源にアクセスして、ユーザによって指定された複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を取得する。
【0023】
第1の属性情報取得手段は、前記第1の資源に対するアクセスに関する第1の属性情報を取得する。
【0024】
第1のポリシ評価手段は、前記第1の属性情報取得手段によって取得された第1の属性情報が前記資源アクセス手段によって取得されたポリシ情報を構成する基底ポリシ情報に含まれる第1の条件を満たすかを判定する。
【0025】
複写処理実行手段は、前記第1の条件を満たすと前記第1のポリシ評価手段によって判定された場合、前記資源アクセス手段によって取得されたオブジェクトを複写する複写処理を実行する。
【0026】
格納手段は、前記複写処理が実行されることによって複写されたオブジェクトと前記資源アクセス手段によって取得されたポリシ情報を構成する表明ポリシ情報とを関連づけて格納する。
【0027】
第2の属性情報取得手段は、前記ユーザによって指定された第2の資源に対するアクセスに関する第2の属性情報を取得する。
【0028】
第2のポリシ評価手段は、前記第2の属性情報取得手段によって取得された第2の属性情報が、前記複写処理が実行されることによって複写されたオブジェクトと関連づけて前記格納手段に格納された表明ポリシ情報に含まれる第2の条件を満たすかを判定する。
【0029】
転写処理実行手段は、前記第2の条件を満たすと前記第2のポリシ評価手段によって判定された場合、前記格納手段に格納された前記複写処理が実行されることによって複写されたオブジェクトを、前記第2の資源に転写する転写処理を実行する。
【図面の簡単な説明】
【0030】
【図1】実施形態に係るオブジェクト複製制御装置のハードウェア構成を示すブロック図。
【図2】図1に示すオブジェクト複製制御装置30の主として機能構成を示すブロック図。
【図3】図2に示す資源40が有するポリシ情報の構成について説明するための図。
【図4】図2に示す資源40が有するポリシ情報を構成する基底ポリシ情報のデータ構造の一例を示す図。
【図5】図2に示す資源40が有するポリシ情報を構成する基底ポリシ情報のデータ構造の一例を示す図。
【図6】図2に示す資源40が有するポリシ情報を構成する基底ポリシ情報のデータ構造の一例を示す図。
【図7】図2に示す資源40が有するポリシ情報を構成する表明ポリシ情報のデータ構造の一例を示す図。
【図8】図2に示す資源40が有するポリシ情報を構成する表明ポリシ情報のデータ刻象の一例を示す図。
【図9】本実施形態に係るオブジェクト複製制御装置30の処理手順を示すシーケンスチャート。
【図10】複製処理制御部32からポリシ評価部34に対して通知される基底ポリシ評価要求のデータ構造の一例を示す図。
【図11】複写オブジェクト一時保管部22のデータ構造の一例を示す図。
【図12】複製処理制御部32からポリシ評価部34に対して通知される表明ポリシ評価要求のデータ構造の一例を示す図。
【発明を実施するための形態】
【0031】
以下、図面を参照して、実施形態について説明する。
【0032】
図1は、本実施形態に係るオブジェクト複製制御装置のハードウェア構成を示すブロック図である。図1に示すように、コンピュータ10は、例えばハードディスクドライブ(HDD:Hard Disk Drive)のような外部記憶装置20と接続されている。この外部記憶装置20は、コンピュータ10によって実行されるプログラム21を格納する。コンピュータ10および外部記憶装置20は、オブジェクト複製制御装置30を構成する。
【0033】
このオブジェクト複製制御装置30は、複製対象となるオブジェクト(複製処理の対象となるオブジェクト)を複写する複写処理および当該複写されたオブジェクトを転写する(貼り付ける)転写処理から構成される当該複製対象となるオブジェクトに対する複製処理を制御する機能を有する。
【0034】
なお、本実施形態に係るオブジェクト複製制御装置30は、例えばユーザ(利用者)またはアプリケーション等からの複製依頼(要求)に基づいて動作するものとする。
【0035】
図2は、図1に示すオブジェクト複製制御装置30の主として機能構成を示すブロック図である。
【0036】
図2に示すように、オブジェクト複製制御装置30は、インタフェース部31、複製処理制御部32、資源アクセス部33、ポリシ評価部34、表明ポリシ情報決定部35、複製処理実行部36および表明ポリシ情報関連づけ部37を含む。本実施形態において、これらの各部31〜37は、図1に示すコンピュータ10が外部記憶装置20に格納されているプログラム21を実行することにより実現されるものとする。このプログラム21は、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラム21が、例えばネットワークを介してコンピュータ10にダウンロードされても構わない。
【0037】
また、オブジェクト複製制御装置30は、複写オブジェクト一時保管部22を含む。本実施形態において、複写オブジェクト一時保管部22は、例えば外部記憶装置20に格納される。
【0038】
なお、本実施形態に係るオブジェクト複製制御装置30は、一般的な操作者であるユーザによって操作されるものとして説明するが、当該一般的な操作者以外の任意の装置からの電文等を介して操作されてもよい。ここで、任意の装置とは、例えばオブジェクト複製制御装置30の外部に配備される装置、当該オブジェクト複製制御装置30の内部に存在する装置または当該オブジェクト複製制御装置30が配備される装置内に存在する装置等が挙げられる。
【0039】
以下の説明では、オブジェクト複製制御装置30は、図2に示す資源40(第1の資源)が有するオブジェクトを資源50(第2の資源)に複製する処理を実行するものとする。
【0040】
なお、資源40は、オブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を有する。資源40が有するポリシ情報は、当該ポリシ情報に割り当てられているオブジェクトに対する複写処理を許可するための適合条件(第1の条件)を含む基底ポリシ情報と、当該基底ポリシ情報に関連づけられている当該オブジェクトに対する転写処理を許可するための適合条件(第2の条件)を含む表明ポリシ情報とから構成される。
【0041】
本実施形態において、資源40が有するオブジェクトとは、例えば文書ファイル内の個々のオブジェクト(文字列または画像等の文書を構成する任意のデータオブジェクト)であるものとする。なお、資源40が有するオブジェクトは、例えば文書(ドキュメント)単位であっても構わない。
【0042】
複写オブジェクト一時保管部22は、複写処理によって複写されたオブジェクトを一時的に格納(保管)するための機能部である。複写オブジェクト一時保管部22には、後述する複写されたオブジェクトと表明ポリシ情報決定部35によって決定された表明ポリシ情報とが関連づけて格納される。
【0043】
インタフェース部31は、ユーザからのオブジェクトに対する複製処理の要求(以下、複製要求と表記)を受け付けるための機能部である。インタフェース部31としては、例えばGUI(Graphical User Interface)およびCUI(Command line User Interface)等が挙げられるが、任意のインタフェース形態をとればよい。
【0044】
インタフェース部31は、複製要求として複写要求および転写要求を受け付ける。複写要求によれば、オブジェクトに対する複製処理を構成する複写処理の実行が要求される。転写要求によれば、オブジェクトに対する複製処理を構成する転写処理の実行が要求される。なお、複製要求としては、まず複写要求がされ、その後に転写要求がされる。
【0045】
なお、本実施形態では、インタフェース部31はユーザから直接要求を受け付けるものとして説明するが、例えばアプリケーションの特定のイベントを監視し、動作する形態であってもよい。つまり、インタフェース部31は、オブジェクトの複製処理に呼応し、動作できればよい。
【0046】
以下、インタフェース部31によって受け付けられた複製要求の対象となるオブジェクト(つまり、複製処理の対象となるオブジェクト)を複製対象オブジェクトと称する。この複製対象オブジェクトは、例えば複製要求の際にユーザによって指定されたオブジェクトである。
【0047】
複製処理制御部32は、インタフェース部31によって受け付けられた複製要求に応じて実行すべき処理全体を制御するための機能部である。複製処理制御部32は、実際に複製処理を実行するか否か(つまり、複製処理の許可または拒否)の判定を行う。
【0048】
なお、本実施形態では、便宜的に、複製処理制御部32が当該複製処理制御部32以外の各機能部間の相互作用制御を担うものとして説明するが、当該各機能部同士で相互作用が行われる構成であってもよい。
【0049】
資源アクセス部33は、インタフェース部31によって受け付けられた複写要求に応じて、複製対象オブジェクト(を含む複数のオブジェクト)を有する資源40に対してアクセスを行うための機能部である。
【0050】
資源アクセス部33は、資源40にアクセスして、当該資源40が有する複製対象オブジェクトおよび当該複製対象オブジェクトに割り当てられているポリシ情報を取得する。
【0051】
なお、本実施形態では、ポリシ情報は複製対象オブジェクトとともに資源40の内部に配置されるものとして説明するが、当該資源40の外部(例えば、オブジェクト複製制御装置30内外に配置されたファイルシステム、データベースまたはリポジトリ等)に当該ポリシ情報が配置されても構わない。この場合、資源アクセス部33は、複製対象オブジェクトに割り当てられるポリシ情報を取得する手段を別途設ければよい。つまり、資源アクセス部33を介して複製対象オブジェクトが取得される際に、当該複製対象オブジェクトに割り当てられているポリシ情報を取得できる構成であればよい。
【0052】
上記したように資源アクセス部33によって取得された複製対象オブジェクトおよびポリシ情報は、少なくとも複写処理が完了するまでの間、オブジェクト複製制御装置30の内部、好適には複製処理制御部32の内部で保持される。
【0053】
ポリシ評価部34は、資源アクセス部33によって取得されたポリシ情報(例えば、複製処理制御部32の内部に保持されるポリシ情報)を構成する基底ポリシ情報および表明ポリシ情報を評価するための機能部である。ポリシ評価部34は、後述するポリシ情報の評価要求(基底ポリシ評価要求および表明ポリシ評価要求)に従って、ポリシ情報を評価する。
【0054】
ここで、複製処理制御部32には、例えば資源40(第1の資源)に対するアクセスに関する属性情報(第1の属性情報)および資源50(第2の資源)に対するアクセスに関する属性情報(第2の属性情報)が予め保持されている。
【0055】
この場合、ポリシ評価部34は、複製処理制御部32から資源40に対するアクセスに関する属性情報を取得する。ポリシ評価部34は、取得された資源40に対するアクセスに関する属性情報が資源アクセス部33によって取得されたポリシ情報を構成する基底ポリシ情報に含まれる適合条件(第1の条件)を満たすか否かを判定する。
【0056】
また、ポリシ評価部34は、複製処理制御部32から資源50に対するアクセスに関する属性情報を取得する。ポリシ評価部34は、取得された資源50に対するアクセスに関する属性情報が複写オブジェクト一時保管部22に格納されている表明ポリシ情報に含まれる適合条件(第2の条件)を満たすか否かを判定する。
【0057】
表明ポリシ情報決定部35は、ポリシ評価部34による評価結果(判定結果)に応じた表明ポリシ情報を、資源アクセス部33によって取得されたポリシ情報を構成する表明ポリシ情報の中から決定するための機能部である。
【0058】
複製処理実行部36は、資源アクセス部33によって取得された複製対象オブジェクトに対して複製処理を実行するための機能部である。
【0059】
複製処理実行部36は、資源アクセス部33によって取得された複製対象オブジェクトを複写する複写処理を実行する。複製処理実行36は、複製処理が実行されることによって複写されたオブジェクト(以下、複写オブジェクトと表記)を複写オブジェクト一時保管部22に格納する。
【0060】
また、複製処理実行部36は、複写オブジェクト一時保管部22に格納された複写オブジェクトを、資源50に転写する転写処理を実行する。
【0061】
表明ポリシ情報関連づけ部37は、複写オブジェクトおよび表明ポリシ情報決定部35によって決定された表明ポリシ情報を関連づけるための機能部である。表明ポリシ情報関連づけ部37は、表明ポリシ情報決定部35によって決定された表明ポリシ情報を、複写オブジェクト(複写オブジェクト一時保管部22に格納された複写オブジェクト)に関連づけて複写オブジェクト一時保管部22に格納する。
【0062】
次に、図3を参照して、図2に示す資源40が有するポリシ情報の構成について説明する。
【0063】
図3に示すように、ポリシ情報は、例えば1つの基底ポリシ情報と1つ以上の表明ポリシ情報から構成される。つまり、基底ポリシ情報は、1つ以上の表明ポリシ情報に関連づけられる。
【0064】
なお、本実施形態において、ポリシ情報を構成する基底ポリシ情報および表明ポリシ情報は、例えばXACML V2.0形式に応じた記述形式によって表現されているものとするが、任意の表現形態をとってもよい。
【0065】
以下、図4〜図8を参照して、資源40が有するポリシ情報を構成する基底ポリシ情報および表明ポリシ情報のデータ構造について説明する。
【0066】
なお、以下に説明する基底ポリシ情報および表明ポリシ情報の記述例では、例えば名前空間、属性または要素等のうち本実施形態において必要な構成要素以外の構成要素については記載を省略する。
【0067】
また、基底ポリシ情報および表明ポリシ情報は、それぞれ独立したポリシ情報(例えばファイル等)としてもよく、また、1つの情報の内部構成要素(例えばXML文書内の要素等)としてもよい。
【0068】
まず、図4〜図6を参照して、図2に示す資源40が有するポリシ情報を構成する基底ポリシ情報のデータ構造の一例について説明する。
【0069】
基底ポリシ情報は、複製対象オブジェクトに対する複製処理を構成する複写処理の可否判定(許可または拒否の判定)の基準となる情報であり、かつ、表明ポリシ情報を決定するための情報である。基底ポリシ情報には、上述した複写処理を許可するための適合条件が記述されている。
【0070】
図4〜図6に示すように、基底ポリシ情報は、1つ以上のPolicy要素を有する。なお、基底ポリシ情報は、1つ以上のPolicy要素を纏める情報としてPolicySet要素を有していてもよい。また、PolicySet要素が他のPolicySet要素に含まれるような構成であってもよい。
【0071】
基底ポリシ情報が有するPolicy要素およびPolicySet要素は、例えばTarget要素を含む。このTarget要素には、複写処理を許可するか否かを判定するための条件(適合条件)が記述される。
【0072】
このTarget要素に記述される適合条件(ポリシ表現)としては、例えば“subject(主体)”、“action(行為)”、“resource(資源)”および“environment(環境)”のうちの少なくとも1つが構成要素として含まれる。
【0073】
“subject(主体)”は、アクセス実行の主体を示し、Subjects要素で示される。“action(行為)”は、アクセス実行の行為内容を示し、Actions要素で示される。 “resource(資源)”は、アクセス実行の客体を示し、Recources要素で示される。また、“environment(環境)”は、アクセス実行の環境を示す。
【0074】
ここでは、適合条件の表現としてTarget要素が用いられているが、Target要素で表現することができない任意の適合条件(時刻またはアクセス場所等)を表現する場合には、Condition要素を用いることができる。
【0075】
また、基底ポリシ情報が有するPolicy要素は、Rule要素を含む。このRule要素には、複製処理におけるアクセス制御の根幹的な内容(ここでは、複写処理を許可するか否かの情報)が記述される。
【0076】
更に、基底ポリシ情報が有するPolicy要素は、Obligation(責務)要素を含む。このObligation要素には、アクセス決定に伴う責務が記述される。ここでは、Obligation要素には、表明ポリシ情報の指定を行う責務が記述される。なお、Obligations要素は、複数のObligation要素を纏めるための要素である。
【0077】
図4〜図6に示す基底ポリシ情報では、3つのPolicy要素が設定されている。また、図4〜図6に示す基底ポリシ情報では、PolicySetId属性の属性値として“root”を持つPolicySet要素(以下、ルートポリシセットと表記)によって、この3つのPolicy要素が纏められている。
【0078】
このルートポリシセットにおいては、直下の子要素であるTarget要素で、適合条件を満たす行為(Action)が“Copy(複写処理)”であること、および適合条件を満たす資源(Resource)が“object1”であることが表現されている。このTarget要素によれば、資源が有するオブジェクトである“object1”を複写処理する場合にこのポリシセット(ルートポリシセット)が適合することが示されている。
【0079】
つまり、図4〜図6に示す基底ポリシ情報から構成されるポリシ情報は、資源が有するオブジェクトである“object1”に割り当てられているポリシ情報である。
【0080】
また、図4〜図6に示す基底ポリシ情報の例では、複写処理以外の行為は適合条件を満たさず、“NotApplicable(適合なし)”と判定される。
【0081】
なお、ルートポリシセットのPolicySetId属性の属性値には、例えば基底ポリシ情報を識別するための識別子が指定されてもよい。
【0082】
ここで、図4〜図6に示す基底ポリシ情報において設定されている3つのPolicy要素のうち、PolicyId属性の属性値として“policy1”を持つPolicy要素(以下、ポリシ1と表記)について説明する。
【0083】
ポリシ1においては、直下の子要素であるTarget要素で、適合条件を満たすアクセス主体(Subject)を識別するための識別子が“user0001”であることが表現されている。これによれば、アクセス主体を識別するための識別子が“user0001”である場合にポリシ1が適合することが表現されている。このポリシ1に含まれるTarget要素に記述されている適合条件を満たす場合には、基底ポリシ情報に対する評価結果(ポリシ1の効果)としてPermit(ポリシ1に含まれるRule要素のEffect属性の属性値)が得られる。
【0084】
なお、このTarget要素は、RuleId属性の属性値として“rule1”を持つRule要素に記述されてもよい。
【0085】
また、ポリシ1は、OblegationId属性の属性値として“obligation1”を持つObligation要素を含む。このObligation要素においては、表明ポリシ情報の指定を行う責務が表現されている。以下、このObligation要素において表現されている責務を表明ポリシ情報指定責務1と称する。
【0086】
ここで、Obligation要素(表明ポリシ情報指定責務1)のFulfillOn属性の属性値は、“Permit”である。このため、上記したポリシ1の効果が“Permit”を示す場合(つまり、ポリシ1に含まれるTarget要素に記述されている適合条件を満たす場合)、表明ポリシ情報指定責務1が適合することになる。
【0087】
上述したXACML V2.0形式では、Obligation要素は、AttributeAssignment要素を子要素として含むことができる。このため、AttributeAssignment要素のAttributeId属性で、当該Obligation要素が表明ポリシ情報の指定を行う責務であることを示し、AttributeAssignment要素の値で、表明ポリシ情報の指定を示している。
【0088】
つまり、ポリシ1では、“assertionpolicy1”の文字列が表明ポリシ情報を識別する値を表現している。例えば表明ポリシ情報指定責務1が適合する場合には、この“assertionpolicy1”によって識別される表明ポリシ情報が指定される。
【0089】
なお、表明ポリシ情報を識別する値としては、例えば当該表明ポリシ情報が格納されているファイル名または当該表明ポリシ情報を示すURI(Uniform Resource Identifier)等が用いられても構わない。
【0090】
また、表明ポリシ情報指定責務1の表現(責務表現)は、上記したXACML V2.0形式に従った表現の一例を示しており、表明ポリシ情報の指定が明示的に示されるのであれば、他の表現形式が用いられても構わない。
【0091】
次に、図4〜図6に示す基底ポリシ情報において設定されている3つのPolicy要素のうち、PolicyId属性の属性値として“policy2”を持つPolicy要素(以下、ポリシ2と表記)について説明する。
【0092】
ポリシ2においては、直下の子要素であるTarget要素で、適合条件を満たすアクセス主体(Subject)を識別するための識別子が“user0002”であることが表現されている。これによれば、アクセス主体を識別するための識別子が“user0002”である場合にポリシ2が適合することが表現されている。このポリシ2に含まれるTarget要素に記述されている適合条件を満たす場合には、基底ポリシ情報に対する評価結果(ポリシ2の効果)としてPermit(ポリシ2に含まれるRule要素のEffect属性の属性値)が得られる。
【0093】
なお、ポリシ2は、上記したポリシ1と同様に、OblegationId属性の属性値として“obligation2”を持つOblegation要素を含む。このObligation要素においては、表明ポリシ情報の指定を行う責務が表現されている。以下、このObligation要素において表現されている責務を表明ポリシ情報指定責務2と称する。
【0094】
ここで、Obligation要素(表明ポリシ情報指定責務2)のFulfillOn属性の属性値は、“Permit”である。このため、上記したポリシ2の効果が“Permit”を示す場合(つまり、ポリシ2に含まれるTarget要素に記述されている適合条件を満たす場合)、表明ポリシ情報指定責務2が適合することになる。
【0095】
なお、Obligation要素に含まれるAttributeAssignment要素、当該AttributeAssignment要素のAttributeId属性および当該AttributeAssignment要素の値については、上記したポリシ1と同様であるため、その詳しい説明を省略する。
【0096】
つまり、ポリシ2においては、“assertionpolicy2”の文字列が表明ポリシ情報を識別する値を表現している。例えば表明ポリシ情報指定責務2が適合する場合には、この“assertionpolicy2”によって識別される表明ポリシ情報が指定される。
【0097】
上記したように、例えばPolicy要素(またはPolicySet要素)中に表明ポリシ情報の指定を行う責務を配置することにより、当該Policy要素(に含まれるTarget要素に記述されている適合条件)に応じた表明ポリシ情報の指定を行うことができる。
【0098】
次に、図4〜図6に示す基底ポリシ情報において設定されている3つのPolicy要素のうち、PolicyId属性の属性値として“deny−all−others”を持つPolicy要素(以下、拒否ポリシと表記)について説明する。
【0099】
この拒否ポリシは、基底ポリシ情報に対する評価結果(拒否ポリシの効果)としてDeny(拒否ポリシに含まれるRule要素のEffect属性の属性値)を与えるためのポリシを表現している。図4〜図6に示す基底ポリシ情報においては、ルートポリシセットのPolicyCombiningAlgId属性の属性値は、“ordered−permit−overrides(順序許可優先)”を示している。このため、図4〜図6に示す基底ポリシ情報においては、満たされる適合条件が記述されているポリシが存在しない場合に、ルートポリシセットの最後の記述される拒否ポリシが適合する。具体的には、ポリシ1に記述されている適合条件およびポリシ2に記述されている適合条件の順に当該適合条件を満たすか否かが判定され、当該ポリシ1および2に記述されている適合条件のいずれも満たさない場合にのみ拒否ポリシが適合する。
【0100】
なお、上記した図4〜図6に示す基底ポリシ情報においては、ルートポリシセットの直下の子要素であるTarget要素において資源の適合条件が記述されるものとして説明したが、この資源の適合条件は、ルートポリシセットではなく例えば第1のポリシ等の各ポリシに記述されても構わない。
【0101】
次に、図7および図8を参照して、図2に示す資源40が有するポリシ情報を構成する表明ポリシ情報のデータ構造の一例について説明する。
【0102】
表明ポリシ情報は、複製対象オブジェクトに対する複製処理を構成する転写処理の可否判定(許可または拒否の判定)の基準となる情報である。表明ポリシ情報には、上述した転写処理を許可するための適合条件が記述されている。
【0103】
表明ポリシ情報は、1つ以上のPolicy要素を有する。なお、表明ポリシ情報は、1つ以上のPolicy要素を纏める情報としてPolicySet要素を有していてもよい。また、PolicySet要素が他のPolicySet要素に含まれるような構成であってもよい。
【0104】
表明ポリシ情報が有するPolicy要素およびPolicySet要素は、Target要素を含む。このTarget要素には、転写処理を許可するか否かを判定するための条件(適合条件)が記述される。
【0105】
なお、このTarget要素に記述される適合条件としては、上記したように“subject(主体)”、“action(行為)”、“resource(資源)”および“environment(環境)”のうちの少なくとも1つが構成要素として含まれる。
【0106】
また、表明ポリシ情報が有するPolicy要素は、Rule要素を含む。このRule要素には、複製処理におけるアクセス制御の根幹的な内容(ここでは、転写処理を許可するか否かの情報)が記述される。
【0107】
このように、表明ポリシ情報は、上記した基底ポリシ情報と同様の構成をとる。なお、表明ポリシ情報と基底ポリシ情報との相違点は、後述するように適合条件を満たす行為(Action)が“Paste(転写処理)”である点と、表明ポリシ情報にはObligation要素(つまり、表明ポリシ情報の指定を行う責務)が存在しない点である。なお、図7および図8に示す表明ポリシ情報の例では、ルートポリシセットにおける資源の適合条件については省略されている。
【0108】
図7および図8に示す表明ポリシ情報では、2つのPolicy要素が設定されている。また、PolicySetId属性の属性値として“root”を持つPolicySet要素(以下、ルートポリシセットと表記)によって、この2つの要素が纏められている。
【0109】
このルートポリシセットにおいては、直下の子要素であるTarget要素で、適合条件を満たす行為(Action)が“Paste(転写処理)”であることが表現されている。このTarget要素によれば、転写処理の場合にこのポリシセット(ルートポリシセット)が適合することが示されている。つまり、図7および図8に示す表明ポリシ情報の例では、転写処理以外の行為は適合条件を満たさない。
【0110】
ここで、図7および図8に示す表明ポリシ情報において設定されている2つのPolicy要素のうち、PolicyId属性の属性値として“policy3”を持つPolicy要素(以下、ポリシ3と表記)について説明する。
【0111】
ポリシ3においては、直下の子要素であるTarget要素で、適合条件に合致するアクセス主体(Subject)を識別するための識別子が“user0001”であり、転写先資源(Resource)の種別が“secret”であることが表現されている。これによれば、アクセス主体を識別するための識別子が“user0001”であり、転写先資源の種別が“secret”である場合にポリシ3が適合することが表現されている。このポリシ3に含まれるTarget要素に記述されている適合条件を満たす場合には、表明ポリシ情報に対する評価結果(ポリシ3の効果)としてPermit(ポリシ3に含まれるRule要素のEffect属性の属性値)が得られる。
【0112】
このTarget要素は、RuleId属性の属性値として“rule3”を持つRule要素に記述されてもよい。
【0113】
なお、図7および図8に示す表明ポリシ情報において設定されている2つのPolicy要素のうち、PolicyId属性の属性値として“deny−all−others”を持つPolicy要素は、上述した図4〜図6に示す基底ポリシ情報における拒否ポリシと同様であるため、その詳しい説明を省略する。
【0114】
図7および図8に示す表明ポリシ情報においては、識別子“user0001”によって識別されるアクセス主体が、資源種別が“secret”である資源に転写する場合にのみ転写処理が許可されるものとして説明したが、転写処理の可否の判定基準としてこれら以外の任意の条件が設定されていても構わない。
【0115】
次に、図9のシーケンスチャートを参照して、本実施形態に係るオブジェクト複製制御装置30の処理手順について説明する。
【0116】
まず、ユーザは、オブジェクト複製制御装置30を操作することによって、複製対象オブジェクトに対する複製処理を構成する複写処理の実行を当該オブジェクト複製制御装置30に依頼する。ここでは、複製対象オブジェクトは、資源40が有するオブジェクトであるものとする。このとき、ユーザは、例えば複製元資源(つまり、複製対象オブジェクトを有する資源40)および複製対象オブジェクトの取得方法(当該複製対象オブジェクトの場所を示すURIおよびHTTP等の取得プロトコル)を指定することが望ましい。
【0117】
これにより、オブジェクト複製制御装置30に含まれるインタフェース部31は、ユーザからの複写処理の実行依頼(複写要求)を受け付ける(ステップS1)。インタフェース部31によって受け付けられた複写要求は、複製処理制御部32に通知される(ステップS2)。
【0118】
複製処理制御部32は、インタフェース部31から複写要求が通知されると、資源アクセス部33に対して資源アクセス要求を通知することによって、複製対象オブジェクトを有する資源40に対するアクセスを要求する(ステップS3)。
【0119】
資源アクセス部33は、複製処理制御部32からの要求(資源アクセス要求)に応じて、複製対象オブジェクトを有する資源40にアクセスする(ステップS4)。
【0120】
これにより、資源アクセス部33は、資源40が有する複製対象オブジェクトおよび当該複製対象オブジェクトに割り当てられているポリシ情報を取得する(ステップS5)。資源アクセス部33によって取得されたポリシ情報は、基底ポリシ情報と当該基底ポリシ情報に関連づけられている1つ以上の表明ポリシ情報(以下、表明ポリシ情報群と表記)とから構成される。
【0121】
資源アクセス部33は、資源40から取得された複製対象オブジェクトおよびポリシ情報(基底ポリシ情報および表明ポリシ情報群)を複製処理制御部32に渡す(ステップ6)。
【0122】
複製処理制御部32は、資源アクセス部33から複製対象オブジェクトおよびポリシ情報が渡されると、ポリシ評価部34に対して基底ポリシ評価要求を通知することによって、基底ポリシ情報の評価を要求する(ステップS7)。このとき、複製処理制御部32は、基底ポリシ情報をポリシ評価部34に渡す。
【0123】
ここで、複製処理制御部32からポリシ評価部34に対して通知される基底ポリシ評価要求には、基底ポリシ情報を評価する際に用いられる属性情報(複製元資源である資源40に対するアクセスに関する属性情報)が含まれる。この属性情報には、例えばアクセスの主体、当該アクセスの客体、当該アクセスの行為(内容)または当該アクセスの環境を示す情報等が含まれる。この属性情報は、例えば複製処理制御部32において予め保持されている。
【0124】
図10は、複製処理制御部32からポリシ評価部34に対して通知される基底ポリシ評価要求のデータ構造の一例を示す。
【0125】
図10に示す基底ポリシ評価要求には、例えばアクセスの主体(資源40に対するアクセス実行の主体)を識別するための識別子を示す “user0001”、アクセスの行為(資源40に対するアクセス実行の行為内容)を示す“Copy”およびアクセスの客体(アクセス実行の客体である資源40が有するオブジェクト)を示す“object1”が属性情報として含まれている。
【0126】
なお、図10に示す基底ポリシ評価要求は、上述したXACML V2.0形式に従ったRequest要素の表現であり、ここではその詳しい説明を省略する。
【0127】
再び図9に戻ると、ポリシ評価部34は、複製処理制御部32から通知された基底ポリシ評価要求に含まれる属性情報を取得する。ポリシ評価部34は、取得された属性情報を用いて当該複製処理制御部32から渡された基底ポリシ情報を評価する。この場合、ポリシ評価部34は、取得された属性情報が基底ポリシ情報に含まれる適合条件(図4〜図6に示すTarget要素に記述されている適合条件)を満たすか否かを判定する。
【0128】
ここでは、ポリシ評価部34は、基底ポリシ評価要求に含まれる属性情報を取得するものとして説明したが、例えばポリシ評価部34の内部で属性情報を取得するような構成であっても構わない。つまり、ポリシ評価部34が属性情報を取得できる構成であればよい。
【0129】
また、基底ポリシ情報は複製処理制御部32から直接的に渡されるものとして説明したが、例えば複製処理制御部32から間接的な参照情報(例えば、URI等)が与えられ、当該参照情報に基づいてポリシ評価部34が基底ポリシ情報を取得する構成であっても構わない。つまり、ポリシ評価部34が評価の対象となる基底ポリシ情報を取得できる構成であればよい。
【0130】
ポリシ評価部34は、基底ポリシ情報の評価結果を複製処理制御部32に返す(ステップS8)。この基底ポリシ情報の評価結果には、基底ポリシ情報を評価した際に得られた効果(Effect)が含まれる。具体的には、基底ポリシ情報の評価結果には、当該基底ポリシ情報に含まれる適合条件を満たすか否かの判定結果(“Permit”または“Deny”)が含まれる。また、基底ポリシ情報の評価結果に“Permit”が含まれている場合には、当該基底ポリシ情報の評価結果には、適合する表明ポリシ情報指定責務(つまり、適合条件が記述されたTarget要素を含むPolicy要素に含まれるObligation要素に記述された責務)が更に含まれる。
【0131】
次に、複製処理制御部32は、ポリシ評価部34から返された基底ポリシ情報の評価結果に“Permit”が含まれているか否かを判定する。
【0132】
基底ポリシ情報の評価結果に“Permit”が含まれていない(つまり、“Deny”が含まれている)と判定された場合、オブジェクト複製制御装置30の処理は終了される。この場合、例えばインタフェース部31を介して、複製対象オブジェクトに対する複製処理(を構成する複写処理)が拒否された旨がユーザに対して通知される。
【0133】
一方、基底ポリシ情報の評価結果に“Permit”が含まれていると判定された場合、複製処理制御部32は、表明ポリシ情報決定部35に対して表明ポリシ決定要求を通知することによって、表明ポリシ情報の決定を要求する(ステップS9)。この表明ポリシ情報決定部35に対して通知される表明ポリシ決定要求には、上記した基底ポリシ情報の評価結果が含まれる。
【0134】
表明ポリシ情報決定部35は、複製処理制御部32から通知された表明ポリシ決定要求に含まれる基底ポリシ情報の評価結果を取得する。表明ポリシ情報決定部35は、取得された基底ポリシ情報の評価結果に含まれる表明ポリシ情報指定責務(つまり、Obligation要素)に記述された内容(つまり、表明ポリシ情報を識別する値)に従って、上記したステップS5において資源40から取得された表明ポリシ情報群の中から表明ポリシ情報を決定する。つまり、表明ポリシ情報決定部35は、表明ポリシ情報群の中から、ポリシ評価部34によって満たされると判定された適合条件(基底ポリシ情報に含まれる適合条件)に応じた表明ポリシ情報を決定する。
【0135】
なお、資源40から取得された表明ポリシ情報群は、複製処理制御部32から事前に取得されていてもよいし、当該複製処理制御部32から通知される表明ポリシ決定要求に含まれていても構わない。
【0136】
表明ポリシ情報決定部35は、表明ポリシ決定要求に対する応答として、決定された表明ポリシ情報を複製処理制御部32に対して通知する(ステップS10)。
【0137】
次に、複製処理制御部32は、複製処理実行部36に対して複写要求を通知することによって、複製対象オブジェクトに対する複写処理を要求する(ステップS11)。複製処理制御部32から複製処理実行部36に対して通知される複写要求には、複製対象オブジェクトが含まれる。
【0138】
複製処理実行部36は、複製処理制御部32から通知された複写要求に含まれる複製対象オブジェクトを複写する複写処理を実行する。複製処理実行部36は、この複写処理が実行されることによって複写された複製対象オブジェクト(複写オブジェクト)を複写オブジェクト一時保管部22に格納(一時保管)する(ステップS12)。
【0139】
次に、複製処理制御部32は、表明ポリシ情報関連づけ部37に対して関連づけ要求を通知することによって、表明ポリシ情報決定部35によって決定された表明ポリシ情報(つまり、表明ポリシ情報決定部35から通知された表明ポリシ情報)と複写オブジェクトとの関連づけを要求する(ステップS13)。この複製処理制御部32から表明ポリシ情報関連づけ部37に対して通知される関連づけ要求には、表明ポリシ情報決定部35によって決定された表明ポリシ情報が含まれる。
【0140】
表明ポリシ情報関連づけ部37は、複製処理制御部32から通知された関連づけ要求に含まれる表明ポリシ情報を、複写オブジェクト一時保管部22に格納されている複写オブジェクトに関連づける。この場合、表明ポリシ情報関連づけ部37は、関連づけ要求に含まれる表明ポリシ情報を、複写オブジェクトに対応づけて複写オブジェクト一時保管部22に格納する。なお、複写オブジェクトと表明ポリシ情報とを関連づけるための表を保持することによって当該複写オブジェクトと表明ポリシ情報とが関連づけられてもよい。
【0141】
ここで、図11は、複写オブジェクト一時保管部22のデータ構造の一例を示す。図11に示すように、複写オブジェクト一時保管部22には、複写オブジェクトおよび表明ポリシ情報が対応づけて格納される。
【0142】
複写オブジェクト一時保管部22に格納されている複写オブジェクトは、上記したように複製処理実行部36によって複写処理が実行されることによって複写された複製対象オブジェクトの実体であり、例えばメモリ上に展開されたバイト配列データまたは間接参照するためのURI等、任意の形態をとればよい。
【0143】
また、複写オブジェクト一時保管部22に格納されている表明ポリシ情報は、上記したように表明ポリシ情報決定部35によって決定された表明ポリシ情報の実体であり、複写オブジェクトと同様に任意の形態をとればよい。
【0144】
このように複写オブジェクトおよび表明ポリシ情報が対応づけて複写オブジェクト一時保管部22に格納されることによって、当該複写オブジェクトと表明ポリシ情報とが関連づけられる。
【0145】
なお、複写オブジェクト一時保管部22には、複写オブジェクトを識別するための識別子が格納されていても構わない。この識別子は、例えば複写オブジェクトが複数同時に存在することが許容される場合に用いられる。この識別子は、複製処理実行部36によって複写処理が実行される際に複製処理制御部32によって生成され、当該複写処理が実行されることによって複写された複製対象オブジェクト(複写オブジェクト)に割り当てられることが望ましい。
【0146】
再び図9に戻ると、表明ポリシ情報関連づけ部37による表明ポリシ情報と複写オブジェクトとの関連づけが完了した場合、複製処理制御部32は、複製対象オブジェクトに対する複製処理を構成する複写処理が完了した旨の通知(以下、複写完了通知と表記)をインタフェース部31に対して通知する(ステップS15)。また、インタフェース部31は、複製処理制御部32からの複写完了通知をユーザに対して通知する(ステップS16)。なお、ステップS15およびS16の処理は、省略されても構わない。
【0147】
次に、ユーザは、オブジェクト複製制御装置30を操作することによって、複製対象オブジェクトに対する複製処理を構成する転写処理(つまり、上記した複写オブジェクトを転写する処理)の実行を当該オブジェクト複製制御装置30に依頼する。ここでは、複写オブジェクトを資源50に転写するものとして説明する。このとき、ユーザは、例えば複製先資源(ここでは、資源50)および転写処理の対象となる複写オブジェクトの指定方法(当該複写オブジェクトの場所を示すURIおよびHTTP等の転写プロトコル)を指定することが望ましい。
【0148】
これにより、インタフェース部31は、ユーザからの転写処理の実行依頼(転写要求)を受け付ける(ステップS17)。インタフェース部31によって受け付けられた転写要求は、複製処理制御部32に通知される(ステップS18)。
【0149】
複製処理制御部32は、インタフェース部31から転写要求が通知されると、複写オブジェクト一時保管部22に対してアクセスする(ステップS19)。これにより、複製処理制御部32は、複写オブジェクト一時保管部22に格納されている表明ポリシ情報(転写処理の対象となる複写オブジェクトに関連づけられている表明ポリシ情報)を取得する(ステップS20)。
【0150】
次に、複製処理制御部32は、ポリシ評価部34に対して表明ポリシ評価要求を通知することによって、表明ポリシ情報の評価を要求する(ステップS21)。このとき、複製処理制御部32は、複写オブジェクト一時保管部22から取得された表明ポリシ情報をポリシ評価部34に渡す。
【0151】
ここで、複製処理制御部32からポリシ評価部34に対して通知される表明ポリシ評価要求には、表明ポリシ情報を評価する際に用いられる属性情報(複製先資源である資源50に対するアクセスに関する属性情報)が含まれる。この属性情報には、例えばアクセスの主体、当該アクセスの客体、当該アクセスの行為(内容)または当該アクセスの環境を示す情報等が含まれる。この属性情報は、例えば複製処理制御部32において予め保持されている。
【0152】
図12は、複製処理制御部32からポリシ評価部34に対して通知される表明ポリシ評価要求のデータ構造の一例を示す。
【0153】
図12に示す表明ポリシ評価要求には、例えばアクセスの主体(資源50に対するアクセス実行の主体)を識別するための識別子を示す“user0001”、アクセスの行為(資源50に対するアクセス実行の行為内容)を示す“Paste”および資源種別(アクセス実行の客体である当該資源50の種別)を示す“secret”が属性情報として含まれている。
【0154】
なお、図12に示す表明ポリシ評価要求は、上記した図10に示す規定ポリシ評価要求と同様に、XACML V2.0形式に従ったRequest要素の表現であり、ここではその詳しい説明を省略する。
【0155】
再び図9に戻ると、ポリシ評価部34は、複製処理制御部32から通知された表明ポリシ評価要求に含まれる属性情報を取得する。ポリシ評価部34は、取得された属性情報を用いて当該複製処理制御部32から渡された表明ポリシ情報を評価する。この場合、ポリシ評価部34は、取得された属性情報が表明ポリシ情報に含まれる適合条件(図7および図8に示すTarget要素に記述されている適合条件)を満たすか否かを判定する。
【0156】
ここでは、ポリシ評価部34は、表明ポリシ評価要求に含まれる属性情報を取得するものとして説明したが、例えば当該ポリシ評価部34の内部で属性情報を取得するような構成であっても構わない。つまり、ポリシ評価部34が属性情報を取得できる構成であればよい。
【0157】
また、表明ポリシ情報は複製処理制御部32から直接的に渡されるものとして説明したが、例えば複製処理制御部32から間接的な参照情報(例えば、URI等)が与えられ、当該参照情報に基づいてポリシ評価部34が表明ポリシ情報を取得する構成であっても構わない。つまり、ポリシ評価部34が評価の対象となる表明ポリシ情報を取得できる構成であればよい。
【0158】
ポリシ評価部34は、表明ポリシ情報の評価結果を複製処理制御部32に返す(ステップS22)。この表明ポリシ情報の評価結果には、表明ポリシ情報を評価した際に得られた効果(Effect)が含まれる。具体的には、表明ポリシ情報の評価結果には、当該表明ポリシ情報に含まれる適合条件を満たすか否かの判定結果(“Permit”または“Deny”)が含まれる。
【0159】
次に、複製処理制御部32は、ポリシ評価部34から返された表明ポリシ情報の評価結果に“Permit”が含まれているか否かを判定する。
【0160】
表明ポリシ情報の評価結果に“Permit”が含まれていない(つまり“Deny”が含まれている)と判定された場合、オブジェクト複製制御装置30の処理は終了される。この場合、例えばインタフェース部31を介して、複製対象オブジェクトに対する複製処理(を構成する転写処理)が拒否された旨がユーザに対して通知される。
【0161】
一方、表明ポリシ情報の評価結果に“Permit”が含まれていると判定された場合、複製処理制御部32は、複製処理実行部36に対して転写要求を通知することによって、複写オブジェクト(複写オブジェクト一時保管部22に格納されている複写オブジェクト)に対する転写処理を要求する(ステップS23)。
【0162】
複製処理実行部36は、複製処理制御部32から転写要求が通知されると、複写オブジェクト一時保管部22に対して複写オブジェクトの取得を要求する(ステップS24)。これにより、複製処理実行部36は、複写オブジェクト一時保管部22に格納されている複写オブジェクトを取得する(ステップS25)。
【0163】
次に、複製処理実行部36は、複写オブジェクト一時保管部22から取得された複写オブジェクトを複製先資源として指定された資源(ここでは、資源50)に対して転写する転写処理を実行する(ステップS26)。
【0164】
複製処理実行部36による転写処理が完了した場合、複製処理制御部32は、複製対象オブジェクトに対する複製処理を構成する転写処理が完了した旨の通知(以下、転写完了通知と表記)をインタフェース部31に対して通知する(ステップS27)。また、インタフェース部31は、複写処理制御部32からの転写完了通知をユーザに対して通知する(ステップS28)。なお、ステップS27およびS28の処理は、省略されても構わない。
【0165】
上記した図9の説明では、ステップS17において転写要求がインタフェース部31によって受け付けられるものとして説明したが、例えば転写要求がステップS1において複写要求と同時に受け付けられても構わない。
【0166】
上記したように本実施形態においては、複製元である資源40にアクセスして、複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を取得し、当該資源40に対するアクセスに関する属性情報(第1の属性情報)が当該ポリシ情報を構成する基底ポリシ情報に含まれる適合条件(第1の条件)を満たすか否かを判定し、当該基底ポリシ情報に含まれる適合条件を満たすと判定された場合には、ポリシ情報を構成する表明ポリシ情報の中から当該適合条件に応じた表明ポリシ情報を決定する。また、本実施形態においては、決定された表明ポリシ情報および複写オブジェクト(複写された複製対象オブジェクト)が対応づけて複写オブジェクト一時保管部22に格納される。また、本実施形態においては、複写オブジェクト一時保管部22に格納された表明ポリシ情報に含まれる適合条件(第2の条件)を満たすかを判定し、当該表明ポリシ情報に含まれる適合条件を満たすと判定された場合には複写オブジェクト一時保管部22に格納された複写オブジェクトを複写先である資源50に転写する。
【0167】
つまり、本実施形態においては、複製対象オブジェクトに対する複製処理を構成する複写処理時に基底ポリシ情報が評価され、当該評価結果に応じて当該基底ポリシ情報に関連づけられている表明ポリシ情報が決定され、当該決定された表明ポリシ情報および複写オブジェクトが関連づけられて複写オブジェクト一時保管部22に格納され、当該複製処理を構成する転写処理時に当該複写オブジェクト一時保管部22に格納された表明ポリシ情報が評価される。このため、本実施形態においては、資源が有するオブジェクトに対する複製処理をオブジェクト単位で適切に制御することが可能となる。
【0168】
なお、本実施形態においては、複写オブジェクトは複写オブジェクト一時保管部22に格納されるものとして説明したが、当該複写オブジェクトは例えばファイルまたはデータベース等の複写オブジェクト一時保管部22以外の記憶部(図示せず)に格納されてもよく、また、当該複写オブジェクトが例えばメモリ上に展開されるような構成であっても構わない。
【0169】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
また、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、光磁気ディスク(MO)、半導体メモリ等の記憶媒体に格納して頒布することもできる。
【0170】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼動しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行してもよい。
【0171】
更に、本実施形態における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【0172】
また、記憶媒体は1つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本実施形態における記憶媒体に含まれ、媒体構成は何れの構成であってもよい。
【0173】
なお、本実施形態におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
【0174】
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【符号の説明】
【0175】
10…コンピュータ、20…外部記憶装置、22…複写オブジェクト一時保管部(格納手段)、30…オブジェクト複製制御装置、31…インタフェース部、32…複製処理制御部、33…資源アクセス部、34…ポリシ評価部、35…表明ポリシ情報決定部、36…複製処理実行部、37…表明ポリシ情報関連づけ部、40…資源(第1の資源)、50…資源(第2の資源)。
【技術分野】
【0001】
本発明の実施形態は、資源が有するオブジェクトの複製処理を制御するためのオブジェクト複製制御装置およびプログラムに関する。
【背景技術】
【0002】
近年、特定の情報やアクションを、権限情報に基づいて制御するアクセス制御技術の重要性が高まっている。例えば、アクション可否形式のアクセス制御については広く利用されている。
【0003】
アクション可否形式のアクセス制御としては、例えば文書ファイルに対する権限情報をセキュリティ属性とするものがある。詳しくは、ユーザに割り当てられた文書ファイルに対する権限情報が「閲覧許可」または「編集許可」等のアクション可否形式で記述される。この種の権限情報は、例えばアクセス制御マトリックス(Access Control Matrix)またはアクセス制御リスト(Access Control list)として知られている。
【0004】
しかしながら、アクション可否形式のアクセス制御では、許可されるアクセス時間またはアクセス場所等の条件、または詳細な機能制限等の柔軟なアクセス制御内容を記述することは困難である。
【0005】
このため、近年では、アクション可否形式だけではなく、アクセス制御ポリシ形式のアクセス制御が利用されている。アクセス制御ポリシは、アクセス制御ルールの集合であり、標準的な記述仕様が公開されている。このアクセス制御ポリシ形式のアクセス制御では、許可される条件または詳細な機能制限の記述が可能である。
【0006】
アクセス制御ポリシ形式のアクセス制御では、例えば文書ファイルに対するアクセス要求を受けると、アクセスに関する属性情報に基づいてアクセス制御ポリシを評価することにより当該ファイルを開いてよいか否かを判定した上で、アクセス制御ポリシで規定された機能に制限する等の制御が可能となる。なお、アクセス制御ポリシは、例えば文書ファイル毎に関連づけられている。
【0007】
このような技術は、一般的にディジタル権利管理(DRM:Digital Rights Management)とも呼ばれる。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2001−306521号公報
【非特許文献】
【0009】
【非特許文献1】Tim Moses、" eXtensible Access Control Markup Language (XACML) Version 2.0 "、[online]、 [2007年5月17日検索]、インターネット<URL:http://docs.oasis-open.org/xacml/2.0/access_control-xacml-2.0-core-spec-os.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0010】
ところで、現在知られているDRM技術およびその製品においては、ファイル形式の情報に対する保護を目的とするものが多く、例えば文書ファイル内の個々のオブジェクト(文字列または画像等の文書を構成する任意のデータオブジェクト)に対して一律に制御が適用される(一律許可または一律拒否)。
【0011】
ここで、情報漏洩対策という観点から考察すると、一般的に情報の複製(処理)について制御することが重要であると考える。
【0012】
しかしながら、上記したようにファイル単位で保護される場合、例えば図面設計支援アプリケーションのような文書ファイル内の個々のオブジェクトの再利用が頻繁に行われるアプリケーションにおいては利便性が大幅に損なわれる。
【0013】
また、例えば設計図面の場合には、個々のオブジェクト(例えば特定の部品設計データまたは数値データ等)により重要度が異なる場合があるため、再利用する場合でもそれぞれのオブジェクトに応じた制御(特に複製に対する制御)を行う必要がある。
【0014】
これに対して、上述したようなアクセス制御(アクセス制御ポリシ形式のアクセス制御)を全てのオブジェクトに対して施すことが考えられる。
【0015】
ここで、複製処理は、一般的に複写処理(COPY)および転写処理(PASTE)の2つの処理(アクション)から構成される。具体的には、複写処理によって一時的な情報保管領域(例えばクリップボード等)に複製元の資源に属するオブジェクト(複製元となる文書ファイル内のオブジェクト)が複製され、転写処理によって複製先の資源(複製先となる文書ファイル上)にオブジェクトが貼り付けられることによって、複製処理が完了することになる。
【0016】
この場合、複写処理の時点では複製先の資源が必ずしも明確ではないため、アクセス制御ポリシを評価する際に必要な属性情報が不足する場合がある。一般的に、アクセス制御におけるアクセス決定を判定するためには、例えばアクセス主体の識別子、アクセス主体が有するロール(役割)、複製元および複製先等の資源の重要度、当該資源の種別、アクセス時刻およびアクセス場所等、様々な属性情報が判断基準の一要素として用いられることが多い。
【0017】
なお、これらの属性情報は、通常、資源への行為発生時点で取得される。すなわち、上記した複写処理の時点と転写処理の時点とで、属性情報の値に相違が生じる可能性があり、アクセス制御におけるアクセス決定を適切に判定できないことが懸念される。
【0018】
更に、転写処理の時点では複製元の資源が必ずしも明確ではない。このため、転写処理の時点で、当該複製元の資源(複製元となる文書ファイル)に関連づけられているアクセス制御ポリシそのものを参照できるとは限らない。このため、アクセス制御におけるアクセス決定を適切に判定できない場合がある。
【0019】
そこで、本発明が解決しようとする課題は、資源が有するオブジェクトに対する複製処理を適切に制御することが可能なオブジェクト複製制御装置およびプログラムを提供することである。
【課題を解決するための手段】
【0020】
実施形態によれば、複製対象となるオブジェクトを複写する複写処理および当該複写されたオブジェクトを転写する転写処理から構成される当該複製対象となるオブジェクトに対する複製処理を制御するオブジェクト複製制御装置が提供される。
【0021】
本実施形態に係るオブジェクト複製制御装置は、資源アクセス手段と、第1の属性情報取得手段と、第1のポリシ評価手段と、複写処理実行手段と、格納手段と、第2の属性情報取得手段と、第2のポリシ評価手段と、転写処理実行手段とを具備する。
【0022】
資源アクセス手段は、前記複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報であって前記複写処理を許可するための第1の条件を含む基底ポリシ情報と当該基底ポリシ情報に関連づけられている前記転写処理を許可するための第2の条件を含む表明ポリシ情報とから構成されるポリシ情報を有する第1の資源にアクセスして、ユーザによって指定された複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を取得する。
【0023】
第1の属性情報取得手段は、前記第1の資源に対するアクセスに関する第1の属性情報を取得する。
【0024】
第1のポリシ評価手段は、前記第1の属性情報取得手段によって取得された第1の属性情報が前記資源アクセス手段によって取得されたポリシ情報を構成する基底ポリシ情報に含まれる第1の条件を満たすかを判定する。
【0025】
複写処理実行手段は、前記第1の条件を満たすと前記第1のポリシ評価手段によって判定された場合、前記資源アクセス手段によって取得されたオブジェクトを複写する複写処理を実行する。
【0026】
格納手段は、前記複写処理が実行されることによって複写されたオブジェクトと前記資源アクセス手段によって取得されたポリシ情報を構成する表明ポリシ情報とを関連づけて格納する。
【0027】
第2の属性情報取得手段は、前記ユーザによって指定された第2の資源に対するアクセスに関する第2の属性情報を取得する。
【0028】
第2のポリシ評価手段は、前記第2の属性情報取得手段によって取得された第2の属性情報が、前記複写処理が実行されることによって複写されたオブジェクトと関連づけて前記格納手段に格納された表明ポリシ情報に含まれる第2の条件を満たすかを判定する。
【0029】
転写処理実行手段は、前記第2の条件を満たすと前記第2のポリシ評価手段によって判定された場合、前記格納手段に格納された前記複写処理が実行されることによって複写されたオブジェクトを、前記第2の資源に転写する転写処理を実行する。
【図面の簡単な説明】
【0030】
【図1】実施形態に係るオブジェクト複製制御装置のハードウェア構成を示すブロック図。
【図2】図1に示すオブジェクト複製制御装置30の主として機能構成を示すブロック図。
【図3】図2に示す資源40が有するポリシ情報の構成について説明するための図。
【図4】図2に示す資源40が有するポリシ情報を構成する基底ポリシ情報のデータ構造の一例を示す図。
【図5】図2に示す資源40が有するポリシ情報を構成する基底ポリシ情報のデータ構造の一例を示す図。
【図6】図2に示す資源40が有するポリシ情報を構成する基底ポリシ情報のデータ構造の一例を示す図。
【図7】図2に示す資源40が有するポリシ情報を構成する表明ポリシ情報のデータ構造の一例を示す図。
【図8】図2に示す資源40が有するポリシ情報を構成する表明ポリシ情報のデータ刻象の一例を示す図。
【図9】本実施形態に係るオブジェクト複製制御装置30の処理手順を示すシーケンスチャート。
【図10】複製処理制御部32からポリシ評価部34に対して通知される基底ポリシ評価要求のデータ構造の一例を示す図。
【図11】複写オブジェクト一時保管部22のデータ構造の一例を示す図。
【図12】複製処理制御部32からポリシ評価部34に対して通知される表明ポリシ評価要求のデータ構造の一例を示す図。
【発明を実施するための形態】
【0031】
以下、図面を参照して、実施形態について説明する。
【0032】
図1は、本実施形態に係るオブジェクト複製制御装置のハードウェア構成を示すブロック図である。図1に示すように、コンピュータ10は、例えばハードディスクドライブ(HDD:Hard Disk Drive)のような外部記憶装置20と接続されている。この外部記憶装置20は、コンピュータ10によって実行されるプログラム21を格納する。コンピュータ10および外部記憶装置20は、オブジェクト複製制御装置30を構成する。
【0033】
このオブジェクト複製制御装置30は、複製対象となるオブジェクト(複製処理の対象となるオブジェクト)を複写する複写処理および当該複写されたオブジェクトを転写する(貼り付ける)転写処理から構成される当該複製対象となるオブジェクトに対する複製処理を制御する機能を有する。
【0034】
なお、本実施形態に係るオブジェクト複製制御装置30は、例えばユーザ(利用者)またはアプリケーション等からの複製依頼(要求)に基づいて動作するものとする。
【0035】
図2は、図1に示すオブジェクト複製制御装置30の主として機能構成を示すブロック図である。
【0036】
図2に示すように、オブジェクト複製制御装置30は、インタフェース部31、複製処理制御部32、資源アクセス部33、ポリシ評価部34、表明ポリシ情報決定部35、複製処理実行部36および表明ポリシ情報関連づけ部37を含む。本実施形態において、これらの各部31〜37は、図1に示すコンピュータ10が外部記憶装置20に格納されているプログラム21を実行することにより実現されるものとする。このプログラム21は、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラム21が、例えばネットワークを介してコンピュータ10にダウンロードされても構わない。
【0037】
また、オブジェクト複製制御装置30は、複写オブジェクト一時保管部22を含む。本実施形態において、複写オブジェクト一時保管部22は、例えば外部記憶装置20に格納される。
【0038】
なお、本実施形態に係るオブジェクト複製制御装置30は、一般的な操作者であるユーザによって操作されるものとして説明するが、当該一般的な操作者以外の任意の装置からの電文等を介して操作されてもよい。ここで、任意の装置とは、例えばオブジェクト複製制御装置30の外部に配備される装置、当該オブジェクト複製制御装置30の内部に存在する装置または当該オブジェクト複製制御装置30が配備される装置内に存在する装置等が挙げられる。
【0039】
以下の説明では、オブジェクト複製制御装置30は、図2に示す資源40(第1の資源)が有するオブジェクトを資源50(第2の資源)に複製する処理を実行するものとする。
【0040】
なお、資源40は、オブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を有する。資源40が有するポリシ情報は、当該ポリシ情報に割り当てられているオブジェクトに対する複写処理を許可するための適合条件(第1の条件)を含む基底ポリシ情報と、当該基底ポリシ情報に関連づけられている当該オブジェクトに対する転写処理を許可するための適合条件(第2の条件)を含む表明ポリシ情報とから構成される。
【0041】
本実施形態において、資源40が有するオブジェクトとは、例えば文書ファイル内の個々のオブジェクト(文字列または画像等の文書を構成する任意のデータオブジェクト)であるものとする。なお、資源40が有するオブジェクトは、例えば文書(ドキュメント)単位であっても構わない。
【0042】
複写オブジェクト一時保管部22は、複写処理によって複写されたオブジェクトを一時的に格納(保管)するための機能部である。複写オブジェクト一時保管部22には、後述する複写されたオブジェクトと表明ポリシ情報決定部35によって決定された表明ポリシ情報とが関連づけて格納される。
【0043】
インタフェース部31は、ユーザからのオブジェクトに対する複製処理の要求(以下、複製要求と表記)を受け付けるための機能部である。インタフェース部31としては、例えばGUI(Graphical User Interface)およびCUI(Command line User Interface)等が挙げられるが、任意のインタフェース形態をとればよい。
【0044】
インタフェース部31は、複製要求として複写要求および転写要求を受け付ける。複写要求によれば、オブジェクトに対する複製処理を構成する複写処理の実行が要求される。転写要求によれば、オブジェクトに対する複製処理を構成する転写処理の実行が要求される。なお、複製要求としては、まず複写要求がされ、その後に転写要求がされる。
【0045】
なお、本実施形態では、インタフェース部31はユーザから直接要求を受け付けるものとして説明するが、例えばアプリケーションの特定のイベントを監視し、動作する形態であってもよい。つまり、インタフェース部31は、オブジェクトの複製処理に呼応し、動作できればよい。
【0046】
以下、インタフェース部31によって受け付けられた複製要求の対象となるオブジェクト(つまり、複製処理の対象となるオブジェクト)を複製対象オブジェクトと称する。この複製対象オブジェクトは、例えば複製要求の際にユーザによって指定されたオブジェクトである。
【0047】
複製処理制御部32は、インタフェース部31によって受け付けられた複製要求に応じて実行すべき処理全体を制御するための機能部である。複製処理制御部32は、実際に複製処理を実行するか否か(つまり、複製処理の許可または拒否)の判定を行う。
【0048】
なお、本実施形態では、便宜的に、複製処理制御部32が当該複製処理制御部32以外の各機能部間の相互作用制御を担うものとして説明するが、当該各機能部同士で相互作用が行われる構成であってもよい。
【0049】
資源アクセス部33は、インタフェース部31によって受け付けられた複写要求に応じて、複製対象オブジェクト(を含む複数のオブジェクト)を有する資源40に対してアクセスを行うための機能部である。
【0050】
資源アクセス部33は、資源40にアクセスして、当該資源40が有する複製対象オブジェクトおよび当該複製対象オブジェクトに割り当てられているポリシ情報を取得する。
【0051】
なお、本実施形態では、ポリシ情報は複製対象オブジェクトとともに資源40の内部に配置されるものとして説明するが、当該資源40の外部(例えば、オブジェクト複製制御装置30内外に配置されたファイルシステム、データベースまたはリポジトリ等)に当該ポリシ情報が配置されても構わない。この場合、資源アクセス部33は、複製対象オブジェクトに割り当てられるポリシ情報を取得する手段を別途設ければよい。つまり、資源アクセス部33を介して複製対象オブジェクトが取得される際に、当該複製対象オブジェクトに割り当てられているポリシ情報を取得できる構成であればよい。
【0052】
上記したように資源アクセス部33によって取得された複製対象オブジェクトおよびポリシ情報は、少なくとも複写処理が完了するまでの間、オブジェクト複製制御装置30の内部、好適には複製処理制御部32の内部で保持される。
【0053】
ポリシ評価部34は、資源アクセス部33によって取得されたポリシ情報(例えば、複製処理制御部32の内部に保持されるポリシ情報)を構成する基底ポリシ情報および表明ポリシ情報を評価するための機能部である。ポリシ評価部34は、後述するポリシ情報の評価要求(基底ポリシ評価要求および表明ポリシ評価要求)に従って、ポリシ情報を評価する。
【0054】
ここで、複製処理制御部32には、例えば資源40(第1の資源)に対するアクセスに関する属性情報(第1の属性情報)および資源50(第2の資源)に対するアクセスに関する属性情報(第2の属性情報)が予め保持されている。
【0055】
この場合、ポリシ評価部34は、複製処理制御部32から資源40に対するアクセスに関する属性情報を取得する。ポリシ評価部34は、取得された資源40に対するアクセスに関する属性情報が資源アクセス部33によって取得されたポリシ情報を構成する基底ポリシ情報に含まれる適合条件(第1の条件)を満たすか否かを判定する。
【0056】
また、ポリシ評価部34は、複製処理制御部32から資源50に対するアクセスに関する属性情報を取得する。ポリシ評価部34は、取得された資源50に対するアクセスに関する属性情報が複写オブジェクト一時保管部22に格納されている表明ポリシ情報に含まれる適合条件(第2の条件)を満たすか否かを判定する。
【0057】
表明ポリシ情報決定部35は、ポリシ評価部34による評価結果(判定結果)に応じた表明ポリシ情報を、資源アクセス部33によって取得されたポリシ情報を構成する表明ポリシ情報の中から決定するための機能部である。
【0058】
複製処理実行部36は、資源アクセス部33によって取得された複製対象オブジェクトに対して複製処理を実行するための機能部である。
【0059】
複製処理実行部36は、資源アクセス部33によって取得された複製対象オブジェクトを複写する複写処理を実行する。複製処理実行36は、複製処理が実行されることによって複写されたオブジェクト(以下、複写オブジェクトと表記)を複写オブジェクト一時保管部22に格納する。
【0060】
また、複製処理実行部36は、複写オブジェクト一時保管部22に格納された複写オブジェクトを、資源50に転写する転写処理を実行する。
【0061】
表明ポリシ情報関連づけ部37は、複写オブジェクトおよび表明ポリシ情報決定部35によって決定された表明ポリシ情報を関連づけるための機能部である。表明ポリシ情報関連づけ部37は、表明ポリシ情報決定部35によって決定された表明ポリシ情報を、複写オブジェクト(複写オブジェクト一時保管部22に格納された複写オブジェクト)に関連づけて複写オブジェクト一時保管部22に格納する。
【0062】
次に、図3を参照して、図2に示す資源40が有するポリシ情報の構成について説明する。
【0063】
図3に示すように、ポリシ情報は、例えば1つの基底ポリシ情報と1つ以上の表明ポリシ情報から構成される。つまり、基底ポリシ情報は、1つ以上の表明ポリシ情報に関連づけられる。
【0064】
なお、本実施形態において、ポリシ情報を構成する基底ポリシ情報および表明ポリシ情報は、例えばXACML V2.0形式に応じた記述形式によって表現されているものとするが、任意の表現形態をとってもよい。
【0065】
以下、図4〜図8を参照して、資源40が有するポリシ情報を構成する基底ポリシ情報および表明ポリシ情報のデータ構造について説明する。
【0066】
なお、以下に説明する基底ポリシ情報および表明ポリシ情報の記述例では、例えば名前空間、属性または要素等のうち本実施形態において必要な構成要素以外の構成要素については記載を省略する。
【0067】
また、基底ポリシ情報および表明ポリシ情報は、それぞれ独立したポリシ情報(例えばファイル等)としてもよく、また、1つの情報の内部構成要素(例えばXML文書内の要素等)としてもよい。
【0068】
まず、図4〜図6を参照して、図2に示す資源40が有するポリシ情報を構成する基底ポリシ情報のデータ構造の一例について説明する。
【0069】
基底ポリシ情報は、複製対象オブジェクトに対する複製処理を構成する複写処理の可否判定(許可または拒否の判定)の基準となる情報であり、かつ、表明ポリシ情報を決定するための情報である。基底ポリシ情報には、上述した複写処理を許可するための適合条件が記述されている。
【0070】
図4〜図6に示すように、基底ポリシ情報は、1つ以上のPolicy要素を有する。なお、基底ポリシ情報は、1つ以上のPolicy要素を纏める情報としてPolicySet要素を有していてもよい。また、PolicySet要素が他のPolicySet要素に含まれるような構成であってもよい。
【0071】
基底ポリシ情報が有するPolicy要素およびPolicySet要素は、例えばTarget要素を含む。このTarget要素には、複写処理を許可するか否かを判定するための条件(適合条件)が記述される。
【0072】
このTarget要素に記述される適合条件(ポリシ表現)としては、例えば“subject(主体)”、“action(行為)”、“resource(資源)”および“environment(環境)”のうちの少なくとも1つが構成要素として含まれる。
【0073】
“subject(主体)”は、アクセス実行の主体を示し、Subjects要素で示される。“action(行為)”は、アクセス実行の行為内容を示し、Actions要素で示される。 “resource(資源)”は、アクセス実行の客体を示し、Recources要素で示される。また、“environment(環境)”は、アクセス実行の環境を示す。
【0074】
ここでは、適合条件の表現としてTarget要素が用いられているが、Target要素で表現することができない任意の適合条件(時刻またはアクセス場所等)を表現する場合には、Condition要素を用いることができる。
【0075】
また、基底ポリシ情報が有するPolicy要素は、Rule要素を含む。このRule要素には、複製処理におけるアクセス制御の根幹的な内容(ここでは、複写処理を許可するか否かの情報)が記述される。
【0076】
更に、基底ポリシ情報が有するPolicy要素は、Obligation(責務)要素を含む。このObligation要素には、アクセス決定に伴う責務が記述される。ここでは、Obligation要素には、表明ポリシ情報の指定を行う責務が記述される。なお、Obligations要素は、複数のObligation要素を纏めるための要素である。
【0077】
図4〜図6に示す基底ポリシ情報では、3つのPolicy要素が設定されている。また、図4〜図6に示す基底ポリシ情報では、PolicySetId属性の属性値として“root”を持つPolicySet要素(以下、ルートポリシセットと表記)によって、この3つのPolicy要素が纏められている。
【0078】
このルートポリシセットにおいては、直下の子要素であるTarget要素で、適合条件を満たす行為(Action)が“Copy(複写処理)”であること、および適合条件を満たす資源(Resource)が“object1”であることが表現されている。このTarget要素によれば、資源が有するオブジェクトである“object1”を複写処理する場合にこのポリシセット(ルートポリシセット)が適合することが示されている。
【0079】
つまり、図4〜図6に示す基底ポリシ情報から構成されるポリシ情報は、資源が有するオブジェクトである“object1”に割り当てられているポリシ情報である。
【0080】
また、図4〜図6に示す基底ポリシ情報の例では、複写処理以外の行為は適合条件を満たさず、“NotApplicable(適合なし)”と判定される。
【0081】
なお、ルートポリシセットのPolicySetId属性の属性値には、例えば基底ポリシ情報を識別するための識別子が指定されてもよい。
【0082】
ここで、図4〜図6に示す基底ポリシ情報において設定されている3つのPolicy要素のうち、PolicyId属性の属性値として“policy1”を持つPolicy要素(以下、ポリシ1と表記)について説明する。
【0083】
ポリシ1においては、直下の子要素であるTarget要素で、適合条件を満たすアクセス主体(Subject)を識別するための識別子が“user0001”であることが表現されている。これによれば、アクセス主体を識別するための識別子が“user0001”である場合にポリシ1が適合することが表現されている。このポリシ1に含まれるTarget要素に記述されている適合条件を満たす場合には、基底ポリシ情報に対する評価結果(ポリシ1の効果)としてPermit(ポリシ1に含まれるRule要素のEffect属性の属性値)が得られる。
【0084】
なお、このTarget要素は、RuleId属性の属性値として“rule1”を持つRule要素に記述されてもよい。
【0085】
また、ポリシ1は、OblegationId属性の属性値として“obligation1”を持つObligation要素を含む。このObligation要素においては、表明ポリシ情報の指定を行う責務が表現されている。以下、このObligation要素において表現されている責務を表明ポリシ情報指定責務1と称する。
【0086】
ここで、Obligation要素(表明ポリシ情報指定責務1)のFulfillOn属性の属性値は、“Permit”である。このため、上記したポリシ1の効果が“Permit”を示す場合(つまり、ポリシ1に含まれるTarget要素に記述されている適合条件を満たす場合)、表明ポリシ情報指定責務1が適合することになる。
【0087】
上述したXACML V2.0形式では、Obligation要素は、AttributeAssignment要素を子要素として含むことができる。このため、AttributeAssignment要素のAttributeId属性で、当該Obligation要素が表明ポリシ情報の指定を行う責務であることを示し、AttributeAssignment要素の値で、表明ポリシ情報の指定を示している。
【0088】
つまり、ポリシ1では、“assertionpolicy1”の文字列が表明ポリシ情報を識別する値を表現している。例えば表明ポリシ情報指定責務1が適合する場合には、この“assertionpolicy1”によって識別される表明ポリシ情報が指定される。
【0089】
なお、表明ポリシ情報を識別する値としては、例えば当該表明ポリシ情報が格納されているファイル名または当該表明ポリシ情報を示すURI(Uniform Resource Identifier)等が用いられても構わない。
【0090】
また、表明ポリシ情報指定責務1の表現(責務表現)は、上記したXACML V2.0形式に従った表現の一例を示しており、表明ポリシ情報の指定が明示的に示されるのであれば、他の表現形式が用いられても構わない。
【0091】
次に、図4〜図6に示す基底ポリシ情報において設定されている3つのPolicy要素のうち、PolicyId属性の属性値として“policy2”を持つPolicy要素(以下、ポリシ2と表記)について説明する。
【0092】
ポリシ2においては、直下の子要素であるTarget要素で、適合条件を満たすアクセス主体(Subject)を識別するための識別子が“user0002”であることが表現されている。これによれば、アクセス主体を識別するための識別子が“user0002”である場合にポリシ2が適合することが表現されている。このポリシ2に含まれるTarget要素に記述されている適合条件を満たす場合には、基底ポリシ情報に対する評価結果(ポリシ2の効果)としてPermit(ポリシ2に含まれるRule要素のEffect属性の属性値)が得られる。
【0093】
なお、ポリシ2は、上記したポリシ1と同様に、OblegationId属性の属性値として“obligation2”を持つOblegation要素を含む。このObligation要素においては、表明ポリシ情報の指定を行う責務が表現されている。以下、このObligation要素において表現されている責務を表明ポリシ情報指定責務2と称する。
【0094】
ここで、Obligation要素(表明ポリシ情報指定責務2)のFulfillOn属性の属性値は、“Permit”である。このため、上記したポリシ2の効果が“Permit”を示す場合(つまり、ポリシ2に含まれるTarget要素に記述されている適合条件を満たす場合)、表明ポリシ情報指定責務2が適合することになる。
【0095】
なお、Obligation要素に含まれるAttributeAssignment要素、当該AttributeAssignment要素のAttributeId属性および当該AttributeAssignment要素の値については、上記したポリシ1と同様であるため、その詳しい説明を省略する。
【0096】
つまり、ポリシ2においては、“assertionpolicy2”の文字列が表明ポリシ情報を識別する値を表現している。例えば表明ポリシ情報指定責務2が適合する場合には、この“assertionpolicy2”によって識別される表明ポリシ情報が指定される。
【0097】
上記したように、例えばPolicy要素(またはPolicySet要素)中に表明ポリシ情報の指定を行う責務を配置することにより、当該Policy要素(に含まれるTarget要素に記述されている適合条件)に応じた表明ポリシ情報の指定を行うことができる。
【0098】
次に、図4〜図6に示す基底ポリシ情報において設定されている3つのPolicy要素のうち、PolicyId属性の属性値として“deny−all−others”を持つPolicy要素(以下、拒否ポリシと表記)について説明する。
【0099】
この拒否ポリシは、基底ポリシ情報に対する評価結果(拒否ポリシの効果)としてDeny(拒否ポリシに含まれるRule要素のEffect属性の属性値)を与えるためのポリシを表現している。図4〜図6に示す基底ポリシ情報においては、ルートポリシセットのPolicyCombiningAlgId属性の属性値は、“ordered−permit−overrides(順序許可優先)”を示している。このため、図4〜図6に示す基底ポリシ情報においては、満たされる適合条件が記述されているポリシが存在しない場合に、ルートポリシセットの最後の記述される拒否ポリシが適合する。具体的には、ポリシ1に記述されている適合条件およびポリシ2に記述されている適合条件の順に当該適合条件を満たすか否かが判定され、当該ポリシ1および2に記述されている適合条件のいずれも満たさない場合にのみ拒否ポリシが適合する。
【0100】
なお、上記した図4〜図6に示す基底ポリシ情報においては、ルートポリシセットの直下の子要素であるTarget要素において資源の適合条件が記述されるものとして説明したが、この資源の適合条件は、ルートポリシセットではなく例えば第1のポリシ等の各ポリシに記述されても構わない。
【0101】
次に、図7および図8を参照して、図2に示す資源40が有するポリシ情報を構成する表明ポリシ情報のデータ構造の一例について説明する。
【0102】
表明ポリシ情報は、複製対象オブジェクトに対する複製処理を構成する転写処理の可否判定(許可または拒否の判定)の基準となる情報である。表明ポリシ情報には、上述した転写処理を許可するための適合条件が記述されている。
【0103】
表明ポリシ情報は、1つ以上のPolicy要素を有する。なお、表明ポリシ情報は、1つ以上のPolicy要素を纏める情報としてPolicySet要素を有していてもよい。また、PolicySet要素が他のPolicySet要素に含まれるような構成であってもよい。
【0104】
表明ポリシ情報が有するPolicy要素およびPolicySet要素は、Target要素を含む。このTarget要素には、転写処理を許可するか否かを判定するための条件(適合条件)が記述される。
【0105】
なお、このTarget要素に記述される適合条件としては、上記したように“subject(主体)”、“action(行為)”、“resource(資源)”および“environment(環境)”のうちの少なくとも1つが構成要素として含まれる。
【0106】
また、表明ポリシ情報が有するPolicy要素は、Rule要素を含む。このRule要素には、複製処理におけるアクセス制御の根幹的な内容(ここでは、転写処理を許可するか否かの情報)が記述される。
【0107】
このように、表明ポリシ情報は、上記した基底ポリシ情報と同様の構成をとる。なお、表明ポリシ情報と基底ポリシ情報との相違点は、後述するように適合条件を満たす行為(Action)が“Paste(転写処理)”である点と、表明ポリシ情報にはObligation要素(つまり、表明ポリシ情報の指定を行う責務)が存在しない点である。なお、図7および図8に示す表明ポリシ情報の例では、ルートポリシセットにおける資源の適合条件については省略されている。
【0108】
図7および図8に示す表明ポリシ情報では、2つのPolicy要素が設定されている。また、PolicySetId属性の属性値として“root”を持つPolicySet要素(以下、ルートポリシセットと表記)によって、この2つの要素が纏められている。
【0109】
このルートポリシセットにおいては、直下の子要素であるTarget要素で、適合条件を満たす行為(Action)が“Paste(転写処理)”であることが表現されている。このTarget要素によれば、転写処理の場合にこのポリシセット(ルートポリシセット)が適合することが示されている。つまり、図7および図8に示す表明ポリシ情報の例では、転写処理以外の行為は適合条件を満たさない。
【0110】
ここで、図7および図8に示す表明ポリシ情報において設定されている2つのPolicy要素のうち、PolicyId属性の属性値として“policy3”を持つPolicy要素(以下、ポリシ3と表記)について説明する。
【0111】
ポリシ3においては、直下の子要素であるTarget要素で、適合条件に合致するアクセス主体(Subject)を識別するための識別子が“user0001”であり、転写先資源(Resource)の種別が“secret”であることが表現されている。これによれば、アクセス主体を識別するための識別子が“user0001”であり、転写先資源の種別が“secret”である場合にポリシ3が適合することが表現されている。このポリシ3に含まれるTarget要素に記述されている適合条件を満たす場合には、表明ポリシ情報に対する評価結果(ポリシ3の効果)としてPermit(ポリシ3に含まれるRule要素のEffect属性の属性値)が得られる。
【0112】
このTarget要素は、RuleId属性の属性値として“rule3”を持つRule要素に記述されてもよい。
【0113】
なお、図7および図8に示す表明ポリシ情報において設定されている2つのPolicy要素のうち、PolicyId属性の属性値として“deny−all−others”を持つPolicy要素は、上述した図4〜図6に示す基底ポリシ情報における拒否ポリシと同様であるため、その詳しい説明を省略する。
【0114】
図7および図8に示す表明ポリシ情報においては、識別子“user0001”によって識別されるアクセス主体が、資源種別が“secret”である資源に転写する場合にのみ転写処理が許可されるものとして説明したが、転写処理の可否の判定基準としてこれら以外の任意の条件が設定されていても構わない。
【0115】
次に、図9のシーケンスチャートを参照して、本実施形態に係るオブジェクト複製制御装置30の処理手順について説明する。
【0116】
まず、ユーザは、オブジェクト複製制御装置30を操作することによって、複製対象オブジェクトに対する複製処理を構成する複写処理の実行を当該オブジェクト複製制御装置30に依頼する。ここでは、複製対象オブジェクトは、資源40が有するオブジェクトであるものとする。このとき、ユーザは、例えば複製元資源(つまり、複製対象オブジェクトを有する資源40)および複製対象オブジェクトの取得方法(当該複製対象オブジェクトの場所を示すURIおよびHTTP等の取得プロトコル)を指定することが望ましい。
【0117】
これにより、オブジェクト複製制御装置30に含まれるインタフェース部31は、ユーザからの複写処理の実行依頼(複写要求)を受け付ける(ステップS1)。インタフェース部31によって受け付けられた複写要求は、複製処理制御部32に通知される(ステップS2)。
【0118】
複製処理制御部32は、インタフェース部31から複写要求が通知されると、資源アクセス部33に対して資源アクセス要求を通知することによって、複製対象オブジェクトを有する資源40に対するアクセスを要求する(ステップS3)。
【0119】
資源アクセス部33は、複製処理制御部32からの要求(資源アクセス要求)に応じて、複製対象オブジェクトを有する資源40にアクセスする(ステップS4)。
【0120】
これにより、資源アクセス部33は、資源40が有する複製対象オブジェクトおよび当該複製対象オブジェクトに割り当てられているポリシ情報を取得する(ステップS5)。資源アクセス部33によって取得されたポリシ情報は、基底ポリシ情報と当該基底ポリシ情報に関連づけられている1つ以上の表明ポリシ情報(以下、表明ポリシ情報群と表記)とから構成される。
【0121】
資源アクセス部33は、資源40から取得された複製対象オブジェクトおよびポリシ情報(基底ポリシ情報および表明ポリシ情報群)を複製処理制御部32に渡す(ステップ6)。
【0122】
複製処理制御部32は、資源アクセス部33から複製対象オブジェクトおよびポリシ情報が渡されると、ポリシ評価部34に対して基底ポリシ評価要求を通知することによって、基底ポリシ情報の評価を要求する(ステップS7)。このとき、複製処理制御部32は、基底ポリシ情報をポリシ評価部34に渡す。
【0123】
ここで、複製処理制御部32からポリシ評価部34に対して通知される基底ポリシ評価要求には、基底ポリシ情報を評価する際に用いられる属性情報(複製元資源である資源40に対するアクセスに関する属性情報)が含まれる。この属性情報には、例えばアクセスの主体、当該アクセスの客体、当該アクセスの行為(内容)または当該アクセスの環境を示す情報等が含まれる。この属性情報は、例えば複製処理制御部32において予め保持されている。
【0124】
図10は、複製処理制御部32からポリシ評価部34に対して通知される基底ポリシ評価要求のデータ構造の一例を示す。
【0125】
図10に示す基底ポリシ評価要求には、例えばアクセスの主体(資源40に対するアクセス実行の主体)を識別するための識別子を示す “user0001”、アクセスの行為(資源40に対するアクセス実行の行為内容)を示す“Copy”およびアクセスの客体(アクセス実行の客体である資源40が有するオブジェクト)を示す“object1”が属性情報として含まれている。
【0126】
なお、図10に示す基底ポリシ評価要求は、上述したXACML V2.0形式に従ったRequest要素の表現であり、ここではその詳しい説明を省略する。
【0127】
再び図9に戻ると、ポリシ評価部34は、複製処理制御部32から通知された基底ポリシ評価要求に含まれる属性情報を取得する。ポリシ評価部34は、取得された属性情報を用いて当該複製処理制御部32から渡された基底ポリシ情報を評価する。この場合、ポリシ評価部34は、取得された属性情報が基底ポリシ情報に含まれる適合条件(図4〜図6に示すTarget要素に記述されている適合条件)を満たすか否かを判定する。
【0128】
ここでは、ポリシ評価部34は、基底ポリシ評価要求に含まれる属性情報を取得するものとして説明したが、例えばポリシ評価部34の内部で属性情報を取得するような構成であっても構わない。つまり、ポリシ評価部34が属性情報を取得できる構成であればよい。
【0129】
また、基底ポリシ情報は複製処理制御部32から直接的に渡されるものとして説明したが、例えば複製処理制御部32から間接的な参照情報(例えば、URI等)が与えられ、当該参照情報に基づいてポリシ評価部34が基底ポリシ情報を取得する構成であっても構わない。つまり、ポリシ評価部34が評価の対象となる基底ポリシ情報を取得できる構成であればよい。
【0130】
ポリシ評価部34は、基底ポリシ情報の評価結果を複製処理制御部32に返す(ステップS8)。この基底ポリシ情報の評価結果には、基底ポリシ情報を評価した際に得られた効果(Effect)が含まれる。具体的には、基底ポリシ情報の評価結果には、当該基底ポリシ情報に含まれる適合条件を満たすか否かの判定結果(“Permit”または“Deny”)が含まれる。また、基底ポリシ情報の評価結果に“Permit”が含まれている場合には、当該基底ポリシ情報の評価結果には、適合する表明ポリシ情報指定責務(つまり、適合条件が記述されたTarget要素を含むPolicy要素に含まれるObligation要素に記述された責務)が更に含まれる。
【0131】
次に、複製処理制御部32は、ポリシ評価部34から返された基底ポリシ情報の評価結果に“Permit”が含まれているか否かを判定する。
【0132】
基底ポリシ情報の評価結果に“Permit”が含まれていない(つまり、“Deny”が含まれている)と判定された場合、オブジェクト複製制御装置30の処理は終了される。この場合、例えばインタフェース部31を介して、複製対象オブジェクトに対する複製処理(を構成する複写処理)が拒否された旨がユーザに対して通知される。
【0133】
一方、基底ポリシ情報の評価結果に“Permit”が含まれていると判定された場合、複製処理制御部32は、表明ポリシ情報決定部35に対して表明ポリシ決定要求を通知することによって、表明ポリシ情報の決定を要求する(ステップS9)。この表明ポリシ情報決定部35に対して通知される表明ポリシ決定要求には、上記した基底ポリシ情報の評価結果が含まれる。
【0134】
表明ポリシ情報決定部35は、複製処理制御部32から通知された表明ポリシ決定要求に含まれる基底ポリシ情報の評価結果を取得する。表明ポリシ情報決定部35は、取得された基底ポリシ情報の評価結果に含まれる表明ポリシ情報指定責務(つまり、Obligation要素)に記述された内容(つまり、表明ポリシ情報を識別する値)に従って、上記したステップS5において資源40から取得された表明ポリシ情報群の中から表明ポリシ情報を決定する。つまり、表明ポリシ情報決定部35は、表明ポリシ情報群の中から、ポリシ評価部34によって満たされると判定された適合条件(基底ポリシ情報に含まれる適合条件)に応じた表明ポリシ情報を決定する。
【0135】
なお、資源40から取得された表明ポリシ情報群は、複製処理制御部32から事前に取得されていてもよいし、当該複製処理制御部32から通知される表明ポリシ決定要求に含まれていても構わない。
【0136】
表明ポリシ情報決定部35は、表明ポリシ決定要求に対する応答として、決定された表明ポリシ情報を複製処理制御部32に対して通知する(ステップS10)。
【0137】
次に、複製処理制御部32は、複製処理実行部36に対して複写要求を通知することによって、複製対象オブジェクトに対する複写処理を要求する(ステップS11)。複製処理制御部32から複製処理実行部36に対して通知される複写要求には、複製対象オブジェクトが含まれる。
【0138】
複製処理実行部36は、複製処理制御部32から通知された複写要求に含まれる複製対象オブジェクトを複写する複写処理を実行する。複製処理実行部36は、この複写処理が実行されることによって複写された複製対象オブジェクト(複写オブジェクト)を複写オブジェクト一時保管部22に格納(一時保管)する(ステップS12)。
【0139】
次に、複製処理制御部32は、表明ポリシ情報関連づけ部37に対して関連づけ要求を通知することによって、表明ポリシ情報決定部35によって決定された表明ポリシ情報(つまり、表明ポリシ情報決定部35から通知された表明ポリシ情報)と複写オブジェクトとの関連づけを要求する(ステップS13)。この複製処理制御部32から表明ポリシ情報関連づけ部37に対して通知される関連づけ要求には、表明ポリシ情報決定部35によって決定された表明ポリシ情報が含まれる。
【0140】
表明ポリシ情報関連づけ部37は、複製処理制御部32から通知された関連づけ要求に含まれる表明ポリシ情報を、複写オブジェクト一時保管部22に格納されている複写オブジェクトに関連づける。この場合、表明ポリシ情報関連づけ部37は、関連づけ要求に含まれる表明ポリシ情報を、複写オブジェクトに対応づけて複写オブジェクト一時保管部22に格納する。なお、複写オブジェクトと表明ポリシ情報とを関連づけるための表を保持することによって当該複写オブジェクトと表明ポリシ情報とが関連づけられてもよい。
【0141】
ここで、図11は、複写オブジェクト一時保管部22のデータ構造の一例を示す。図11に示すように、複写オブジェクト一時保管部22には、複写オブジェクトおよび表明ポリシ情報が対応づけて格納される。
【0142】
複写オブジェクト一時保管部22に格納されている複写オブジェクトは、上記したように複製処理実行部36によって複写処理が実行されることによって複写された複製対象オブジェクトの実体であり、例えばメモリ上に展開されたバイト配列データまたは間接参照するためのURI等、任意の形態をとればよい。
【0143】
また、複写オブジェクト一時保管部22に格納されている表明ポリシ情報は、上記したように表明ポリシ情報決定部35によって決定された表明ポリシ情報の実体であり、複写オブジェクトと同様に任意の形態をとればよい。
【0144】
このように複写オブジェクトおよび表明ポリシ情報が対応づけて複写オブジェクト一時保管部22に格納されることによって、当該複写オブジェクトと表明ポリシ情報とが関連づけられる。
【0145】
なお、複写オブジェクト一時保管部22には、複写オブジェクトを識別するための識別子が格納されていても構わない。この識別子は、例えば複写オブジェクトが複数同時に存在することが許容される場合に用いられる。この識別子は、複製処理実行部36によって複写処理が実行される際に複製処理制御部32によって生成され、当該複写処理が実行されることによって複写された複製対象オブジェクト(複写オブジェクト)に割り当てられることが望ましい。
【0146】
再び図9に戻ると、表明ポリシ情報関連づけ部37による表明ポリシ情報と複写オブジェクトとの関連づけが完了した場合、複製処理制御部32は、複製対象オブジェクトに対する複製処理を構成する複写処理が完了した旨の通知(以下、複写完了通知と表記)をインタフェース部31に対して通知する(ステップS15)。また、インタフェース部31は、複製処理制御部32からの複写完了通知をユーザに対して通知する(ステップS16)。なお、ステップS15およびS16の処理は、省略されても構わない。
【0147】
次に、ユーザは、オブジェクト複製制御装置30を操作することによって、複製対象オブジェクトに対する複製処理を構成する転写処理(つまり、上記した複写オブジェクトを転写する処理)の実行を当該オブジェクト複製制御装置30に依頼する。ここでは、複写オブジェクトを資源50に転写するものとして説明する。このとき、ユーザは、例えば複製先資源(ここでは、資源50)および転写処理の対象となる複写オブジェクトの指定方法(当該複写オブジェクトの場所を示すURIおよびHTTP等の転写プロトコル)を指定することが望ましい。
【0148】
これにより、インタフェース部31は、ユーザからの転写処理の実行依頼(転写要求)を受け付ける(ステップS17)。インタフェース部31によって受け付けられた転写要求は、複製処理制御部32に通知される(ステップS18)。
【0149】
複製処理制御部32は、インタフェース部31から転写要求が通知されると、複写オブジェクト一時保管部22に対してアクセスする(ステップS19)。これにより、複製処理制御部32は、複写オブジェクト一時保管部22に格納されている表明ポリシ情報(転写処理の対象となる複写オブジェクトに関連づけられている表明ポリシ情報)を取得する(ステップS20)。
【0150】
次に、複製処理制御部32は、ポリシ評価部34に対して表明ポリシ評価要求を通知することによって、表明ポリシ情報の評価を要求する(ステップS21)。このとき、複製処理制御部32は、複写オブジェクト一時保管部22から取得された表明ポリシ情報をポリシ評価部34に渡す。
【0151】
ここで、複製処理制御部32からポリシ評価部34に対して通知される表明ポリシ評価要求には、表明ポリシ情報を評価する際に用いられる属性情報(複製先資源である資源50に対するアクセスに関する属性情報)が含まれる。この属性情報には、例えばアクセスの主体、当該アクセスの客体、当該アクセスの行為(内容)または当該アクセスの環境を示す情報等が含まれる。この属性情報は、例えば複製処理制御部32において予め保持されている。
【0152】
図12は、複製処理制御部32からポリシ評価部34に対して通知される表明ポリシ評価要求のデータ構造の一例を示す。
【0153】
図12に示す表明ポリシ評価要求には、例えばアクセスの主体(資源50に対するアクセス実行の主体)を識別するための識別子を示す“user0001”、アクセスの行為(資源50に対するアクセス実行の行為内容)を示す“Paste”および資源種別(アクセス実行の客体である当該資源50の種別)を示す“secret”が属性情報として含まれている。
【0154】
なお、図12に示す表明ポリシ評価要求は、上記した図10に示す規定ポリシ評価要求と同様に、XACML V2.0形式に従ったRequest要素の表現であり、ここではその詳しい説明を省略する。
【0155】
再び図9に戻ると、ポリシ評価部34は、複製処理制御部32から通知された表明ポリシ評価要求に含まれる属性情報を取得する。ポリシ評価部34は、取得された属性情報を用いて当該複製処理制御部32から渡された表明ポリシ情報を評価する。この場合、ポリシ評価部34は、取得された属性情報が表明ポリシ情報に含まれる適合条件(図7および図8に示すTarget要素に記述されている適合条件)を満たすか否かを判定する。
【0156】
ここでは、ポリシ評価部34は、表明ポリシ評価要求に含まれる属性情報を取得するものとして説明したが、例えば当該ポリシ評価部34の内部で属性情報を取得するような構成であっても構わない。つまり、ポリシ評価部34が属性情報を取得できる構成であればよい。
【0157】
また、表明ポリシ情報は複製処理制御部32から直接的に渡されるものとして説明したが、例えば複製処理制御部32から間接的な参照情報(例えば、URI等)が与えられ、当該参照情報に基づいてポリシ評価部34が表明ポリシ情報を取得する構成であっても構わない。つまり、ポリシ評価部34が評価の対象となる表明ポリシ情報を取得できる構成であればよい。
【0158】
ポリシ評価部34は、表明ポリシ情報の評価結果を複製処理制御部32に返す(ステップS22)。この表明ポリシ情報の評価結果には、表明ポリシ情報を評価した際に得られた効果(Effect)が含まれる。具体的には、表明ポリシ情報の評価結果には、当該表明ポリシ情報に含まれる適合条件を満たすか否かの判定結果(“Permit”または“Deny”)が含まれる。
【0159】
次に、複製処理制御部32は、ポリシ評価部34から返された表明ポリシ情報の評価結果に“Permit”が含まれているか否かを判定する。
【0160】
表明ポリシ情報の評価結果に“Permit”が含まれていない(つまり“Deny”が含まれている)と判定された場合、オブジェクト複製制御装置30の処理は終了される。この場合、例えばインタフェース部31を介して、複製対象オブジェクトに対する複製処理(を構成する転写処理)が拒否された旨がユーザに対して通知される。
【0161】
一方、表明ポリシ情報の評価結果に“Permit”が含まれていると判定された場合、複製処理制御部32は、複製処理実行部36に対して転写要求を通知することによって、複写オブジェクト(複写オブジェクト一時保管部22に格納されている複写オブジェクト)に対する転写処理を要求する(ステップS23)。
【0162】
複製処理実行部36は、複製処理制御部32から転写要求が通知されると、複写オブジェクト一時保管部22に対して複写オブジェクトの取得を要求する(ステップS24)。これにより、複製処理実行部36は、複写オブジェクト一時保管部22に格納されている複写オブジェクトを取得する(ステップS25)。
【0163】
次に、複製処理実行部36は、複写オブジェクト一時保管部22から取得された複写オブジェクトを複製先資源として指定された資源(ここでは、資源50)に対して転写する転写処理を実行する(ステップS26)。
【0164】
複製処理実行部36による転写処理が完了した場合、複製処理制御部32は、複製対象オブジェクトに対する複製処理を構成する転写処理が完了した旨の通知(以下、転写完了通知と表記)をインタフェース部31に対して通知する(ステップS27)。また、インタフェース部31は、複写処理制御部32からの転写完了通知をユーザに対して通知する(ステップS28)。なお、ステップS27およびS28の処理は、省略されても構わない。
【0165】
上記した図9の説明では、ステップS17において転写要求がインタフェース部31によって受け付けられるものとして説明したが、例えば転写要求がステップS1において複写要求と同時に受け付けられても構わない。
【0166】
上記したように本実施形態においては、複製元である資源40にアクセスして、複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を取得し、当該資源40に対するアクセスに関する属性情報(第1の属性情報)が当該ポリシ情報を構成する基底ポリシ情報に含まれる適合条件(第1の条件)を満たすか否かを判定し、当該基底ポリシ情報に含まれる適合条件を満たすと判定された場合には、ポリシ情報を構成する表明ポリシ情報の中から当該適合条件に応じた表明ポリシ情報を決定する。また、本実施形態においては、決定された表明ポリシ情報および複写オブジェクト(複写された複製対象オブジェクト)が対応づけて複写オブジェクト一時保管部22に格納される。また、本実施形態においては、複写オブジェクト一時保管部22に格納された表明ポリシ情報に含まれる適合条件(第2の条件)を満たすかを判定し、当該表明ポリシ情報に含まれる適合条件を満たすと判定された場合には複写オブジェクト一時保管部22に格納された複写オブジェクトを複写先である資源50に転写する。
【0167】
つまり、本実施形態においては、複製対象オブジェクトに対する複製処理を構成する複写処理時に基底ポリシ情報が評価され、当該評価結果に応じて当該基底ポリシ情報に関連づけられている表明ポリシ情報が決定され、当該決定された表明ポリシ情報および複写オブジェクトが関連づけられて複写オブジェクト一時保管部22に格納され、当該複製処理を構成する転写処理時に当該複写オブジェクト一時保管部22に格納された表明ポリシ情報が評価される。このため、本実施形態においては、資源が有するオブジェクトに対する複製処理をオブジェクト単位で適切に制御することが可能となる。
【0168】
なお、本実施形態においては、複写オブジェクトは複写オブジェクト一時保管部22に格納されるものとして説明したが、当該複写オブジェクトは例えばファイルまたはデータベース等の複写オブジェクト一時保管部22以外の記憶部(図示せず)に格納されてもよく、また、当該複写オブジェクトが例えばメモリ上に展開されるような構成であっても構わない。
【0169】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
また、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、光磁気ディスク(MO)、半導体メモリ等の記憶媒体に格納して頒布することもできる。
【0170】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼動しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行してもよい。
【0171】
更に、本実施形態における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【0172】
また、記憶媒体は1つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本実施形態における記憶媒体に含まれ、媒体構成は何れの構成であってもよい。
【0173】
なお、本実施形態におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
【0174】
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【符号の説明】
【0175】
10…コンピュータ、20…外部記憶装置、22…複写オブジェクト一時保管部(格納手段)、30…オブジェクト複製制御装置、31…インタフェース部、32…複製処理制御部、33…資源アクセス部、34…ポリシ評価部、35…表明ポリシ情報決定部、36…複製処理実行部、37…表明ポリシ情報関連づけ部、40…資源(第1の資源)、50…資源(第2の資源)。
【特許請求の範囲】
【請求項1】
複製対象となるオブジェクトを複写する複写処理および当該複写されたオブジェクトを転写する転写処理から構成される当該複製対象となるオブジェクトに対する複製処理を制御するオブジェクト複製制御装置において、
前記複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報であって前記複写処理を許可するための第1の条件を含む基底ポリシ情報と当該基底ポリシ情報に関連づけられている前記転写処理を許可するための第2の条件を含む表明ポリシ情報とから構成されるポリシ情報を有する第1の資源にアクセスして、ユーザによって指定された複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を取得する資源アクセス手段と、
前記第1の資源に対するアクセスに関する第1の属性情報を取得する第1の属性情報取得手段と、
前記第1の属性情報取得手段によって取得された第1の属性情報が前記資源アクセス手段によって取得されたポリシ情報を構成する基底ポリシ情報に含まれる第1の条件を満たすかを判定する第1のポリシ評価手段と、
前記第1の条件を満たすと前記第1のポリシ評価手段によって判定された場合、前記資源アクセス手段によって取得されたオブジェクトを複写する複写処理を実行する複写処理実行手段と、
前記複写処理が実行されることによって複写されたオブジェクトと前記資源アクセス手段によって取得されたポリシ情報を構成する表明ポリシ情報とを関連づけて格納する格納手段と、
前記ユーザによって指定された第2の資源に対するアクセスに関する第2の属性情報を取得する第2の属性情報取得手段と、
前記第2の属性情報取得手段によって取得された第2の属性情報が、前記複写処理が実行されることによって複写されたオブジェクトと関連づけて前記格納手段に格納された表明ポリシ情報に含まれる第2の条件を満たすかを判定する第2のポリシ評価手段と、
前記第2の条件を満たすと前記第2のポリシ評価手段によって判定された場合、前記格納手段に格納された前記複写処理が実行されることによって複写されたオブジェクトを、前記第2の資源に転写する転写処理を実行する転写処理実行手段と
を具備することを特徴とするオブジェクト複製制御装置。
【請求項2】
表明ポリシ情報決定手段を更に具備し、
前記第1の資源が有するポリシ情報は、前記基底ポリシ情報と当該基底ポリシ情報関連づけられている1つ以上の表明ポリシ情報とから構成され、
前記表明ポリシ情報決定手段は、前記第1の条件を満たすと前記第1のポリシ評価手段によって判定された場合、前記資源アクセス手段によって取得されたポリシ情報を構成する1つ以上の表明ポリシ情報の中から当該第1の条件に応じた表明ポリシ情報を決定し、
前記格納手段は、前記複写処理が実行されることによって複写されたオブジェクトと前記決定された表明ポリシ情報とを関連づけて格納する
ことを特徴とする請求項1記載のオブジェクト複製制御装置。
【請求項3】
前記基底ポリシ情報に含まれる第1の条件は、前記第1の資源に対するアクセスの主体、当該アクセスの客体、当該アクセスの行為内容または当該アクセスの環境のうちの少なくとも1つを構成要素として含み、
前記表明ポリシ情報に含まれる第2の条件は、前記第2の資源に対するアクセスの主体、当該アクセスの客体、当該アクセスの行為内容または当該アクセスの環境のうちの少なくとも1つを構成要素として含み、
前記第1の属性情報取得手段によって取得される第1の属性情報は、前記第1の資源に対するアクセスの主体、当該アクセスの客体、当該アクセスの行為内容または当該アクセスの環境を示す情報を含み、
前記第2の属性情報取得手段によって取得される第2の属性情報は、前記第2の資源に対するアクセスの主体、当該アクセスの客体、当該アクセスの行為内容または当該アクセスの環境を示す情報を含む
ことを特徴とする請求項1記載のオブジェクト複製制御装置。
【請求項4】
格納手段を有する外部記憶装置と当該外部記憶装置を利用するコンピュータとから構成され、複製対象となるオブジェクトを複写する複写処理および当該複製されたオブジェクトを転写する転写処理から構成される当該複製対象となるオブジェクトに対する複製処理を制御するオブジェクト複製制御装置において、前記コンピュータによって実行されるプログラムであって、
前記コンピュータに、
前記複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報であって前記複写処理を許可するための第1の条件を含む基底ポリシ情報と当該基底ポリシ情報に関連づけられている前記転写処理を許可するための第2の条件を含む表明ポリシ情報とから構成されるポリシ情報を有する第1の資源にアクセスして、ユーザによって指定された複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を取得するステップと、
前記第1の資源に対するアクセスに関する第1の属性情報を取得するステップと、
前記取得された第1の属性情報が前記取得されたポリシ情報を構成する基底ポリシ情報に含まれる第1の条件を満たすかを判定するステップと、
前記第1の条件を満たすと判定された場合、前記取得されたオブジェクトを複写する複写処理を実行するステップと、
前記複写処理が実行されることによって複写されたオブジェクトと前記取得されたポリシ情報を構成する表明ポリシ情報を関連づけて前記格納手段に格納するステップと、
前記ユーザによって指定された第2の資源に対するアクセスに関する第2の属性情報を取得するステップと、
前記取得された第2の属性情報が、前記複写処理が実行されることによって複写されたオブジェクトと関連づけて前記格納手段に格納された表明ポリシ情報に含まれる第2の条件を満たすかを判定するステップと、
前記第2の条件を満たすと判定された場合、前記格納手段に格納された前記複写処理が実行されることによって複写されたオブジェクトを、前記第2の資源に転写する転写処理を実行するステップと
を実行させるためのプログラム。
【請求項1】
複製対象となるオブジェクトを複写する複写処理および当該複写されたオブジェクトを転写する転写処理から構成される当該複製対象となるオブジェクトに対する複製処理を制御するオブジェクト複製制御装置において、
前記複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報であって前記複写処理を許可するための第1の条件を含む基底ポリシ情報と当該基底ポリシ情報に関連づけられている前記転写処理を許可するための第2の条件を含む表明ポリシ情報とから構成されるポリシ情報を有する第1の資源にアクセスして、ユーザによって指定された複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を取得する資源アクセス手段と、
前記第1の資源に対するアクセスに関する第1の属性情報を取得する第1の属性情報取得手段と、
前記第1の属性情報取得手段によって取得された第1の属性情報が前記資源アクセス手段によって取得されたポリシ情報を構成する基底ポリシ情報に含まれる第1の条件を満たすかを判定する第1のポリシ評価手段と、
前記第1の条件を満たすと前記第1のポリシ評価手段によって判定された場合、前記資源アクセス手段によって取得されたオブジェクトを複写する複写処理を実行する複写処理実行手段と、
前記複写処理が実行されることによって複写されたオブジェクトと前記資源アクセス手段によって取得されたポリシ情報を構成する表明ポリシ情報とを関連づけて格納する格納手段と、
前記ユーザによって指定された第2の資源に対するアクセスに関する第2の属性情報を取得する第2の属性情報取得手段と、
前記第2の属性情報取得手段によって取得された第2の属性情報が、前記複写処理が実行されることによって複写されたオブジェクトと関連づけて前記格納手段に格納された表明ポリシ情報に含まれる第2の条件を満たすかを判定する第2のポリシ評価手段と、
前記第2の条件を満たすと前記第2のポリシ評価手段によって判定された場合、前記格納手段に格納された前記複写処理が実行されることによって複写されたオブジェクトを、前記第2の資源に転写する転写処理を実行する転写処理実行手段と
を具備することを特徴とするオブジェクト複製制御装置。
【請求項2】
表明ポリシ情報決定手段を更に具備し、
前記第1の資源が有するポリシ情報は、前記基底ポリシ情報と当該基底ポリシ情報関連づけられている1つ以上の表明ポリシ情報とから構成され、
前記表明ポリシ情報決定手段は、前記第1の条件を満たすと前記第1のポリシ評価手段によって判定された場合、前記資源アクセス手段によって取得されたポリシ情報を構成する1つ以上の表明ポリシ情報の中から当該第1の条件に応じた表明ポリシ情報を決定し、
前記格納手段は、前記複写処理が実行されることによって複写されたオブジェクトと前記決定された表明ポリシ情報とを関連づけて格納する
ことを特徴とする請求項1記載のオブジェクト複製制御装置。
【請求項3】
前記基底ポリシ情報に含まれる第1の条件は、前記第1の資源に対するアクセスの主体、当該アクセスの客体、当該アクセスの行為内容または当該アクセスの環境のうちの少なくとも1つを構成要素として含み、
前記表明ポリシ情報に含まれる第2の条件は、前記第2の資源に対するアクセスの主体、当該アクセスの客体、当該アクセスの行為内容または当該アクセスの環境のうちの少なくとも1つを構成要素として含み、
前記第1の属性情報取得手段によって取得される第1の属性情報は、前記第1の資源に対するアクセスの主体、当該アクセスの客体、当該アクセスの行為内容または当該アクセスの環境を示す情報を含み、
前記第2の属性情報取得手段によって取得される第2の属性情報は、前記第2の資源に対するアクセスの主体、当該アクセスの客体、当該アクセスの行為内容または当該アクセスの環境を示す情報を含む
ことを特徴とする請求項1記載のオブジェクト複製制御装置。
【請求項4】
格納手段を有する外部記憶装置と当該外部記憶装置を利用するコンピュータとから構成され、複製対象となるオブジェクトを複写する複写処理および当該複製されたオブジェクトを転写する転写処理から構成される当該複製対象となるオブジェクトに対する複製処理を制御するオブジェクト複製制御装置において、前記コンピュータによって実行されるプログラムであって、
前記コンピュータに、
前記複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報であって前記複写処理を許可するための第1の条件を含む基底ポリシ情報と当該基底ポリシ情報に関連づけられている前記転写処理を許可するための第2の条件を含む表明ポリシ情報とから構成されるポリシ情報を有する第1の資源にアクセスして、ユーザによって指定された複製対象となるオブジェクトおよび当該オブジェクトに割り当てられているポリシ情報を取得するステップと、
前記第1の資源に対するアクセスに関する第1の属性情報を取得するステップと、
前記取得された第1の属性情報が前記取得されたポリシ情報を構成する基底ポリシ情報に含まれる第1の条件を満たすかを判定するステップと、
前記第1の条件を満たすと判定された場合、前記取得されたオブジェクトを複写する複写処理を実行するステップと、
前記複写処理が実行されることによって複写されたオブジェクトと前記取得されたポリシ情報を構成する表明ポリシ情報を関連づけて前記格納手段に格納するステップと、
前記ユーザによって指定された第2の資源に対するアクセスに関する第2の属性情報を取得するステップと、
前記取得された第2の属性情報が、前記複写処理が実行されることによって複写されたオブジェクトと関連づけて前記格納手段に格納された表明ポリシ情報に含まれる第2の条件を満たすかを判定するステップと、
前記第2の条件を満たすと判定された場合、前記格納手段に格納された前記複写処理が実行されることによって複写されたオブジェクトを、前記第2の資源に転写する転写処理を実行するステップと
を実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2012−22461(P2012−22461A)
【公開日】平成24年2月2日(2012.2.2)
【国際特許分類】
【出願番号】特願2010−159035(P2010−159035)
【出願日】平成22年7月13日(2010.7.13)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【Fターム(参考)】
【公開日】平成24年2月2日(2012.2.2)
【国際特許分類】
【出願日】平成22年7月13日(2010.7.13)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【Fターム(参考)】
[ Back to top ]