(57)【要約】【課題】ＤＲＭ技術を用いて、ユーザの所属するグループに基づき、機密コンテンツに対するアクセス制御を可能とする。【解決手段】複数のグループのうち少なくとも一つに所属するユーザによる、クライアントコンピュータを用いた所定のコンテンツに対するアクセス要求に対して、ライセンスを発行することをコンピュータによって実現する方法であって、前記クライアントコンピュータを介してライセンスを要求したユーザのユーザＩＤと、記憶装置に記憶されている、ユーザＩＤとグループとを関連づけたグループリストとに基づいて該ユーザの所属するグループを判別し、前記判別したグループに基づいて、許諾条件を記憶した記憶装置に格納されているアクセス・コントロール・リストの許諾条件を参照してライセンスを生成し、前記クライアントコンピュータに前記生成したライセンスを出力する。【選択図】      図１
2004302931.tif 000002
【特許請求の範囲】
【請求項１】
複数のグループのうち少なくとも一つに所属するユーザによる、クライアントコンピュータを用いた所定のコンテンツに対するアクセス要求に対して、ライセンスを発行することをコンピュータによって実現する方法であって、
前記クライアントコンピュータを介してライセンスを要求したユーザのユーザＩＤと、記憶装置に記憶されている、ユーザＩＤとグループとを関連づけたグループリストとに基づいて該ユーザの所属するグループを判別し、
前記判別したグループに基づいて、許諾条件を記憶した記憶装置に格納されているアクセス・コントロール・リストの許諾条件を参照してライセンスを生成し、
前記クライアントコンピュータに前記生成したライセンスを出力する、
ことを特徴とする方法。
【請求項２】
請求項１記載の方法であって、
ユーザが複数のグループに所属している場合、それぞれのグループに対応する前記アクセス・コントロール・リストに登録された許諾条件を結合規則によって結合し、該結合によって得られた許諾条件に基づいてライセンスを生成する、
ことを特徴とする方法。
【請求項３】
請求項２記載の方法であって、
前記結合規則は、ユーザの所属するグループの許諾条件の中で最大の許諾のものを採用するもの、または、ユーザの所属するグループの許諾条件の中で最小の許諾のものを採用するもの、または、予めグループに順番をつけておき、その順番に基づいて許諾条件を採用するもの、である、
ことを特徴とする方法。
【請求項４】
複数のグループのうち少なくとも一つに所属するユーザによる、クライアントコンピュータを用いた所定のコンテンツに対するアクセス要求に対して、ライセンスを発行する処理をコンピュータで実現するためのプログラムであって、
前記クライアントコンピュータを介してライセンスを要求したユーザのユーザＩＤと、記憶装置に記憶されている、ユーザＩＤとグループとを関連づけたグループリストとに基づいて該ユーザの所属するグループを判別するステップと、
前記判別したグループに基づいて、許諾条件を記憶した記憶装置に格納されているアクセス・コントロール・リストの許諾条件を参照してライセンスを生成するステップと、
前記クライアントコンピュータに前記生成したライセンスを出力するステップと、
をコンピュータに実行させるためのプログラム。
【請求項５】
クライアントコンピュータと複数のコンピュータで構成されるサーバシステムから成るシステムで、複数のグループのうち少なくとも一つに所属するユーザによる、該クライアントコンピュータを用いた所定のコンテンツに対するアクセス要求に対して、ライセンスを発行するためのシステムであって、
前記クライアントコンピュータにおいて、
ライセンスを要求するユーザのユーザＩＤを前記サーバシステムに送信するクライアント手段と、
前記サーバシステムにおいて、
前記ユーザのユーザＩＤに基づいて、該ユーザの所属するグループを判別する利用者管理手段と、
前記判別したグループに基づいて、登録されているアクセス・コントロール・リストの許諾条件を参照してライセンスを生成するライセンス生成手段と、
前記クライアント手段に前記生成したライセンスを配信するライセンス配信手段と、
を備えることを特徴とするシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンテンツへのアクセス管理に関するものであって、更に詳しくは、複数のグループに所属するユーザのコンテンツへのアクセス管理に関する。
【０００２】
【従来の技術】
本発明は、文書を安全に管理する仕組みに関連するものであり、その仕組みはＤＲＭ（Ｄｉｇｉｔａｌ  Ｒｉｇｈｔ  Ｍａｎａｇｅｍｅｎｔ）技術に基づく。以下に、文書管理とＤＲＭ技術に関する従来技術をそれぞれ挙げる。
【０００３】
文書管理に関する従来技術：
従来の文書管理システムでは、利用者が利用したい文書を文書管理サーバに要求し、ダウンロードして利用していた。このとき、文書管理サーバ側では、利用者を認証し、その文書に対して適切な利用者であることを確認する。あるいは、このとき、アクセス・コントロール・リストを用いて、要求されている文書の利用可能グループと利用者が属するグループのマッチングをとり、利用者が要求した文書のダウンロード許可、拒否を決定する。
【０００４】
一般的な文書管理製品として、Ｍｅｒｉｄｉｏ（登録商標）などがある（非特許文献１参照）。
ＤＲＭ技術に関する従来技術：
ＤＲＭ技術とは、一般的にはデジタルコンテンツを保護し、コンテンツの配布、管理を行う技術である。ただし、本明細書で用いるＤＲＭ技術とは、さらに、“コンテンツは暗号化され、ライセンスにそのコンテンツに対する許諾条件とコンテンツの復号鍵を格納されており、コンテンツを利用するときには、利用者は、暗号化コンテンツをコンテンツサーバからダウンロードし、ライセンスは、ライセンス配信サーバからダウンロードしたのち、ライセンスの許諾条件に従って使用すること”、を指すものとする。このＤＲＭ技術に関する先行特許出願としては、特許文献１などがある。
【０００５】
また、発明者らが考案に関与したＤＲＭ技術の方式であるＵＤＡＣ（Ｕｎｉｖｅｒｓａｌ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  ｗｉｔｈ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）を開示した技術論文（非特許文献２参照）などがあり、ここでは、ＵＤＡＣの音楽コンテンツの適用事例などを開示している。
【０００６】
なお、ＤＲＭ技術と文書管理システムとの関連においては、Ｄｏｃｕｍｅｎｎｔ  ＳＡＦＥＲ（登録商標）（非特許文献３参照）、ＰａｇｅＲｅｃａｌｌ（登録商標）（非特許文献４参照）などで、文書管理システムと連携することによりダウンロード後の文書に対しても、印刷やコピーなどの制御をすることが可能となっている。
【０００７】
【特許文献１】
特開平２０００−３０５８５１号公報（特許第３１８４１９０号）
【非特許文献１】
ｈｔｔｐ：／／ｓｏｆｔｗａｒｅ．ｆｕｊｉｔｓｕ．ｃｏｍ／ｊｐ／ｍｅｒｉｄｉｏ／ｉｎｄｅｘ．ｈｔｍｌ
【非特許文献２】
“穴澤健明、武村浩司、常広隆司、長谷部高行、畠山卓久：コンテンツ保護の柔靭化を実現した開放型超流通基盤．情報処理学会．電子化知的財産・社会基盤研究会報告．２００１年１１月．ｈｔｔｐ：／／ｗｗｗ．ｋｅｉｔａｉｄｅ−ｍｕｓｉｃ．ｏｒｇ／ｐｄｆ／ＥＩＰ１４−５．ｐｄｆ”
【非特許文献３】
ｈｔｔｐ：／／ｗｗｗ．ｍａｒｋａｎｙ．ｃｏ．ｊｐ／ｄｒｍ／ｓｄｍｓ．ｈｔｍｌ
【非特許文献４】
ｈｔｔｐ：／／ｗｗｗ．ａｕｔｈｅｎｔｉｃａ．ｃｏｍ／ｐｒｏｄｕｃｔｓ／ｐａｇｅｒｅｃａｌｌ．ａｓｐ
【０００８】
【発明が解決しようとする課題】
コンテンツを保護する従来からの方法は、アクセス制御によるものであった。これは、サーバ側で管理しているコンテンツに対して、アクセス・コントロール・リストに基づいて、アクセス制御をするものである。しかし、この制御方法では、ローカルに保存したコンテンツに対して制御ができない。このため、基本的には、コンテンツをダウンロードできるか、できないかしか制御をしていなかった。
【０００９】
また、ＤＲＭ技術はもともと音楽コンテンツの著作権保護の観点から生まれてきたものであるため、利用者は一般消費者であることが想定され、利用者のグループ管理という観点がなかった。
【００１０】
これらの状況から、グループに対するアクセス制御は、ＤＲＭ技術の許諾条件と矛盾しない形では、現在存在するものがない。特に、利用者が二つ以上の異なるグループに所属しており、かつ各グループにおいて、コンテンツに対する許諾条件が異なっている場合、そのコンテンツを要求している利用者がどの許諾条件に従ったライセンスを受け取るかを決定することができない、ということが問題になる。また、グループには許諾をしたいが、そのグループに属するある人間に対しては禁止したい、あるいはその逆の場合などに対する制御は、サーバ側のアクセス制御でしか実現されておらず、ローカルに保存されたライセンスに対するＤＲＭ技術による制御は実現されていないというのが現状である。
【００１１】
そこで本発明の課題は、ＤＲＭ技術による機密コンテンツへのグループアクセス制御を実現することである。
【００１２】
【課題を解決するための手段】
上述した課題を解決するために、本発明では、ＤＲＭ技術において各ユーザのＩＤ（識別情報）に基づいてユーザの属するグループを判別し、判別したグループに基づいて個別ライセンスを生成するようにした。
【００１３】
本発明の一態様は、複数のグループのうち少なくとも一つに所属するユーザによる、クライアントコンピュータを用いた所定のコンテンツに対するアクセス要求に対して、ライセンスを発行することをコンピュータによって実現する方法であって、前記クライアントコンピュータを介してライセンスを要求したユーザのユーザＩＤと、記憶装置に記憶されている、ユーザＩＤとグループとを関連づけたグループリストとに基づいて該ユーザの所属するグループを判別し、前記判別したグループに基づいて、許諾条件を記憶した記憶装置に格納されているアクセス・コントロール・リストの許諾条件を参照してライセンスを生成し、前記クライアントコンピュータに前記生成したライセンスを出力する、ことを特徴とする。
【００１４】
更に、ユーザが複数のグループに所属している場合、それぞれのグループに対応する前記アクセス・コントロール・リストに登録された許諾条件を結合規則によって結合し、該結合によって得られた許諾条件に基づいて個別ライセンスを生成する、ことを特徴とする。より具体的には、前記結合規則として、１）ユーザの所属するグループの許諾条件の中で最大の許諾のものを採用するもの、２）前記結合規則は、ユーザの所属するグループの許諾条件の中で最小の許諾のものを採用するもの、３）予めグループに順番をつけておき、その順番に基づいて許諾条件を採用するもの、の３つの規則のいずれかを用いることを特徴とする。
【００１５】
本発明によれば、ＤＲＭ技術においても機密コンテンツに対するグループアクセス制御が可能となり、とくに機関や企業内などの機密情報漏洩に対して効果を上げられる。
【００１６】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しながら説明する。
図１は、本発明の第１の実施の形態である、コンテンツへのアクセスを制御するための個別ライセンスを生成する概略を、システムの構成とともに示すものである。システムは、ライセンス配信システム１１、クライアント１２から成り、ライセンス配信システムはＡＣＬ（アクセス・コントロール・リスト）１３を備える。尚、コンテンツに関しては、暗号化されたものがコンテンツ配信サーバからクライアントに安全にダウンロードされることを前提としており、ここでは特に図示しない。
【００１７】
図１において、各クライアント１２（ユーザ）にはＩＤが振られており、該ＩＤを送信するとともに▲１▼ユーザが個別ライセンスを要求する。すると、▲２▼ライセンス配信システム１１は、登録されているライセンスであるＡＣＬ１３と前記ＩＤに基づいて判別したクライアントが属するグループから個別ライセンスを生成する。そして、▲３▼個別ライセンスをクライアント１２に配信する。
【００１８】
図２に本発明第１の実施の形態のシステム構成のより詳細なものを示す。
ライセンス配信システム１１は、利用者管理サーバ２１、ライセンス配信サーバ２２、ライセンスデータベース（ＤＢ）２３から成る。利用者管理サーバ２１はユーザＩＤと該ユーザの属するグループを管理し、ユーザＩＤにより問い合わせがあるとそのユーザが属するグループを返す処理を行う。ライセンスＤＢ２３は、ＡＣＬ１３を管理する部分に相当し、グループ毎の許諾条件、ライセンスを保存する。ライセンス配信サーバ２２は、個別ライセンスを生成する、個別ライセンス生成モジュール２４を備える。
【００１９】
また、クライアント１２は、ライセンス制御モジュール２５、デコーダモジュール２６、Ｖｉｅｗｅｒ／Ｐｌａｙｅｒ２８から成る。ライセンス制御モジュール２５はライセンス配信サーバ２２から配信されたライセンスに基づきコンテンツへの操作を制御する。コンテンツへの操作とは例えば電子文書の閲覧、コピー、印刷などを意味する。ライセンス配信サーバ２２から配信されたライセンス２９はメディアＤＲＭ２７に保存される。デコーダモジュール２６は、ライセンス制御モジュール２５からコンテンツに関する操作情報、及びコンテンツの復号鍵を受け取りＶｉｅｗｅｒ／Ｐｌａｙｅｒ２８に伝達する。ユーザはＶｉｅｗｅｒ／Ｐｌａｙｅｒ２８によりクライアントＰＣの画面上などでコンテンツの内容情報を取得する、すなわち例えば電子文書の閲覧、印刷などの操作を行う。
【００２０】
図１、図２において、ユーザが個別ライセンスを要求する際に、コンテンツに対するアクセス条件、例えば、ユーザがコピー回数３回、印刷回数５回のライセンスが欲しいという条件を指定することと、指定しないことが可能である。以下、まず図３以降にコンテンツに対するアクセス条件を指定する場合について述べ、図１８、１９にコンテンツに対するアクセス条件を指定しない場合について述べることにする。
【００２１】
図３に、コンテンツに対するアクセス条件を指定する場合の個別ライセンス生成のフローを示す。
概略としては、後述するライセンス配信システム１１に管理されるライセンスに添付されているＡＣＬの各エントリに対して、ユーザが所属するグループのＡＣＬエントリを取得し、それらを結合規則により結合した許諾条件を作成し、ユーザが指定したアクセス条件と比較する。その結果が有効である場合、その結合した許諾条件の個別ライセンスを生成する、というものである。
【００２２】
まず、Ｓ３１で、利用者管理サーバ２１からユーザが所属するグループＩＤリストを取得し、このリストのグループとユーザに対する許諾条件情報をライセンスＤＢ２３から取得する。Ｓ３２で、ユーザの所属するグループが二つ以上か否か判定をし、所属グループが一つである場合はＳ３４に進む。所属グループが二つ以上である場合はＳ３３に進み、複数の許諾条件を結合する。Ｓ３４で、ユーザが指定したアクセス条件と許諾条件を比較する。Ｓ３５で、結果が無効であった場合、Ｓ３７でクライアント１２にライセンス要求を破棄することを通知して処理を終了する。また、Ｓ３５で結果が有効であった場合、Ｓ３６で個別ライセンスを生成し、Ｓ３８でＡＣＬエントリへ許諾条件を反映し、Ｓ３９で個別ライセンスをクライアント１２に配信し、処理を終了する。尚、Ｓ３３、Ｓ３４、Ｓ３８の処理についての詳細は後述する。
【００２３】
さて、ここで、図４にライセンスＤＢ２３が保存するライセンスのデータ構造を示す。一つのコンテンツに対して図４に示すライセンスが用意される。コンテンツのライセンス管理に必要な情報が管理されているが、特にユーザに対する許諾条件は、ライセンスデータ構造の最後の  ａｃｌ＿ｅｎｔｒｙ：ＡＣＬエントリ（ＡＣＬエントリは各グループごとに設定されている）に存在する。更に図５に  ａｃｌ＿ｅｎｔｒｙ  の詳細な構造を示す。最後のａｃｍ  （  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  ｆｏｒ  Ｍｅｄｉａ）はメディアアクセス条件を保存し、ａｃｐ（Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  ｆｏｒ  Ｐｌａｙｅｒ）はデコーダアクセス条件を保存するところである。個別ライセンスを生成する際には、この  ａｃｍ，、ａｃｐ  が参照されて生成されることになる。
【００２４】
図６に許諾条件ａｃｍ  及びａｃｐ  の具体例とその意味を示す。ａｃｍ  はｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ（再生、表示、実行、印刷などの操作可能回数）、  ｍｏｖｅ＿ｃｏｕｎｔ（ライセンスが移動可能な回数）、ｄｅｎｙ（優先的拒否フラグ、ライセンス要求者が所属するグループや要求者の許諾条件の中にこのフラグが  ｏｎ  になっているものが存在する場合、ライセンスは発行されない。ただし、ｏｎ  ＝  １）、ｒｉｇｈｔｓ＿ｃｏｕｎｔ（権利回数、コピー（複製）可能な回数）、ｋｅｐｔ＿ｐｅｒｉｏｄ（許諾保持期間。クライアントのメディアＤＲＭ内でライセンスを維持可能な期間）、ｋｅｐｔ＿ｌｉｍｉｔ（許諾保持期限。クライアントのメディアＤＲＭ内でライセンスを維持可能な期限）、などからなる。また、ａｃｐ  には  Ｖｉｅｗｅｒ／Ｐｌａｙｅｒでコンテンツを再生等する場合の条件が格納されている。
【００２５】
以上図４から図６により、ライセンス、許諾条件のデータ構造が明らかになったので、これらを用いて、図３のＳ３３の‘許諾条件の結合’についてより詳細に説明する。
【００２６】
本発明では、ユーザが複数のグループに所属している場合、各々のグループの許諾条件を例えば次のような規則により結合する。
▲１▼ユーザの所属するグループの許諾条件の中で最大の許諾のものを採用する。
【００２７】
▲２▼ユーザの所属するグループの許諾条件の中で最小の許諾のものを採用する。
▲３▼予めグループに順序をつけておき、その順番で許諾条件を採用する。
以下、▲１▼から▲３▼について具体的に説明する。
【００２８】
▲１▼最大許諾を採用する場合：
この場合、ユーザの所属するグループの許諾条件の中で最大の許諾のものを採用するとともに、ユーザアカウントに対する許諾条件が別に設定されている場合は、これも含めて最大のものを採用する。
【００２９】
具体的なルールを図７に示す。ａｃｍのｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ，  ｍｏｖｅ＿ｃｏｕｎｔ，  ｒｉｇｈｔｓ＿ｃｏｕｎｔ，  ｋｅｐｔ＿ｐｅｒｉｏｄ，  ｋｅｐｔ＿ｌｉｍｉｔは各エントリの指定値を比較して、最大値をとる。また、ｄｅｎｙフラグがｏｎ  になっている場合は、ライセンスを発行しない。ａｃｐのｆｌａｇについてはそれぞれ論理積をとる。ここで、図７の各許諾条件には１から８までに条件Ｎｏ．  が振られており（例えば、ｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ  の条件Ｎｏ．  は１である）、許諾条件を結合する際の処理に用いられる。
【００３０】
図８に最大許諾を採用する場合の許諾条件結合のフローを示す。まず、Ｓ８１でユーザのユーザアカウントに対する許諾条件（Ｕ［  ］）、ユーザが所属するグループの許諾条件（Ｇｊ［  ］）、生成されるべき個別ライセンスの許諾条件（Ｌ［  ］）を宣言する。Ｓ８２でｉを初期化する。ｉは条件Ｎｏ．を示す。Ｓ８３で、ｉが条件Ｎｏ．の最大値である８以下であるならば、Ｓ８４に進み、ｉが８以上であれば処理を終了する。Ｓ８４では、Ｕ［ｉ］，Ｇ１［ｉ］〜Ｇｋ［ｉ］に対して図６の条件Ｎｏ．ｉの生成ルールに従って比較し、結果をＬ［ｉ］に代入する。Ｓ８５でｉをインクリメントしてＳ８３に戻る。図８の処理の結果、求める許諾条件が得られる。
【００３１】
図９に最大許諾条件を採用する場合の許諾条件の結合結果の例を示す。
ユーザがグループＡ、Ｂ、Ｃに所属しているとする。図９には、グループＡ、Ｂ、Ｃの許諾条件の他に、ユーザアカウントに対する許諾条件も示されている。例えば、ｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ  では、ユーザアカウントに対する許諾条件が５、グループＡの許諾条件が１０、グループＢの許諾条件が２０、グループＣの許諾条件が５であるため、最大値であるグループＢの許諾条件２０が採用されている。他の許諾条件も図７のルールに従って採用されている。尚、図９中の□で囲まれた値は、結果に反映される値を示している。
【００３２】
最小許諾を採用する場合：
この場合、ユーザの所属するグループの許諾条件の中で最大許諾のものを採用するとともに、ユーザアカウントに対する許諾条件が別に設定されている場合は、これも含めて最小のものを採用する。
【００３３】
具体的なルールを図１０に示す。ａｃｍのｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ，  ｍｏｖｅ＿ｃｏｕｎｔ，  ｒｉｇｈｔｓ＿ｃｏｕｎｔ，  ｋｅｐｔ＿ｐｅｒｉｏｄ，  ｋｅｐｔ＿ｌｉｍｉｔは各エントリの指定値を比較して、最小値をとる。また、ｄｅｎｙフラグがｏｎ  になっている場合は、ライセンスを発行しない。ａｃｐのｆｌａｇについてはそれぞれ論理和をとる。
【００３４】
最小許諾を採用する場合の許諾条件結合のフローは、図８とほぼ同様である。ただ、Ｓ８４で図１０の生成ルールに従って比較するということだけが異なる。よって最小許諾を採用する場合のフローはここでは割愛する。
【００３５】
図１１に最小許諾条件を採用する場合の許諾条件の結合結果の例を示す。
ユーザがグループＡ、Ｂ、Ｃに所属しているとする。図１１にはグループＡ、Ｂ、Ｃの許諾条件のほかに、ユーザアカウントに対する許諾条件も示されている。例えば、ｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔでは、ユーザアカウントに対する許諾条件が５、グループＡの許諾条件が１０、グループＢの許諾条件が２０、グループＣの許諾条件が５であるため、最小値であるユーザアカウントに対する許諾条件及びグループＣの許諾条件の５が採用されている。他の許諾条件も図１０のルールに従って採用されている。尚、図１１中の□で囲まれた値は、結果に反映される値を示している。
【００３６】
▲３▼予め振られたグループの順番で許諾条件を採用する：
予め、ユーザが所属するグループの許諾条件とユーザアカウントに対する許諾条件をどのような順番で採用するかを決定しておき、その順番に従ってユーザが指定したアクセス条件と比較していく。比較した結果が有効である場合、その許諾条件で個別ライセンスが生成される。無効である場合は、次の順番の許諾条件と比較を行う。
【００３７】
尚、この場合は▲１▼▲２▼のように図３のＳ３３の許諾条件を結合するステップのみでは機能しないため、図３のフローの改良版を図１２に示して説明する。ただ、図中のＳ１２１、Ｓ１２６、Ｓ１２８、Ｓ１２９、Ｓ１３０、Ｓ１３１はそれぞれ図３のＳ３１、Ｓ３４、Ｓ３７、Ｓ３６、Ｓ３８、Ｓ３９に対応するものであり、詳細な説明は図３の説明を参照とする。
【００３８】
図１２において、Ｓ１２１で、利用者管理サーバからユーザが所属するグループＩＤリストを取得し、このリストのグループとユーザに対する許諾条件情報をライセンスＤＢから取得する。Ｓ１２２で、グループの許諾条件とユーザアカウントに対する許諾条件を予め設定された順番に並べる（Ａ１［  ］，・・・，Ａｋ［  ］）。Ｓ１２３でｉを初期化する。Ｓ１２４でｉがｋ以下であるならば、Ｓ１２５に進み、ｉがｋより大きいのであればＳ１２８でライセンス要求の破棄をクライアントに通知し処理を終了する。Ｓ１２５では、許諾条件結果Ｌ［  ］にＡｉ［  ］を代入し、Ｓ１２６でユーザが指定したアクセス条件と許諾条件結果Ｌ［  ］を比較する。Ｓ１２７で、比較結果が有効の場合はＳ１２９に進み、比較結果が無効の場合は、Ｓ１３２でｉをインクリメントしてＳ１２４にもどる。Ｓ１２９では、個別ライセンスを生成し、Ｓ１３０でＡＣＬエントリへ許諾条件を反映し、Ｓ１３１でクライアントに生成した個別ライセンスを配信して処理を終了する。
【００３９】
図１３に予め振られたグループの順番で許諾条件を採用する場合の具体例を示す。
今、グループが全部でＡ、Ｂ、Ｃ、Ｄ，Ｅ、Ｆ、Ｇで、ユーザアカウントに対する許諾条件をＵとし、許諾条件を採用する順序を、Ｕ→Ｂ→Ｇ→Ａ→Ｅ→Ｃ→Ｄ→Ｆであるとする。ユーザはグループＡ、Ｂ、Ｃに所属しているため、図１３にはグループＡ、Ｂ、Ｃの許諾条件が示されている。また、ユーザが指定したアクセス条件を最左欄に示す。尚、ここでは特にユーザアカウントに対する許諾条件は設定されていないものとする。
【００４０】
許諾条件を採用する順序がＵ→Ｂ→・・・で、ユーザアカウントに対する許諾条件が設定されていないのでＵの次のグループＢの許諾条件とユーザの指定したアクセス条件を比較することになる。（アクセス条件と許諾条件の比較の詳細については図３のＳ３４の説明として後述するが、ここでは具体例を用いて大まかに説明しておく。）グループＢのｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ，  ｍｏｖｅ＿ｃｏｕｎｔ，  ｄｅｎｙ，  ｒｉｇｈｔｓ＿ｃｏｕｎｔ，  の許諾条件は、順に、２０、５、０、４となっており、ユーザの指定したアクセス条件は、同順に５、３、０、６となっている。グループＢのｒｉｇｈｔｓ＿ｃｏｕｎｔ、つまりグループＢの許諾可能な権利回数は４しかないのだが、ユーザがアクセス条件としてｒｉｇｈｔｓ＿ｃｏｕｎｔ  ６  を要求しているため、比較結果は無効となり、次のグループの許諾条件と比較をすることとなる。
【００４１】
次の許諾条件を採用するのは、許諾条件の採用順序が・・Ｂ→Ｇ→Ａ・・・であるため、グループＡの許諾条件とユーザの指定したアクセス条件を比較することになる。グループＡのｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ，  ｍｏｖｅ＿ｃｏｕｎｔ，  ｄｅｎｙ，  ｒｉｇｈｔｓ＿ｃｏｕｎｔ，  ｋｅｐｔ＿ｐｅｒｉｏｄ，  ｋｅｐｔ＿ｌｉｍｉｔ  の許諾条件は、順に、１０、１５、０、ＦＦｈ（無限を意味する）、３００、０４１２２１１４３０００Ｚとなっており、ユーザの指定したアクセス条件は、同順に、５、３、０、６、６０、０３１２１５１４３０００Ｚとなっている。いずれもユーザの指定したアクセス条件がグループＡの許諾可能な値を満たすし、またａｃｐの許諾条件も満たしているため、グループＡの許諾条件が採用され、ユーザが指定したアクセス条件に従って個別ライセンスが生成される。
【００４２】
以上、図３のＳ３３の許諾条件の結合について具体例を用いて詳細に説明した。
次に、図３のＳ３４の‘ユーザの指定するアクセス条件と許諾条件の比較’について詳細に説明をする。
【００４３】
この比較ではユーザの指定するアクセス条件を満たすか否かを判定しており、「指定するアクセス条件を満たす」とは、以下のいずれにも該当しない場合のことをいう。
【００４４】
・印刷や閲覧などの回数に関する条件に対して、“指定した回数が、結合規則によって得た回数より大きい”場合。
・編集などの権利の許諾・不許諾に関する条件に対して、“指定した条件が許諾”を求め、かつ“結合規則によって得た条件が不許諾”である場合。
【００４５】
・有効期限など期間に関する条件に対して、“指定した条件の期限が結合した条件の期限より長い”場合。
具体的には、図１４に示す評価ルールに従って比較を行う。
【００４６】
ｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ，  ｍｏｖｅ＿ｃｏｕｎｔ，  ｒｉｇｈｔｓ＿ｃｏｕｎｔ，  ｋｅｐｔ＿ｐｅｒｉｏｄはユーザの指定値が許諾条件の結合結果の各値以下の場合に有効となる。また、各ｆｌａｇはユーザの指定値が０でかつ許諾条件の結合結果が１で以外の場合は有効となる。また、ｄｅｎｙフラグはユーザからは特に指定されないので、比較は行われないが、ｄｅｎｙフラグがｏｎである場合は、個別ライセンスは発行されない。
【００４７】
図１４に示した比較時の評価ルールに従い、ユーザの指定するアクセス条件と許諾条件の比較処理を行うが、図１５にその比較処理のフローを示す。
Ｓ１５１で、ユーザが要求しているアクセス条件（ＲＬ［  ］）、許諾条件の結合の結果得られた許諾条件（Ｌ［  ］）を宣言し、初期化する。Ｓ１５２でｉを初期化し、Ｓ１５３でｉが条件Ｎｏ．の最大値である８以下であるか否か判定する。８以下である場合Ｓ１５４に進み、８より大きい場合は処理を終了する。この処理の終了は条件Ｎｏ．１〜８の許諾条件の比較結果が有効であったことを意味する。Ｓ１５４で、ＲＬ［ｉ］とＬ［ｉ］を図１４の条件Ｎｏ．ｉのルールに従って比較する。Ｓ１５５で比較結果が有効であった場合、Ｓ１５６でｉをインクリメントしてＳ１５３に戻る。Ｓ１５５で比較結果が無効であった場合、Ｓ１５７に進み、エラー処理を行って処理を終了する。エラー処理を行った場合は条件Ｎｏ．１〜８のいずれかで許諾不可の判定が出たことを意味するものであり、この場合は個別ライセンスは発行されない。
【００４８】
図１６にユーザの指定するアクセス条件と許諾条件の結合結果との比較の具体例を示す。
許諾条件の結合結果は、ｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ，  ｍｏｖｅ＿ｃｏｕｎｔ，  ｒｉｇｈｔｓ＿ｃｏｕｎｔ，  ｋｅｐｔ＿ｐｅｒｉｏｄ，  ｋｅｐｔ＿ｌｉｍｉｔの順に２０、１５、５、３００、０３１１５１４３０００Ｚで、ユーザの指定するアクセス条件は同順に１０、１０、５、６０、０２１２１５１４３００Ｚであるため、いずれも許諾条件の結合結果がユーザの指定するアクセス条件値以上であるため、ユーザの指定するアクセス条件値は有効となり評価結果（最右欄）として得られる。ｄｅｎｙフラグはｏｎ（＝１）  でないため個別ライセンスは生成される。また、ｆｌａｇに関しても図１４の評価ルールにしたがってすべて有効と判定され、評価結果が得られている。
【００４９】
以上、図３のＳ３４の‘ユーザの指定するアクセス条件と許諾条件の比較’について詳細に説明をした。
次に図３のＳ３８の‘ＡＣＬエントリへ許諾条件を反映’することについて詳細に説明をする。
【００５０】
これは、個別ライセンス生成後、許諾条件結合規則に従って採用したグループのＡＣＬエントリから権利回数（コピー回数）をユーザが指定するアクセス条件の要求数分減算する処理を行うことをいう。すなわち、予めグループに対する権利回数は決められており、サーバ側で個別ライセンスを生成と同時にＡＣＬにユーザに与えた権利回数を減算することで、後の個別ライセンス生成の際の権利回数の管理ができることになる。
【００５１】
サーバ側で個別ライセンスを生成することは、ライセンスをコピーしたことと同意なため、ＡＣＬエントリ中のｒｉｇｈｔｓ＿ｃｏｕｎｔ  を、許諾条件として採用したグループのｒｉｇｈｔｓ＿ｃｏｕｎｔ  からユーザが指定する要求数分減算する。具体的には、図１３の例では、グループＡの許諾条件が採用されたので、グループＡのｒｉｇｈｔｓ＿ｃｏｕｎｔ  の値‘ＦＦｈ’からユーザの指定する要求数、ここでは、‘６’が減算される。但し、この場合、ｒｉｇｈｔｓ＿ｃｏｕｎｔ  が‘ＦＦｈ’で無限であるので、無限の場合は減算しても無限であるとする。
【００５２】
また、サーバで生成された個別ライセンスがクライアントに配信されてクライアントに渡る場合、移動が一回行われたことと解釈できるので、実際には個別ライセンスの  ｍｏｖｅ＿ｃｏｕｎｔ  が１減算された個別ライセンスがクライアントに渡ることになる。図１７に個別ライセンスの例を示す。左欄にサーバ側で生成された個別ライセンス、右欄にクライアントに渡る個別ライセンスを示す。サーバ側の個別ライセンスのｍｏｖｅ＿ｃｏｕｎｔは１０であるが、クライアントに渡る個別ライセンスは９である。
【００５３】
このようにＳ３８の処理では、サーバ側でＡＣＬへの権利回数への反映、及びクライアントに渡る個別ライセンスの移動回数への反映を行っている。
以上のように、図３から図１７に、ユーザが個別ライセンスを要求する際に、コンテンツに対するアクセス条件を指定する場合の処理について説明をした。次に図１８、図１９にユーザがコンテンツに対するアクセス条件を指定しない場合について説明をする。
【００５４】
ユーザがコンテンツに対するアクセス条件を指定しない場合は、指定する場合に対して次の二点が異なる。
・アクセス条件と許諾条件を比較する処理がない。
【００５５】
・ＡＣＬエントリへ許諾条件を反映する際に、採用したグループのエントリから権利回数（コピー回数）を１減算する。
図１８にユーザがアクセス条件を指定しないときの個別ライセンス生成のフローを示す。
【００５６】
まずＳ１８１で、利用者管理サーバ２１からユーザが所属するグループＩＤリストを取得し、このリストのグループとユーザに対する許諾条件情報をライセンスＤＢ２３から取得する。Ｓ１８２で、ユーザの所属するグループが二つ以上か否か判定をし、所属グループが一つである場合はＳ１８４に進む。所属グループが二つ以上である場合はＳ１８３に進み、複数の許諾条件を結合する。Ｓ１８４で個別ライセンスを生成し、Ｓ１８５でＡＣＬエントリへ許諾条件を反映し、Ｓ１８６で個別ライセンスをクライアント１２に配信し、処理を終了する。尚、それぞれの処理の詳細は図３に対応する。ただし、ユーザがアクセス条件を指定しない場合、Ｓ１８４の個別ライセンスの生成では、ｒｉｇｈｔｓ＿ｃｏｕｎｔ  が１の個別ライセンスが生成される。これは、ユーザがアクセス条件を指定しない場合は、コンテンツが配信されたクライアントでコンテンツのコピーは１回しか許さないことを意味する。この場合、Ｓ１８５のＡＣＬエントリへの許諾条件の反映では許諾条件を採用したグループのｒｉｇｈｔｓ＿ｃｏｕｎｔを１減算することになる。また、個別ライセンスがクライアントに渡るときには、ｍｏｖｅ＿ｃｏｕｎｔ  が１減算されたものが配信される。
【００５７】
図１９にクライアントがアクセス条件を指定しない場合の個別ライセンスの例を示す。左欄に許諾条件結合の結果得られた許諾条件、真中にサーバ側で生成された個別ライセンス、右欄にクライアントに渡される個別ライセンスを示す。個別ライセンスのｒｉｇｈｔｓ＿ｃｏｕｎｔ  はサーバ側、クライアント側ともに１、また、ｍｏｖｅ＿ｃｏｕｎｔはサーバ側では１５であるが、クライアント側では１４となっている。また、それ以外は、許諾条件結合の結果得られた許諾条件の値がそのまま個別ライセンスに反映される。
【００５８】
以上、本発明の第１の実施の形態を詳細に説明したが、該実施形態において、個別ライセンスの生成をユーザが要求する際には、ユーザ認証の機能が必要となる。そこで、利用者認証サーバと本発明のライセンス配信システム等の汎用的連携の一例を以下に述べることにする。
【００５９】
ライセンスのダウンロード、すなわちライセンス要求とユーザ認証の連携は、ライセンスダウンロード時にユーザが認証されているかどうかを確認（以下、認証確認）し、認証済の場合、グループＩＤリストを利用者管理サーバから取得、個別ライセンスの生成、ライセンスの配信といった流れで実現される。図２０に利用者認証サーバとの連携の例を示す。
【００６０】
利用者認証確認は、通信プラグイン２０２、利用者認証サーバ２０３、文書管理Ｇａｔｅｗａｙ２０４により行われる。そして、認証済の場合、グループＩＤリストを利用者管理サーバ２０６から取得、ライセンス配信サーバ２０５で個別ライセンスを生成し、文書管理Ｇａｔｅｗａｙ２０４を介してクライアント２０１にライセンスが配信される。
【００６１】
図２０において、▲１▼クライアント２０１からライセンス要求が文書管理Ｇａｔｅｗａｙ２０４に送信される。▲２▼文書管理Ｇａｔｅｗａｙ２０４は通信プラグインを介して利用者認証サーバ２０３にユーザの認証確認を要求する。▲３▼利用者認証サーバ２０３は、認証子を文書管理Ｇａｔｅｗａｙに送信し、▲４▼文書Ｇａｔｅｗａｙ２０４は利用者認証サーバ２０３に認証確認情報要求を行う。▲５▼利用者認証サーバ２０３は認証確認情報を文書Ｇａｔｅｗａｙ２０４に送信する。ここまでで、利用者認証確認済となる。そして、▲６▼でライセンス配信サーバ２０５にユーザＩＤが送信され、▲７▼ライセンス配信サーバのプラグイン２０７を介してグループＩＤリストを利用者管理サーバ２０６に要求する。▲８▼利用者管理サーバ２０６はグループＩＤリストをライセンス配信サーバプラグイン２０７に対して送信する。▲９▼ライセンス配信サーバ２０５は受信したグループＩＤリストに基づいて個別ライセンスを生成し、クライアントに配信する。
【００６２】
図２１に利用者認証との連携の例のシーケンスを示す。
図２１のシーケンスの網掛け部分は、利用者認証確認処理であり、本来システムにより異なる箇所である。
【００６３】
以下、図中のシーケンス番号に従って、簡単に説明をする。
１．クライアントが文書管理Ｇａｔｅｗａｙにユーザ認証確認を要求する。このとき、ユーザＩＤが渡される。この要求後、文書管理Ｇａｔｅｗａｙが認証確認を完了するまでは、クライアントの通信の口は文書管理Ｇａｔｅｗａｙに対してのみＯｐｅｎ（開）となっていて、ライセンス配信サーバにライセンスの要求を行うことはできない。
【００６４】
２．文書管理Ｇａｔｅｗａｙは利用者認証サーバアドレスを取得する。
３．文書管理Ｇａｔｅｗａｙは、通信プラグインを介し、リダイレクトで利用者認証サーバに認証確認を要求する。
【００６５】
４．利用者認証サーバで認証確認処理が行われる。
５．利用者認証サーバは、通信プラグインを介し、リダイレクトで認証子を文書管理Ｇａｔｅｗａｙに渡す。
【００６６】
６．文書管理Ｇａｔｅｗａｙは利用者認証サーバに対して認証確認情報を要求する。
７．利用者認証サーバは、認証確認情報をユーザＩＤとともに応答する。
【００６７】
８．文書管理Ｇａｔｅｗａｙは認証確認情報処理を行う。すなわち、１．で取得したユーザＩＤと取得した認証確認情報中に格納されているユーザＩＤの同一性を確認する。
【００６８】
９．文書管理Ｇａｔｅｗａｙがクライアントの通信の口をライセンス配信サーバに渡す。すなわち、クライアントはライセンス配信サーバと通信できることになる。このとき、ライセンス配信サーバは、クライアントの要求メッセージからプロトコルのバージョンを解釈し、そのプロトコルに応じたプロトコルバージョンで以後のクライアントとの通信を行う。もし、サーバ側が、クライアントのプロトコルバージョンがサポートされていない場合は、サーバは、エラーメッセージをクライアントに通知する。
【００６９】
１０．ライセンス配信サーバは９の応答（ｒｅｓｐｏｎｓｅ）を文書管理Ｇａｔｅｗａｙに返す。
１１．文書管理Ｇａｔｅｗａｙはクライアントに通信の口がライセンス配信サーバに渡ったことを伝える。
【００７０】
１２．１３．クライアントは、ライセンス配信サーバにライセンスを要求する。
１４．１５．ライセンス配信サーバは、ライセンスサーバプラグインを介して利用者管理サーバにユーザのグループを問い合わせる。
【００７１】
１６．１７．利用者管理サーバは、グループＩＤリストとユーザＩＤをライセンス配信サーバに返す。
１８．ユーザＩＤ，グループＩＤリスト、ＡＣＬに基づいて個別ライセンスを生成する。
【００７２】
１９．２０．ライセンス配信サーバは、文書管理Ｇａｔｅｗａｙを介してクライアントにライセンスを配信する。
２１．２２．２３．２４．通信の口を閉じる（Ｃｌｏｓｅ）。
【００７３】
以上、本発明の第１の実施の形態について詳細に説明をした。
さて、第１の実施の形態では個別ライセンスを用いた機密コンテンツへのアクセス管理の方法等について述べたが、サーバから配信されたコンテンツ及び個別ライセンスがクライアントにダウンロードされ、クライアントで該コンテンツの制御を行う場合に、悪意のあるユーザ等は、故意にクライアントＰＣ（パーソナルコンピュータ）に内蔵された時計（以下、ローカル時刻）をずらすことにより、実質的なコンテンツの有効期間を変更し、不正にコンテンツを利用することが考えられる。図２２に、その例を示す。
【００７４】
図２２において、現時刻１７：００にライセンスサーバ２２１から有効期限が１８：００までのライセンス２２３が発行され、クライアント２２２に配信される。クライアント２２２では、クライアントのローカル時刻を１４：００に設定してあるため、本来１７：００から１８：００までの１時間しか利用できないコンテンツを、１４：００から１８：００まで４時間利用できることになってしまう。
【００７５】
このような問題を解決するために、本発明の第２の実施の形態として、有効期限の代わりに１時間、５分間といった有効期間に基づいて機密コンテンツを制御する方法等を以下に述べる。
【００７６】
図２３に、本発明の第２の実施の形態である、有効期間によるコンテンツ制御の概略を、システムの構成とともに示す。システムは、ライセンスを発行するライセンスサーバ２２１、コンテンツ及びライセンスを受け取ってコンテンツを制御するクライアント２２２とからなる。図２３では、ライセンスサーバ２２１の時刻が１７：００で、クライアント２２２のローカル時刻は１４：００と異なっているが、ライセンスの有効期間が１時間ということで発行されるため、現時刻とローカル時刻がずれていてもクライアント２２２においてコンテンツがダウンロードされてから１時間後にコンテンツの使用は不能となる。
【００７７】
本発明の第２の実施の形態のシステム構成のより詳細なものは、第１の実施の形態のシステム構成を示した図２と同一である。すなわち、ライセンスサーバ２２１はライセンスを発行する機能を備え、クライアント２２２は、ライセンス制御モジュール２５、デコーダモジュール２６、Ｖｉｅｗｅｒ／Ｐｌａｙｅｒ２８とからなる。ライセンスサーバから配信されたライセンス２９はメディアＤＲＭ２７に保存される。ライセンス制御モジュール２５はライセンスに基づきコンテンツ操作の制御を行うが、本実施の形態では、このライセンス制御モジュール２５が有効期間による制御を実現するために以下に述べるような処理機能を備える。
【００７８】
１．ライセンス到着時のライセンス格納直後の処理
２．現在時刻チェック処理
３．ライセンス制御モジュール起動時の処理
４．ライセンス移動時の処理
５．ライセンス転送時の処理
上記１〜５について、以下順に説明する。
【００７９】
１．ライセンス到着時のライセンス格納直後の処理：
ライセンスがライセンスサーバからクライアントＰＣのライセンス制御モジュールに到着すると、ライセンスが到着した時刻に有効期間を加えた時刻（ローカル許諾保持期限＝ライセンス到着時刻＋許諾保持期間）をローカル有効期限として改ざんされないように安全に記録処理する。図２４に、ライセンス格納直後の処理のフローを示す。まず、Ｓ２４１でローカル許諾保持期限を暗号化して記録する。Ｓ２４２で、ライセンスの暗号化や保存が良好にできたか判定する。できない場合（Ｆａｉｌｕｒｅ）はＳ２４１にもどり、できた場合（Ｙｅｓ）はＳ２４３に進む。また、何度かリトライしてそれでもライセンスの暗号化や保存ができなかった場合（Ｎｏ）はＳ２４４でエラー処理をして処理を終了する。Ｓ２４３では、現在時刻を暗号化して記録する。
【００８０】
２．現在時刻チェック処理：
現在時刻チェック処理とは、クライアントにおける現在時刻が前回記録したものより以前の時刻になっていないかどうかをチェックする処理である。現在時刻が前回記録したものより以前の時刻になっている場合は、許諾保持期間が設定されているすべてのライセンスを無効にする。図２５に現在時刻チェック処理のフローを示す。Ｓ２５１で現在時刻をチェックする。Ｓ２５２で、前回記録時の時刻より後か否かを判定する。現在時刻が前回記録した時刻より後の場合（Ｙｅｓ）、Ｓ２５４に進み、現在時刻を暗号化して記録して処理を終了する。現在時刻が前回記録した時刻より前の場合（Ｎｏ）、Ｓ２５３に進み、許諾保持期間が設定されているすべてのライセンスを無効にし、Ｓ２５４に進み、処理を終了する。
【００８１】
３．ライセンス制御モジュール起動時の処理：
まず、ライセンス制御モジュール起動時に、すでに記録してあるライセンスのローカル有効期限をチェックし、有効期限が過ぎているライセンスを削除する処理を行う。そして、起動時に、ローカル時刻が前に戻されていないか否かを、現在時刻チェック処理と同様な処理で判定する。図２６に、ライセンス制御モジュール起動時の現在時刻チェック処理のフローを示す。Ｓ２６１で、現在時刻をチェックする。Ｓ２６２で時刻の改ざんがあったか否かを判定し、改ざんがあった場合（Ｙｅｓ）、Ｓ２６３に進み、許諾保持期間が設定されている全ライセンスを無効にする。改ざんがなかった場合（Ｎｏ）、Ｓ２６４に進み、現在時刻を暗号化して記録して処理を終了する。
【００８２】
４．ライセンス移動時の処理：
ライセンスの移動とは、コンテンツを再生するためにデコーダモジュールにライセンスを送ることを言う。
【００８３】
デコーダモジュールにライセンスを送るときに、現在時刻がローカル許諾保持期限内かどうかを判定し（以下、ローカル許諾保持期限チェック）、期限内にない場合、ライセンスは移動しない、という処理を行う。図２７にライセンスの移動時の処理のフローを示す。まず、Ｓ２７１で２．で説明した、現在時刻チェック処理を行う。Ｓ２７２で、現在時刻がローカル許諾保持期限内か否かの判定を行う。Ｓ２７３で判定の結果、期間有効の場合Ｓ２７４に進み、期間無効の場合はＳ２７５に進み、ライセンスを渡さないことを決定する。Ｓ２７４では、移動元のライセンスすなわち、メディアＤＲＭに保存されたライセンスを更新し、デコーダモジュールにライセンスを渡す。メディアＤＲＭに保存されたライセンスの更新とは、コンテンツの操作可能回数（図６の例でいうとｏｐｅｒａｔｉｏｎ＿ｃｏｕｎｔ）、権利回数（図６の例でいうとｒｉｇｈｔｓ＿ｃｏｕｎｔ）を１減算することをいう。これはすなわちコンテンツを１回使用したことをライセンスに反映させることを意味する。そして、Ｓ２７６では、ライセンスの出力が成功したか否かを判定し、成功した場合（Ｎｏｒｍａｌ）、Ｓ２７８に進み、現在時刻を暗号化して記録し処理を終了する。失敗した場合（Ｆａｉｌｕｒｅ）、Ｓ２７７に進み、エラー処理を行って、Ｓ２７８に進み、処理を終了する。
【００８４】
５．ライセンス転送時の処理：
ライセンスの転送とは、ライセンスが他のクライアントＰＣ（図２の１２’）のメディアＤＲＭに移動・コピーされることを言う。
【００８５】
他のクライアントＰＣからライセンスの転送を要求されると、現在時刻チェック処理を行い、ローカル許諾保持期限チェックを行い、許諾保持残余期間（許諾保持残余期間＝許諾保持期間−移動元のメディアＤＲＭで保管されていた時間）を計算し、その値を許諾保持期間に代入したライセンスを転送する、という処理を行う。図２８にライセンスの転送時の処理のフローを示す。Ｓ２８１で、２．で説明した、現在時刻チェック処理を行う。Ｓ２８２で、現在時刻がローカル許諾保持期限内か否かの判定を行う。Ｓ２８３で判定の結果、期間有効の場合はＳ２８４に進み、期間無効の場合は、Ｓ２８５に進み、ライセンスを渡さないことを決定する。Ｓ２８４では、移動元ライセンスを更新し、許諾保持残余時間を計算し転送するライセンスに反映する。移動元のライセンスの更新とは、例えば、権利数１回のライセンスが転送される場合、移動元のライセンスは権利回数（図６の例で言うとｒｉｇｈｔｓ＿ｃｏｕｎｔ）と移動回数（図６の例で言うとｍｏｖｅ＿ｃｏｕｎｔ）が１減らされることをいう。尚、この例の場合は移動先には権利回数１、移動回数０、他の条件は移動元ライセンスと同じ条件のライセンスが転送される。そして、Ｓ２８６で、ライセンスが転送され、Ｓ２８７で、ライセンスの転送が成功したか否か判定し、成功した場合（Ｎｏｒｍａｌ）、Ｓ２８９に進み、現在時刻を暗号化して記録し処理を終了する。失敗した場合（Ｆａｉｌｕｒｅ）、Ｓ２８８に進み、エラー処理を行って、Ｓ２８９に進み、処理を終了する。
【００８６】
以上、本発明の第２の実施の形態について説明した。第２の実施の形態では、第１の実施の形態におけるクライアントＰＣのライセンス制御モジュールにライセンスの有効期間による制御を実現する機能を付加することで実現できる。
【００８７】
ところで、本発明の第１及び第２の実施の形態におけるライセンス配信システム及びクライアントは、図２９に示すようなコンピュータ（情報処理装置）を用いて構成することができる。同図に示すコンピュータは、ＣＰＵ２９１、ＲＡＭ２９２、ＲＯＭ２９３、ＨＤＤ２９４、入力部２９５、出力部２９６、及び外部インタフェース部２９７がバス２９８を介して相互に接続されて構成されており、ＣＰＵ２９１による管理の下で相互にデータ授受を行うことができる。
【００８８】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２９１は、コンピュータ全体の動作制御を司る中央処理装置であり、ライセンス配信システムにおける個別ライセンス生成モジュール２４、クライアントにおけるライセンス制御モジュール２５、デコーダモジュール２６、Ｖｉｅｗｅｒ／Ｐｌａｙｅｒ２８などとして機能する。
【００８９】
ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２９２は、各種プログラムをＣＰＵ２９１が実行するときにワークメモリとして使用され、また各種のデータの一時的な格納領域として必要に応じて用いられるメインメモリとしても使用されるメモリである。
【００９０】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２９３は、ＣＰＵ２１によって実行される基本制御プログラムが予め格納されているメモリであり、このコンピュータの起動時にＣＰＵ２９１がこの基本制御プログラムを実行することによってこのコンピュータシステム全体の動作の基本的な制御がＣＰＵ２９１によって行われる。
【００９１】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２９４は、ライセンス配信システムにおける利用者管理サーバ２１のグループＩＤリストやライセンスＤＢ２３のデータ、及びクライアントにおける配信されたコンテンツや現在時刻チェックを行うための前回時刻のデータ、そのほかプログラムなどを記憶している記憶装置である。
【００９２】
入力部２９５は、外部からの入力を受け取ってその入力の内容をＣＰＵ２９１に渡すものである。入力部２９５としては、例えば、キーボードやマウスなどといったクライアントにおいてユーザが操作するための入力デバイスがあり、更に、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−ＲＯＭ）、ＤＶＤ−ＲＯＭ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ−ＲＯＭ）、ＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃｓ）ディスクなどといった可搬型の記録媒体の読み出し装置を必要に応じて備えて構成される。
【００９３】
出力部２９６は、ＣＰＵ２９１からの指示に応じた出力を行うものであり、各種データを表示する例えばＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）やＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌｙａ）などの表示装置やプリンタ装置などを必要に応じて備えて構成されるものである。
【００９４】
外部Ｉ／Ｆ（インタフェース）部２９７は、コンピュータ間でのデータ授受を行う際の通信管理を行うものであり、ライセンス配信システムとクライアントはこの外部Ｉ／Ｆ２９７を介して通信を行う。
【００９５】
また、本発明の実施の形態において、図３、図８、図１２、図１５、図１８、図２４、図２５、図２６、図２７、図２８に示した各種処理はコンピュータのＣＰＵ２９１によって実行されるものであるが、この各種処理をコンピュータに行わせる制御プログラムをコンピュータで読み取り可能な記録媒体に記録させ、その制御プログラムを記録媒体からコンピュータに読み出させて実行させることによって本発明を実施することも可能である。
【００９６】
記録させた制御プログラムをコンピュータで読み取ることの可能な記録媒体の例を図３０に示す。同図に示すように、記録媒体としては、例えば、コンピュータ３０１に内臓もしくは外付けの付属装置として備えられるＲＡＭ若しくはＲＯＭまたはハードディスク装置などのメモリ３０２、あるいはフレキシブルディスク、ＭＯ（光磁気ディスク）、ＣＤ−ＲＯＭ，ＤＶＤ−ＲＯＭなどといった可搬型記録媒体３０３等が利用できる。
【００９７】
また、記録媒体は通信回線３０４を介してコンピュータ３０１と接続される、プログラムサーバ３０５として機能するコンピュータが備えている記憶装置３０６であってもよい。この場合には、制御プログラムを表現するデータ信号で搬送波を変調して得られる伝送信号を、プログラムサーバ３０５から伝送媒体である通信回線３０４を通じて伝送するようにし、コンピュータ３０１では受信した伝送信号を復調して制御プログラムを再生することで当該制御プログラムを実行できるようになる。
【００９８】
その他、本発明は、上述した実施形態に限定されることなく、本発明の要旨を逸脱しない範囲内で種々の改良・変更が可能である。
【００９９】
（付記１）  複数のグループのうち少なくとも一つに所属するユーザによる、クライアントコンピュータを用いた所定のコンテンツに対するアクセス要求に対して、ライセンスを発行することをコンピュータによって実現する方法であって、
前記クライアントコンピュータを介してライセンスを要求したユーザのユーザＩＤと、記憶装置に記憶されている、ユーザＩＤとグループとを関連づけたグループリストとに基づいて該ユーザの所属するグループを判別し、
前記判別したグループに基づいて、許諾条件を記憶した記憶装置に格納されているアクセス・コントロール・リストの許諾条件を参照してライセンスを生成し、
前記クライアントコンピュータに前記生成したライセンスを出力する、
ことを特徴とする方法。
【０１００】
（付記２）  付記１記載の方法であって、
ユーザにライセンスを要求される際に、
前記コンテンツへのアクセス条件を指定されることと、指定されないことが可能である、
ことを特徴とする方法。
【０１０１】
（付記３）  付記１記載の方法であって、
ユーザが複数のグループに所属している場合、それぞれのグループに対応する前記アクセス・コントロール・リストに登録された許諾条件を結合規則によって結合し、該結合によって得られた許諾条件に基づいてライセンスを生成する、
ことを特徴とする方法。
【０１０２】
（付記４）  付記３記載の方法であって、
前記結合規則は、ユーザの所属するグループの許諾条件の中で最大の許諾のものを採用するもの、または、ユーザの所属するグループの許諾条件の中で最小の許諾のものを採用するもの、または、予めグループに順番をつけておき、その順番に基づいて許諾条件を採用するもの、である、
ことを特徴とする方法。
【０１０３】
（付記５）  複数のグループのうち少なくとも一つに所属するユーザによる、クライアントコンピュータを用いた所定のコンテンツに対するアクセス要求に対して、ライセンスを発行する処理をコンピュータで実現するためのプログラムであって、
前記クライアントコンピュータを介してライセンスを要求したユーザのユーザＩＤと、記憶装置に記憶されている、ユーザＩＤとグループとを関連づけたグループリストとに基づいて該ユーザの所属するグループを判別するステップと、
前記判別したグループに基づいて、許諾条件を記憶した記憶装置に格納されているアクセス・コントロール・リストの許諾条件を参照してライセンスを生成するステップと、
前記クライアントコンピュータに前記生成したライセンスを出力するステップと、
をコンピュータに実行させるためのプログラム。
【０１０４】
（付記６）  クライアントコンピュータと複数のコンピュータで構成されるサーバシステムから成るシステムで、複数のグループのうち少なくとも一つに所属するユーザによる、該クライアントコンピュータを用いた所定のコンテンツに対するアクセス要求に対して、ライセンスを発行するためのシステムであって、
前記クライアントコンピュータにおいて、
ライセンスを要求するユーザのユーザＩＤを前記サーバシステムに送信するクライアント手段と、
前記サーバシステムにおいて、
前記ユーザのユーザＩＤに基づいて、該ユーザの所属するグループを判別する利用者管理手段と、
前記判別したグループに基づいて、登録されているアクセス・コントロール・リストの許諾条件を参照してライセンスを生成するライセンス生成手段と、
前記クライアント手段に前記生成したライセンスを配信するライセンス配信手段と、
を備えることを特徴とするシステム。
【０１０５】
（付記７）  複数のグループのうち少なくとも一つに所属するユーザによる、クライアントコンピュータを用いた所定のコンテンツに対するアクセス要求に対して、ライセンスを発行する処理をコンピュータで実現するためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記クライアントコンピュータを介してライセンスを要求したユーザのユーザＩＤと、記憶装置に記憶されている、ユーザＩＤとグループとを関連づけたグループリストとに基づいて該ユーザの所属するグループを判別するステップと、
前記判別したグループに基づいて、許諾条件を記憶した記憶装置に格納されているアクセス・コントロール・リストの許諾条件を参照してライセンスを生成するステップと、
前記クライアントコンピュータに前記生成したライセンスを出力するステップと、
をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【０１０６】
（付記８）  時間制限のあるライセンスを備えたコンテンツを配信するシステムであって、
ライセンス有効期限を期間に直してライセンスを配信するライセンス配信手段と、
前記配信されたライセンスに基づいて、配信されたコンテンツのライセンス有効期限を制御するライセンス制御手段と、
を備えることを特徴とするシステム。
【０１０７】
【発明の効果】
以上詳細に説明したように、本発明によれば、機密コンテンツに対するグループアクセス制御が可能となり、とくに機関や企業内などの機密情報漏洩に対して効果を上げることが可能となる。また、悪意のあるユーザがコンテンツの実質的な有効期間を改ざんするように細工するような場合であっても、それに対処できる機能を備えることでコンテンツの不正使用を防止することが可能となる。
【図面の簡単な説明】
【図１】個別ライセンス生成の概略を示す図である。
【図２】本発明の構成を示す図である。
【図３】個別ライセンス生成のフローを示す図である。
【図４】ライセンスＤＢのデータ構造（その１）を示す図である。
【図５】ライセンスＤＢのデータ構造（その２）を示す図である。
【図６】データ構造と意味を示す図である。
【図７】最大許諾条件を採用する場合の許諾条件の結合ルールを示す図である。
【図８】最大許諾条件（及び最小許諾条件）を採用する場合の許諾条件の結合フローを示す図である。
【図９】最大許諾条件を採用する場合の許諾条件の結合結果の例を示す図である。
【図１０】最小許諾条件を採用する場合の許諾条件の結合ルールを示す図である。
【図１１】最小許諾条件を採用する場合の許諾条件の結合結果の例を示す図である。
【図１２】グループの順番に基づいて許諾条件を採用する場合のフローを示す図である。
【図１３】グループの順番に基づいて許諾条件を採用する場合の例を示す図である。
【図１４】ユーザの指定するアクセス条件と許諾条件を比較する時の評価ルールを示す図である。
【図１５】アクセス条件と許諾条件を比較する処理のフローを示す図である。
【図１６】ユーザの指定するアクセス条件と許諾条件の結合結果との比較の具体例を示す図である。
【図１７】ユーザがアクセス条件を指定する場合の生成される個別ライセンスの例を示す図である。
【図１８】ユーザがアクセス条件を指定しない場合の個別ライセンス生成のフローを示す図である。
【図１９】ユーザがアクセス条件を指定しない場合の生成される個別ライセンスの例を示す図である。
【図２０】利用者認証サーバとの連携の例を示す図である。
【図２１】利用者認証との連携の例のシーケンスを示す図である。
【図２２】有効期限によるコンテンツ制御の課題を示す図である。
【図２３】有効期間によるコンテンツ制御の概略を示す図である。
【図２４】ライセンス格納直後の処理のフローを示す図である。
【図２５】現在時刻チェック処理のフローを示す図である。
【図２６】ライセンス制御モジュール起動時の処理のフローを示す図である。
【図２７】ライセンスの移動時の処理のフローを示す図である。
【図２８】ライセンスの転送時の処理のフローを示す図である。
【図２９】本発明に係わるコンピュータの構成を示す図である。
【図３０】記録させた制御プログラムをコンピュータで読み取ることの可能な記録媒体の例を示す図である。
【符号の説明】
１１                        ライセンス配信システム
１２                        クライアント
１３                        ＡＣＬ
２１                        利用者管理サーバ
２２                        ライセンス配信サーバ
２３                        ライセンスＤＢ
２４                        個別ライセンス生成モジュール
２５                        ライセンス制御モジュール
２６                        デコーダモジュール
２７                        メディアＤＲＭ
２８                        Ｖｉｅｗｅｒ／Ｐｌａｙｅｒ
２９                        個別ライセンス
２０１                        クライアント
２０２                        通信プラグイン
２０３                        利用者認証サーバ
２０４                        文書管理Ｇａｔｅｗａｙ
２０５                        ライセンス配信サーバ
２０６                        利用者管理サーバ
２０７                        ライセンス配信サーバプラグイン
２２１                        ライセンスサーバ
２２２                        クライアント
２９１                        ＣＰＵ
２９２                        ＲＡＭ
２９３                        ＲＯＭ
２９４                        ＨＤＤ
２９５                        入力部
２９６                        出力部
２９７                        外部Ｉ／Ｆ
２９８                        バス
３０１                        コンピュータ
３０２                        メモリ
３０３                        可搬型記録媒体
３０４                        通信回線
３０５                        プログラムサーバ
３０６                        記憶装置
【図１】
2004302931.tif 000003
【図２】
2004302931.tif 000004
【図３】
2004302931.tif 000005
【図４】
2004302931.tif 000006
【図５】
2004302931.tif 000007
【図６】
2004302931.tif 000008
【図７】
2004302931.tif 000009
【図８】
2004302931.tif 000010
【図９】
2004302931.tif 000011
【図１０】
2004302931.tif 000012
【図１１】
2004302931.tif 000013
【図１２】
2004302931.tif 000014
【図１３】
2004302931.tif 000015
【図１４】
2004302931.tif 000016
【図１５】
2004302931.tif 000017
【図１６】
2004302931.tif 000018
【図１７】
2004302931.tif 000019
【図１８】
2004302931.tif 000020
【図１９】
2004302931.tif 000021
【図２０】
2004302931.tif 000022
【図２１】
2004302931.tif 000023
【図２２】
2004302931.tif 000024
【図２３】
2004302931.tif 000025
【図２４】
2004302931.tif 000026
【図２５】
2004302931.tif 000027
【図２６】
2004302931.tif 000028
【図２７】
2004302931.tif 000029
【図２８】
2004302931.tif 000030
【図２９】
2004302931.tif 000031
【図３０】
2004302931.tif 000032