(57)【要約】  管理装置に接続された端末のアクセス制御方法であって、管理装置が、端末の所有者の時刻に対応する位置情報をスケジュール格納部に格納し、端末が、位置情報と時刻情報を取得し、当該端末の所有者の識別子と、前記位置情報と時刻情報を前記管理装置に送信し、管理装置が、受信した所有者の識別子と前記位置情報及び時刻情報を、スケジュール格納部に格納した前記端末の所有者の時刻に対応する位置情報と比較して、前記位置情報及び時刻情報の少なくとも一方に矛盾が発生したと判定したときには、前記端末の所有者と関連する人の履歴情報から、現在の端末の所有者の業務状態を推定し、前記端末へ業務状態を送信し、端末が、受信した業務状態に応じてアプリケーション及びデータへのアクセスを制御する。
2014068792.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサとメモリを備えた管理装置に接続された端末のアクセス制御方法であって、
前記管理装置が、前記端末の所有者の時刻に対応する位置情報をスケジュール格納部に格納する第１のステップと、
前記端末が、位置情報と時刻情報を取得し、当該端末の所有者の識別子と、前記位置情報と時刻情報を前記管理装置に送信する第２のステップと、
前記管理装置が、前記端末から受信した所有者の識別子と前記位置情報及び時刻情報を、前記スケジュール格納部に格納した前記端末の所有者の時刻に対応する位置情報と比較して、当該端末の時刻情報に対応する位置情報が、前記スケジュール格納部に格納された時刻に対応する位置情報に合致しない場合には、前記位置情報及び時刻情報の少なくとも一方に矛盾が発生したと判定する第３のステップと、
前記管理装置は、前記矛盾が発生したときには、前記端末の所有者と関連する人の履歴情報から、現在の端末の所有者の業務状態を推定し、前記端末へ業務状態を送信する第４のステップと、
前記端末が、前記業務状態を受信し、当該業務状態に応じてアプリケーション及びデータへのアクセスを制御する第５のステップと、
を含むことを特徴とするアクセス制御方法。
【請求項２】
請求項１に記載のアクセス制御方法であって、
前記端末の所有者と関連する人の履歴情報は、前記端末の所有者と関連する人の端末の時刻情報に応じた位置情報と業務状態を蓄積した行動履歴情報であって、
前記第４のステップは、
前記端末の所有者の時刻情報と、前記端末の所有者と関連する人の端末の時刻情報が同一の時刻で、前記端末の所有者の位置情報と、前記端末の所有者と関連する人の端末の位置情報が所定の範囲内であれば、前記端末の所有者と関連する人の業務状態を、前記端末の所有者の業務状態として推定することを特徴とするアクセス制御方法。
【請求項３】
請求項１に記載のアクセス制御方法であって、
前記端末の所有者と関連する人の履歴情報は、前記端末の所有者と関連する人の端末の時刻情報に応じた位置情報と業務状態を蓄積した行動履歴情報であって、
前記第４のステップは、
前記端末の所有者の位置情報の第１の変化のパターンを取得し、前記端末の所有者と関連する人の端末の過去の位置情報の第２の変化のパターンのうち、前記第１の変化のパターンと一致する第２の変化のパターンを抽出し、当該第２の変化のパターンの前記端末の所有者と関連する人の業務状態を、前記端末の所有者の業務状態として推定することを特徴とするアクセス制御方法。
【請求項４】
請求項１に記載のアクセス制御方法であって、
前記端末の所有者と関連する人の履歴情報は、前記端末の位置情報と前記スケジュール格納部の位置情報に矛盾が生じた履歴を格納した矛盾履歴情報と、位置情報と業務状態を格納した業務状態情報を含み、
前記第４のステップは、
前記端末の所有者の前記矛盾と一致する履歴を前記矛盾履歴情報から取得し、前記取得した履歴に含まれる位置情報から業務状態を取得し、当該業務状態を前記端末の所有者の業務状態として推定することを特徴とするアクセス制御方法。
【請求項５】
請求項１に記載のアクセス制御方法であって、
前記第５のステップは、
前記業務状態に応じて、当該端末で起動するアプリケーションの種類、当該端末で操作するデバイス及びアクセスするデータを制限または解除することを特徴とするアクセス制御方法。
【請求項６】
請求項１に記載のアクセス制御方法であって、
前記端末の所有者と関連する人は、前記端末の所有者が所属する組織の部署と、前記端末の所有者が行う業務のうちの少なくとも一つが同一であることを特徴とするアクセス制御方法。
【請求項７】
プロセッサとメモリを備えた管理装置と、プロセッサとメモリを備えて前記管理装置に接続された端末とを備えたアクセス制御システムであって、
前記端末は、
時刻情報と位置情報を取得する基礎データ取得部と、
業務状態に応じてアプリケーション及びデータへのアクセスを制御する起動制御部と、
前記時刻情報と位置情報及び当該端末の所有者の識別子を前記管理装置へ送信し、前記業務状態を前記管理装置から受信する通信部と、を有し、
前記管理装置は、
前記端末から所有者の識別子と前記位置情報及び時刻情報を受信し、前記端末へ業務状態を送信する通信部と、
前記端末の所有者の時刻に対応する位置情報を格納するスケジュール格納部と、
前記端末から受信した所有者の識別子と前記位置情報及び時刻情報を、前記スケジュール格納部に格納した前記端末の所有者の時刻に対応する位置情報と比較して、当該端末の時刻情報に対応する位置情報が、前記スケジュール格納部に格納された時刻に対応する位置情報に合致しない場合には、前記位置情報及び時刻情報の少なくとも一方に矛盾が発生したと判定し、前記矛盾が発生したときには、前記端末の所有者と関連する人の履歴情報から、現在の端末の所有者の業務状態を推定する業務状態推定部と、
を有することを特徴とするアクセス制御システム。
【請求項８】
請求項７に記載のアクセス制御システムであって、
前記端末の所有者と関連する人の履歴情報は、前記端末の所有者と関連する人の端末の時刻情報に応じた位置情報と業務状態を蓄積した行動履歴情報であって、
前記業務状態推定部は、
前記端末の所有者の時刻情報と、前記端末の所有者と関連する人の端末の時刻情報が同一の時刻で、前記端末の所有者の位置情報と、前記端末の所有者と関連する人の端末の位置情報が所定の範囲内であれば、前記端末の所有者と関連する人の業務状態を、前記端末の所有者の業務状態として推定することを特徴とするアクセス制御システム。
【請求項９】
請求項７に記載のアクセス制御システムであって、
前記端末の所有者と関連する人の履歴情報は、前記端末の所有者と関連する人の端末の時刻情報に応じた位置情報と業務状態を蓄積した行動履歴情報であって、
前記業務状態推定部は、
前記端末の所有者の位置情報の第１の変化のパターンを取得し、前記端末の所有者と関連する人の端末の過去の位置情報の第２の変化のパターンのうち、前記第１の変化のパターンと一致する第２の変化のパターンを抽出し、当該第２の変化のパターンの前記端末の所有者と関連する人の業務状態を、前記端末の所有者の業務状態として推定することを特徴とするアクセス制御システム。
【請求項１０】
請求項７に記載のアクセス制御システムであって、
前記端末の所有者と関連する人の履歴情報は、前記端末の位置情報と前記スケジュール格納部の位置情報に矛盾が生じた履歴を格納した矛盾履歴情報と、位置情報と業務状態を格納した業務状態情報を含み、
前記業務状態推定部は、
前記端末の所有者の前記矛盾と一致する履歴を前記矛盾履歴情報から取得し、前記取得した履歴に含まれる位置情報から業務状態を取得し、当該業務状態を前記端末の所有者の業務状態として推定することを特徴とするアクセス制御システム。
【請求項１１】
請求項７に記載のアクセス制御システムであって、
前記起動制御部は、
前記業務状態に応じて、当該端末で起動するアプリケーションの種類、当該端末で操作するデバイス及びアクセスするデータを制限または解除することを特徴とするアクセス制御システム。
【請求項１２】
請求項７に記載のアクセス制御システムであって、
前記端末の所有者と関連する人は、前記端末の所有者が所属する組織の部署と、前記端末の所有者が行う業務のうちの少なくとも一つが同一であることを特徴とするアクセス制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はスケジュール情報と位置情報を用いたアクセス制御技術に関する。
【背景技術】
【０００２】
近年、スマートデバイス(スマートフォンやタブレット端末)を業務で利用する事例が急速に増えてきている。一方で、スマートデバイスの盗難等による第三者の不正利用から機密情報が漏洩することが新たな問題となっている。【０００３】
スマートデバイスが普及する前では、計算機に格納されたファイルの機密性に応じて、アプリケーションの起動、もしくは、ファイルへのアクセスが可能なユーザを制限することで、データのアクセス制御を行ってきた。スマートデバイスが普及した後では、機密情報の漏洩防止の意識の高まりを背景に、アクセス権を持つユーザに対しても、予め定められた時間と場所でなければアプリケーションの起動や情報へのアクセスを拒否するような運用が求められている。【０００４】
例えば、特許文献１に開示されているような技術によれば、ユーザの実際の行動が予め登録されたスケジュールと一致しているか否かを判定し、一致していないと判定された場合には、予め定められたセキュリティパターンに応じたアプリケーションやデータへのアクセス規定に基づいたセキュリティ制御を実現している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−３５２５６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に開示されているような技術を利用した場合、ユーザの位置情報とスケジュールに登録されている位置情報を用いれば適切なアクセス制御が可能である。しかし、この技術はスケジュールが正しく登録されていることが前提であるが、スケジュールは変更されることもあり、常に登録されているスケジュール通りでユーザは業務に従事しているとは限らない。【０００７】
例えば、ユーザがスケジュール登録を忘れる、スケジュールが予定よりも延長する、スケジュールが予定よりも前倒しで完了するなど、スケジュールが変更される場合がある。このとき、上記特許文献１に開示されているような技術では、適切な時間と場所からのアクセスであってもアクセスを拒否されてしまうという問題が生じる可能性があり、ユーザの利便性を低下させてしまう。【０００８】
本発明の目的は、登録されたスケジュールと実際の行動が異なっている場合においてもユーザの利便性を確保しつつ情報漏洩の防止を実現することにある。
【課題を解決するための手段】
【０００９】
本発明は、プロセッサとメモリを備えた管理装置に接続された端末のアクセス制御方法であって、前記管理装置が、前記端末の所有者の時刻に対応する位置情報をスケジュール格納部に格納する第１のステップと、前記端末が、位置情報と時刻情報を取得し、当該端末の所有者の識別子と、前記位置情報と時刻情報を前記管理装置に送信する第２のステップと、前記管理装置が、前記端末から受信した所有者の識別子と前記位置情報及び時刻情報を、前記スケジュール格納部に格納した前記端末の所有者の時刻に対応する位置情報と比較して、当該端末の時刻情報に対応する位置情報が、前記スケジュール格納部に格納された時刻に対応する位置情報に合致しない場合には、前記位置情報及び時刻情報の少なくとも一方に矛盾が発生したと判定する第３のステップと、前記管理装置は、前記矛盾が発生したときには、前記端末の所有者と関連する人の履歴情報から、現在の端末の所有者の業務状態を推定し、前記端末へ業務状態を送信する第４のステップと、前記端末が、前記業務状態を受信し、当該業務状態に応じてアプリケーション及びデータへのアクセスを制御する第５のステップと、を含む。
【発明の効果】
【００１０】
本発明によれば、業務のスケジュール情報と端末の位置情報を使った厳密なアクセス制御により、端末の情報漏えいリスクを軽減しつつ、業務のスケジュール情報と端末の位置情報に矛盾が生じた場合でも、アクセス可能にすることで、ユーザの利便性を確保しつつ情報漏えい防止することが可能となる。
【図面の簡単な説明】
【００１１】
【図１Ａ】本発明の第１の実施例を示し、アクセス制御システムの一例を示すブロック図である。
【図１Ｂ】本発明の第１の実施例を示し、管理装置の一例を示すブロック図である。
【図２Ａ】本発明の第１の実施例を示し、アクセス制御システムで行われる処理のモデルを示す図である。
【図２Ｂ】本発明の第１の実施例を示し、アクセス制御システムで行われる処理のモデルで、処理の一例を示すブロック図である。
【図３】本発明の第１の実施例を示し、社員情報テーブルのデータ構造の一例を示す図である。
【図４】本発明の第１の実施例を示し、業務スケジュールリストのデータ構造の一例を示す図である。
【図５】本発明の第１の実施例を示し、行動履歴テーブルのデータ構造の一例を示す図である。
【図６】本発明の第１の実施例を示し、業務エリア位置情報対応表のデータ構造の一例を示す図である。
【図７】本発明の第１の実施例を示し、業務コンテキスト対応表のデータ構造の一例を示す図である。
【図８】本発明の第１の実施例を示し、適用ポリシ対応表のデータ構造の一例を示す図である。
【図９】本発明の第１の実施例を示し、ポリシ定義テーブルのデータ構造の一例を示す図である。
【図１０】本発明の第１の実施例を示し、業務コンテキスト推定部で行われる処理の一例を示すフローチャートである。
【図１１Ａ】本発明の第１の実施例を示し、位置情報−業務スケジュール矛盾解決部で行われる処理の一例を示すフローチャートの前半部である。
【図１１Ｂ】本発明の第１の実施例を示し、位置情報−業務スケジュール矛盾解決部で行われる処理の一例を示すフローチャートの後半部である。
【図１２】本発明の第２の実施例を示し、管理装置の構成を示すブロック図である。
【図１３】本発明の第２の実施例を示し、位置情報−業務スケジュール矛盾解決部で行われる処理の一例を示すフローチャートである。
【図１４】本発明の第３の実施例を示し、管理装置の一例を示すブロック図である。
【図１５Ａ】本発明の第３の実施例を示し、位置情報業務スケジュール矛盾解決部で行われる処理の一例を示すフローチャートの前半部である。
【図１５Ｂ】本発明の第３の実施例を示し、位置情報業務スケジュール矛盾解決部で行われる処理の一例を示すフローチャートの中間部である。
【図１５Ｃ】本発明の第３の実施例を示し、位置情報業務スケジュール矛盾解決部で行われる処理の一例を示すフローチャートの後半部である。
【図１６】本発明の第３の実施例を示し、矛盾履歴テーブルの一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態を図面に基づいて詳細に説明する。
【００１３】
本発明の原理ついて、図２Ａ、図２Ｂに示すアクセス制御システムのモデル図を用いて説明する。なお、図２Ａは本発明の計算機システムで行われる処理のモデルを示す図であり、図２Ｂは、アクセス制御システムで行われる処理の一例を示す図である。
【００１４】
図２Ａ、図２Ｂでは本発明の前記課題を解決する複数の実施例のうち３つの実施例を例示するものである。
【００１５】
図２Ａ、図２Ｂにおいて、日立太郎、日立次郎、日立三郎の３名は同じ会社に属する社員で、各社員は業務上関連しているものとし、また各社員（ユーザ）はそれぞれ１台ずつ、本発明にて実現されるアクセス制御機能を搭載した端末１０〜１２を保持しているものとする。
【００１６】
図２Ａにおいて、７／２８に日立太郎は、図２Ｂの業務スケジュールリスト３３に示すように業務スケジュールでは横浜第３ビルにて仕様検討を行う予定であった。しかし、実際には日立太郎は、急遽横浜第１ビルで行われているモバイル定例会議に参加することになり、業務スケジュールの修正を行うことができなかったため、業務スケジュールと端末１０の位置情報に矛盾が生じている。
【００１７】
日立太郎が端末１０で業務アプリケーションの起動要求をしたときに、本発明で実現されるアクセス制御が実行され、最初に業務スケジュールに登録された位置情報と、日立太郎の位置情報に矛盾があるか否かを判断する。上述のとおり、日立太郎は業務スケジュール情報と位置情報に矛盾が生じている。本発明ではこのような場合においても厳密なアクセス制御を行うものである。以下、３つの実施例の概要を記述する。
【００１８】
第１の実施例として、管理装置２０００は、業務スケジュールと位置情報に矛盾が生じた際に、端末の位置情報が近く、かつ業務上関連する人は対象者と同じ業務をしているとみなし、当該関連する社員の業務スケジュール情報を用いて日立太郎の業務コンテキストを推定する。
【００１９】
図２Ａ、図２Ｂにおいて、７／２８に日立太郎と同じ打ち合わせに参加し、位置情報が近い日立三郎の業務スケジュールを日立太郎の業務スケジュールとみなす。この業務スケジュール内の位置情報を用いて業務コンテキストを推定する。そして、管理装置２０００で推定された業務コンテキストを用いて、端末１０は、日立太郎に適用する適用ポリシを図２Ｂの適用ポリシ対応表３４から取得し、ポリシに沿ったファイルのアクセス制御を行う。
【００２０】
第２の実施例としては、業務スケジュールと位置情報に矛盾が生じた際に、管理装置２０００は、ユーザの現在の位置情報の変化パターンと似ている、あるいは、業務上関連する人の過去の位置情報履歴を検索する。そして、管理装置２０００は、検索された位置情報の履歴に対応する業務コンテキストを、現在のユーザの業務コンテキストとして推定する。図２Ａ、図２Ｂにおいて、日立太郎はモバイル定例会議に出席するため、横浜第１ビルにて一定時間滞在している。業務で関連している日立次郎も７／２１に打ち合わせで横浜第1ビルに滞在していたことが業務で関連する人の過去の業務コンテキスト３１により示されている。位置情報の変化パターンが似ている日立次郎に適用されていた業務コンテキスト”社内”を、７／２８の日立太郎の業務コンテキストと推定する。
【００２１】
そして、日立太郎の端末１０は、推定された業務コンテキストを用いて日立太郎に適用する適用ポリシ名を適用ポリシ対応表３４から取得し、適用ポリシ名に沿った端末１０のアクセス制御を行う。
【００２２】
第３の実施例として、管理装置２０００には、ユーザの予定ごとに、業務スケジュールとユーザの位置情報にどの様な矛盾が発生していたかを記憶させておき、業務スケジュールと位置情報に矛盾が生じた際に、過去の矛盾履歴を用いてスケジュールの矛盾傾向から現在の業務コンテキストを推定する。同図において、７／２８の日立太郎が参加しているモバイル定例会議が予定していた時間を延長して打ち合わせを継続していた際に、登録されていたスケジュールとユーザの位置情報に矛盾が生じる。このとき、過去の矛盾履歴から７／２１に同じ件名の打ち合わせで延長していたことから、今回も打ち合わせが延長しているものとみなし、業務コンテキストを直前のスケジュールと同一であると推定する。そして、推定された業務コンテキストを用いて日立太郎の端末１０に適用する適用ポリシを適用ポリシ対応表から取得し、適用ポリシに沿ったアクセス制御を行う。
【００２３】
このように３つの具体例で示したように本発明は、端末１０の位置情報と業務スケジュール情報内の位置情報が異なる場所であると判断された場合に、業務上関連する人の現在の業務コンテキスト情報、または、過去の業務コンテキスト情報、矛盾履歴を用いて端末１０の位置情報と業務スケジュール情報の矛盾を解決する位置情報−業務スケジュール矛盾解決手法を備えるアクセス制御を行うことを特徴とする。
【実施例１】
【００２４】
図１Ａ、図１Ｂは、実施例１として説明するアクセス制御システムの構成を示すものである。図１Ａは、本発明を適用する計算機システムの一例を示すブロック図である。なお、図１Ｂは、アクセス制御システムを構成する管理装置の一例を示すブロック図である。アクセス制御システムは、少なくとも２つ以上の端末１０００と、管理装置２０００と、無線基地局１００と、公衆回線（またはインターネット）２００を含む計算機システムで構成される。【００２５】
端末１０００は、例えばスマートフォンやタブレットのような移動端末であり、ハードウェア構成として、補助記憶装置１２００、主記憶装置１３００、ＣＰＵ１４００、タッチパネルディスプレイ１５００、例えばGPSなどの位置情報取得装置１６００、無線ネットワークインタフェース１７００、近接通信装置１８００、カメラ１９００、及び、これらの装置をつなぐバス（またはインターコネクト）１１００を備えている。【００２６】
無線ネットワークインタフェース１７００が公衆回線２００に接続する際、無線基地局１００を経由してデータ通信を行う。【００２７】
補助記憶装置１２００は、業務コンテキストに対応する適用ポリシが記述された適用ポリシ対応表１２１０と、業務アプリケーション３１００、プライベートアプリケーション３１１０、業務データ３１２０、端末が備える各種装置などへのアクセス許可を定義する適用ポリシが記述されたポリシ定義テーブル１２２０と、業務コンテキストデータを記憶する業務コンテキスト１２３０と、適用ポリシ名を記憶する適用ポリシ１２４０を有する。また、補助記憶装置１２００には、業務アプリケーション３１００と、プライベートアプリケーション３１１０が格納され、実行する際には主記憶装置１３００にロードされる。なお、業務アプリケーション３１００とプライベートアプリケーション３１１０の総称をアプリケーションとする。【００２８】
主記憶装置１３００には、管理装置２０００に業務コンテキストの判定要求を行う業務コンテキスト判定依頼部１３１０と、業務コンテキストから適用するポリシを決定する適用ポリシ判定部１３２０と、適用されているポリシに従ってアプリケーションなどの起動制御やデータへのアクセス制御を行うアプリケーション起動制御部１３３０と、時刻情報や位置情報の取得を行う基礎データ取得部１３４０と、およびこれら処理部を実行する基盤であるＯＳ１３５０を読み込んで、ＣＰＵ１４００で実行される。【００２９】
業務コンテキスト判定依頼部１３１０と、適用ポリシ判定部１３２０と、アプリケーション起動制御部１３３０と、基礎データ取得部１３４０の各機能部はプログラムとして主記憶装置１３００にロードされる。【００３０】
ＣＰＵ１４００は、各機能部のプログラムに従って動作することによって、所定の機能を実現する機能部として動作する。例えば、ＣＰＵ１４００は、基礎データ取得プログラムに従って動作することで基礎データ取得部１３４０として機能する。他のプログラムについても同様である。さらに、ＣＰＵ１４００は、各プログラムが実行する複数の処理のそれぞれを実現する機能部としても動作する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。【００３１】
各機能部を実現するプログラム、テーブル等の情報は、補助記憶装置１２００を構成する不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶デバイス、または、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。【００３２】
図１Ｂにおいて、管理装置２０００は、例えば一般的な業務サーバであり、ハードウェア構成として、補助記憶装置２２００、主記憶装置２３００、ＣＰＵ２４００、ネットワークインタフェース２５００、ディスプレイ２６００、マウス２７００、キーボード２８００、及びこれらの装置をつなぐバス２１００を備えている。【００３３】
補助記憶装置２２００は、ユーザの行動履歴が記録された行動履歴テーブル２２１０、部署名と位置情報の対応が記述された業務エリア−位置情報対応表２２２０、ユーザの状態によって適用されるコンテキストが記述された業務コンテキスト対応表２２３０、ユーザの業務スケジュールが記録された業務スケジュールリスト２２４０、ユーザの所属組織などの社員の属性情報が記述された社員情報テーブル２２５０、業務データ３１２０を有する。【００３４】
主記憶装置２３００には、ユーザの業務コンテキストの推定を行う業務コンテキスト推定部２３１０、登録された業務スケジュールとユーザの位置情報に矛盾があった場合に、その矛盾を解決し業務コンテキストの推定を行う位置情報−業務スケジュール矛盾解決部２３３０、およびこれら手順を実行する基盤であるＯＳ２３５０が読み込まれている。【００３５】
業務コンテキスト推定部２３１０、位置情報−業務スケジュール矛盾解決部２３３０、ＯＳ２３５００の各機能部はプログラムとして主記憶装置２３００にロードされる。【００３６】
ＣＰＵ２４００は、各機能部のプログラムに従って動作することによって、所定の機能を実現する機能部として動作する。例えば、ＣＰＵ２４００は、業務コンテキスト推定プログラムに従って動作することで業務コンテキスト推定部２３１０として機能する。他のプログラムについても同様である。さらに、ＣＰＵ２４００は、各プログラムが実行する複数の処理のそれぞれを実現する機能部としても動作する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。【００３７】
各機能部を実現するプログラム、テーブル等の情報は、補助記憶装置２２００を構成する不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶デバイス、または、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。【００３８】
本実施例におけるアクセス制御システムの概要について、図２Ｂを参照しながら以下に説明する。【００３９】
端末１０００の利用者がアプリケーションの起動要求や管理装置２０００の業務データ３１２０へのアクセス要求を行うと、端末１０００内の主記憶装置１３００に読み込まれている業務コンテキスト判定依頼部１３１０が実行される。業務コンテキスト判定依頼部１３１０は、基礎データ取得部１３４０を用いて日付及び時刻情報と、端末１０００の位置情報を含む基礎データを取得し、取得した基礎データを業務コンテキスト判定依頼部１３１０に渡す。なお、日付及び時刻情報はＮＴＰ（Network Time Protocol）サーバから取得し、位置情報はＧＰＳ（Global Positioning System）を利用する位置情報取得装置１６００から取得することができる。【００４０】
基礎データを受け取った業務コンテキスト判定依頼部１３１０は、管理装置２０００に対して端末１０００ユーザの業務コンテキストの推定を依頼する。このとき、端末１００００の所有者の名前情報と基礎データも管理装置２０００に送信する。【００４１】
端末１０００から業務コンテキストの推定依頼を受けた管理装置２０００は、業務コンテキスト推定部２３１０を実行する。【００４２】
業務コンテキスト推定部２３１０は、端末１０００から業務コンテキストの推定を要求された依頼者名、日付、時刻、位置情報を受け取り、予め登録されている業務スケジュールリスト３３に設定されている位置情報と、端末１０００が取得計測した位置情報とに矛盾がないかを判定する。業務コンテキスト推定部２３１０は、判定の結果、矛盾がなければ登録されているスケジュールに基づいて、業務コンテキストを推定する（Ｓ３）。一方、現在の位置情報と、業務スケジュールリストの位置情報に矛盾があった場合には、業務コンテキスト推定部２３１０は、位置情報−業務スケジュール矛盾解決部２３３０を用いて業務コンテキストを推定し、端末１０００に推定した業務コンテキストを送信する（Ｓ１、Ｓ２）。【００４３】
位置情報−業務スケジュール矛盾解決部２３３０は、業務コンテキストの推定を依頼したユーザの位置情報が近く、業務上関連する人のスケジュール情報を用いて業務コンテキストの推定を行う。【００４４】
管理装置２０００から、推定された業務コンテキストを受け取った端末１０００の業務コンテキスト判定依頼部１３１０は、推定結果を補助記憶装置１２００内の業務コンテキスト１２３０に保存する。【００４５】
適用ポリシ判定部１３２０は、補助記憶装置１２００内に保存されている適用ポリシ対応表１２１０から、業務コンテキスト１２３０に対応する適用ポリシを取得して、補助記憶装置１２００内の適用ポリシ１２４０に保存する。【００４６】
アプリケーション起動制御部１３３０は、ポリシ定義テーブル１２２０から、適用ポリシ１２４０に対応する適用ポリシを取得し、取得したポリシ定義されたアプリケーションの起動制御やデータへのアクセス制御などを行う（Ｓ４）。【００４７】
図３は、実施例１にて用いる社員情報テーブル２２５０のデータ構造を例示した図である。図３で示すように、社員情報は、社員の名前を記憶する氏名２２５１、社員番号を記憶する社員番号２２５２、社員の所属事業部を記憶する所属事業部２２５３、社員の所属部を記憶する所属部２２５４、社員が現在携わっているプロジェクトを記憶する所属ＰＪ２２５５及びユーザに貸与された端末１０００を一意に識別する端末ＩＤ２２５６から構成される。【００４８】
図３に示す社員情報テーブル２２５０は、本実施例中にてあるユーザと業務上関連する社員を探す際に利用される。例えば、図３中の日立太郎２２５１ａと業務上関連する人を取得する方法は、日立太郎２２５１ａの所属事業部２２５３、所属部２２５４、所属ＰＪ２２５５、端末ＩＤ２２５６のうち少なくともいずれかが同じであるユーザを検索する。図３においては、レコード２２５５ａの「日立太郎」（２２５１）の所属事業部２２５３、所属部２２５４、所属ＰＪ２２５５、端末ＩＤ２２５６のうち少なくともいずれかが同じである社員は、レコード２２５５ｂの「日立次郎」と、レコード２２５５ｃの「日立三郎」２５１ｃの２名である。【００４９】
図４は、実施例１にて用いる業務スケジュールリスト２２４０のデータ構造を例示した図である。図４に示す業務スケジュールリスト２２４０は、ユーザ名と時刻に対する業務を行なう予定の位置情報を取得する際などに利用する。【００５０】
図４で示すように、業務スケジュール情報は、登録されているユーザの氏名を記憶する氏名２２４１、業務スケジュール件名を記憶する予定件名２２４２、業務スケジュールの実施日を記憶する日付２２４３、スケジュールの開始予定時刻と終了予定時刻を記憶する時間２２４４、スケジュールの実施場所を記憶する業務エリア２２４５にて構成される。【００５１】
図４にて示す業務エリア２２４５は、ユーザが業務を行う場所の情報を表す、本実施例では、業務を行う建物の名前を記憶する建物名２２４５−１と、階数情報を記憶するフロア２２４５−２の両方を含む情報である。例えば、レコード２２４５−２ａの日立太郎が２０１２／７／７（２２４３）の１０時（２２４４）に業務スケジュール上、業務を行なう予定の業務エリア（２２４５）は横浜第１ビル（２２４５−１）の１Ｆ（２２４５−２）となる。【００５２】
図５は実施例１にて用いる行動履歴テーブル２２１０のデータ構造を例示した図である。図５で示すように、行動履歴テーブル２２１０は、行動したユーザの氏名を記憶する氏名２２１１、行動した日付を記憶する日付２２１２、行動を計測した時間を記憶する時間２２１３、行動した際の業務スケジュールの予定件名を記憶する予定件名２２１４、行動した際に計測された位置情報を記憶する位置情報２２１５、行動した際の業務コンテキストを記憶する業務コンテキスト２２１６、位置情報−業務スケジュール矛盾解決部２３３０にて解決されたものである事を記憶する矛盾フラグ２２１７にて構成される。【００５３】
このうち、位置情報２２１５は、経緯度座標情報を記憶する緯度・経度２２１５−１と無線ＬＡＮ固有の識別子を記憶する無線ＬＡＮ識別子２２１５−２の両方の情報を含むが、記憶される値は２つのうち一方だけでも良い。矛盾フラグは位置情報−業務スケジュール矛盾解決部２３３０にて解決されたものであれば「１」が記憶され、それ以外であれば何も記憶しないものとする。【００５４】
図５で示す行動履歴テーブル２２１０は、本実施例中にて同時刻にユーザと位置情報が近い人を取得する際に利用する。例えば、図５にて、レコード２２１７ａでは、日立太郎（２２１１）が１０時（２２１３）に、位置情報（２２１５）が緯度・経度（２２１５−１）がａａａ、ｂｂｂ、無線ＬＡＮ識別子（２２１５−２）が「横浜第１ビル１Ｆ」であった際に、同時刻に同じ場所にいたユーザとして、レコード２２１７ｂの「日立次郎」を管理装置２０００が取得する。【００５５】
図６は実施例１にて端末１０００の位置情報からユーザがいる業務エリアを判断する為に用いる、業務エリア−位置情報対応表２２２０のデータ構造を例示した図である。図６で示すように、ユーザが業務を行う建物名などの情報を記憶する業務エリア２２２１と経緯度などの位置情報を記憶する位置情報２２２２にて構成されている。また、業務エリア位置情報対応表２２２０は、システム管理者により作成され管理装置２０００内の補助記憶装置２２００内に記憶される。【００５６】
業務エリアは、例えば図６のレコード２２２１−２ａにある「横浜第１ビル」という会社の建屋名やレコード２２２１−２ｄにある「東京展示会場」という展示会場名を記憶する建物名と、建屋内の階数を記憶するフロアの両方の情報を含むが記憶される値は２つのうち片方だけでも良い、位置情報２２２２は図５で用いた２２１５と同様の情報を含むものとする。なお、業務エリア２２２１は、建物名２２２１−１とフロア２２２１−２を含み、位置情報２２２２は、緯度・経度２２２２−１と、無線ＬＡＮ識別子２２２２−２を含む。【００５７】
ユーザが「横浜第１ビル」（２２２１−２ａ）の「１Ｆ」（２２２１−２ａ）にいる場合、位置情報は、緯度・経度情報２２２２−１が「ａａａ、ｂｂｂ」、無線ＬＡＮ識別子情報２２２２−２が「横浜第１ビル１Ｆ」であると判断する。また、端末１０００で計測された位置情報の緯度経度２２２２−１が「ｘｘｘ、ｙｙｙ」（２２２２−２ｄ）であった場合、ユーザがいる業務エリアは東京展示会場（２２２１−２ｄ）であると管理装置２０００で判定する。【００５８】
図７は実施例１にて、ユーザ名と業務エリア情報から業務コンテキストを推定する際に用いる、業務コンテキスト対応表２２３０のデータ構造を例示した図である。図７は、業務エリアが同じ場合でもユーザにより業務コンテキストが異なることがある。図７で示すように、業務コンテキストが適用されるユーザ名を記憶する氏名２２３１、建物名やフロア情報を記憶する業務エリア２２３２、推定する業務コンテキスト名を記憶する業務コンテキスト２２３４にて構成される。また、業務コンテキスト対応表２２３０は、システム管理者により作成され、管理装置２０００内の補助記憶装置２２００内に記憶される。なお、業務エリア２２３２は、建物名２２３２−１とフロア２２３２−２を含む。【００５９】
業務エリア２２３２は前述した図６の２２２１と同様の情報を保持する。例えば、レコード２２３３ａの「日立太郎」が「横浜第１ビル」（２２３２−１）の「１Ｆ」（２２３２−２）務エリアに居る際、業務コンテキストは「社内」（２２３３）と管理装置２０００で推定する。【００６０】
図８は実施例１にて、業務コンテキストから適用ポリシを決定するのに用いる、適用ポリシ対応表１２１０のデータ構造を例示した図である。図８で示すように、適用ポリシ対応表１２１０は、業務コンテキスト１２１１と、対応する適用ポリシ名１２１２にて構成される。また、適用ポリシ対応表１２１０は、システム管理者が作成し、例えばリモート端末管理ツールを用いたファイルの送付や、メール添付による送付、あるいはｗｅｂページからユーザがダウンロードするなどの方法により端末１０００内の補助記憶装置１２００に記憶される。【００６１】
本実施例中では、ユーザの業務コンテキスト１２１１が「社内」（１２１２ｂ）であった場合に適用されるポリシ名１２１２は「業務アプリ／データ使用可能」となる。【００６２】
図８において、業務コンテキスト１２１１が「業務外」であれば、適用ポリシ名１２１２が「業務アプリ／データ使用不可」となって、端末１０００で業務アプリケーション３１００と業務データ３１２０の使用が禁止される。【００６３】
また、業務コンテキスト１２１１が「業務中、社内」であれば、適用ポリシ名１２１２が「業務アプリ／データ使用可能」となって、端末１０００で業務アプリケーション３１００と業務データ３１２０の双方の使用が許可される。【００６４】
また、業務コンテキスト１２１１が「業務中、出張中、自社」であれば、適用ポリシ名１２１２が「業務アプリ／データ使用可能」となって、端末１０００で業務アプリケーション３１００と業務データ３１２０の双方の使用が許可される。一方、業務コンテキスト１２１１が「業務中、出張中、客先」であれば、適用ポリシ名１２１２が「制限付き業務アプリ／データ使用可能」となって、端末１０００で使用可能な業務アプリケーション３１００と業務データ３１２０が、予め設定したもののみが許可される。さらに、業務コンテキスト１２１１が「業務中、出張中、展示会等」であれば、適用ポリシ名１２１２が「業務データの編集のみ不可」となって、端末１０００では業務データ３１２０の編集が禁止される。【００６５】
また、業務コンテキスト１２１１が「移動中」であれば、適用ポリシ名１２１２が「全て使用可能」となって、端末１０００の全てのアプリケーションとデータの双方の使用が許可される。【００６６】
また、業務コンテキスト１２１１が「不明」であれば、適用ポリシ名１２１２が「プライベートアプリのみ使用可能」となって、端末１０００の業務アプリケーション３１００を除いたプライベートアプリケーション３１１０が使用可能となる。【００６７】
図９にて示される、ポリシ名に対応するアクセス制御の詳細を定義するポリシ定義テーブル１２２０のデータ構造を例示した図である。図９で示すように、ユーザに適用する適用ポリシ名１２２１、プライベートアプリケーション１２２２、業務アプリケーション１２２３、業務データへのアクセス１２２４、業務データの編集１２２５、カメラ１２２６、近接通信機器によるデータ共有１２２７にて構成される。また、ポリシ定義テーブル１２２０は、図８と同様にシステム管理者により作成され、上述した方法により端末１０００内の補助記憶装置１２００に記憶される。【００６８】
本実施例中では、適用ポリシ名１２２１が「業務アプリ／データ使用可能」（レコード１２２７ｂ）であった場合、プライベートアプリケーション１２２２は会社が認めたアプリケーションのみが起動可能となり、業務アプリケーション１２２３は起動可能であり、業務データへのアクセス１２２４も可能であり、業務データの編集１２２５も可能であり、カメラ１２２６の使用は不可に設定され、例えば、ＩｒＤＡやＢｌｕｅｔｏｏｔｈ（Ｂｌｕｅｔｏｏｔｈは登録商標、以下同じ。）のような近接通信機器によるデータ共有１２２７も使用不可、というアクセス制御が実施される。【００６９】
また、アクセス制御については、上記の他、適用ポリシ毎に、ブラウザなどのアクセスを許可または禁止するＵＲＬを設定したり、アクセスを許可または禁止するポート番号を設定することができる。【００７０】
なお、適用ポリシ名に応じてアプリケーション起動制御部１３３０が使用を制限するデバイスとして、カメラ１９００や近接通信装置１８００を採用した例を示したが、これらに限定されるものではなく、音声録再装置や通話装置等を含むようにしてもよい。【００７１】
次に、図１０に示すフローチャートでは、管理装置２０００の業務コンテキスト推定部２３１０で行われる処理の一例について説明する。業務コンテキスト推定部２３１０はユーザの業務コンテキスト（または業務の状態）を推定する。【００７２】
業務コンテキスト推定部２３１０は、端末１０００の業務コンテキスト判定依頼部１３１０から、業務コンテキストの推定依頼を受けた際に実行される。また、業務コンテキストの推定依頼と同時に、端末１０００から端末の所有者名、日付情報、時刻情報、ならびに端末１０００の位置情報が送られてくる。【００７３】
業務コンテキスト推定部２３１０が実行されると、最初に端末１０００から受信した情報を、ステップ２３１１にて端末所有者名を変数Ｐ０に記憶し、位置情報を変数Ｌに記憶する。【００７４】
ステップ２３１２にて、業務コンテキスト推定部２３１０は、業務スケジュールリスト２２４０から現在時刻の変数Ｐ０の業務スケジュールを取得し、変数Ｓに記憶する。【００７５】
業務コンテキスト推定部２３１０は、業務エリア−位置情報対応表２２２０から、変数Ｓの業務エリア２２２１に対応する位置情報２２２２を取得する。取得した位置情報２２２２と変数Ｌを比較し、例えば、２つの経緯度情報が直線距離で所定値（例えば、１０ｍ）以内であるもしくは、無線ＬＡＮ識別子が同一であれば、登録されている業務スケジュールと端末１０００が計測した位置情報に矛盾がないと判定し、前記条件を満たさない場合は矛盾が生じていると判定する。【００７６】
業務スケジュールと端末１０００が計測した位置情報に矛盾が生じている場合、業務コンテキスト推定部２３１０は、位置情報−業務スケジュール矛盾解決部２３３０に処理を渡し、生じている矛盾を解決した推定業務コンテキストが返されるのを待ち、返された推定業務コンテキストを変数Ｃに記憶する。【００７７】
業務スケジュールと端末が計測した位置情報に矛盾が生じていない場合、ステップ２３１４に進み、変数Ｓの場所に対応する業務コンテキストを業務コンテキスト対応表から取得し、業務コンテキスト推定部２３１０は、取得した推定業務コンテキストを変数Ｃに記憶する。【００７８】
ステップ２３１５にて、業務コンテキスト推定部２３１０は、端末１０００から受け取った変数Ｐ０、日付、時間、変数Ｌ、管理装置２０００にて取得した変数Ｓ、ならびに、ステップ２３１４、もしくは位置情報−業務スケジュール矛盾解決部２３３０にて推定した変数Ｃの情報を行動履歴テーブル２２１０に追加する。【００７９】
ステップ２３１６にて、業務コンテキスト推定部２３１０は、推定した業務コンテキストである変数Ｃを端末１０００に送信し、業務コンテキスト推定部を終了する。【００８０】
業務コンテキスト推定部２３１０が、ユーザの業務コンテキストを推定する処理を、例を用いて説明する。【００８１】
例えば、図２Ａで示したように、日立太郎が７／２８の１０時に横浜第１ビル１Ｆにて業務アプリケーション３１００を起動した際日立太郎の端末は、所有者名：日立太郎、現在時刻：７／２８  １０時、位置情報として緯度・経度：ａａａ、ｂｂｂ  無線ＬＡＮ識別子：横浜第１ビル１Ｆを含んだ業務コンテキストの推定依頼を管理装置２０００に送信する。【００８２】
業務コンテキストの推定依頼を受信した管理装置２０００は、業務コンテキスト推定部２３１０を実行し、図１０のステップ２３１１にて端末１０００から送られてきた端末所有者名である日立太郎を変数Ｐ０に記憶し、端末の位置情報（緯度・経度：ａａａ、ｂｂｂ  無線ＬＡＮ識別子：横浜第１ビル１Ｆ）を変数Ｌに記憶する。【００８３】
ステップ２３１２にて、業務コンテキスト推定部２３１０は、業務スケジュールリスト２２４０から現在時刻（７／２８の１０時）に予定されている変数Ｐ０の業務スケジュール（レコード２２４５−２ｊ）を取得して変数Ｓに記憶する。【００８４】
ステップ２３１３にて、業務コンテキスト推定部２３１０は、変数Ｓに登録されている業務エリア情報と端末１０００の位置情報を記憶する変数Ｌを比較するにあたり、図６の業務エリア−位置情報対応表２２２０を用いて変数Ｌに記憶している位置情報を業務エリア情報に変換する。現在変数Ｌに記憶された緯度・経度：ａａａ、ｂｂｂは２２２２−１ａに、無線ＬＡＮ識別子：横浜第１ビル１Ｆは２２２２−２ａに合致するため、変数Ｌの業務エリアは建物名：横浜第１ビル  フロア：１Ｆと変換される。【００８５】
変数Ｓに登録された業務エリアと、変数Ｌの業務エリアが建物名もフロアも合致しないため、ステップ２３１３の判定は閾値を超えるとなりステップ２３３０に進む。ここで、閾値は、例えば、１０ｍや５０ｍ等に設定され、変数Ｓに登録されている業務エリア情報に対応する位置情報と、端末１０００の位置情報の差が閾値以内であれば、端末１０００はスケジュール通りの位置にいることになる。なお、上記閾値は、位置情報の差の他に、同一の無線ＬＡＮ識別子であれば閾値以内と判定しても良い。あるいは、端末１０００の位置情報と、変数Ｓに登録されている業務エリア情報に対応する位置情報が所定の範囲（例えば、１０ｍや５０ｍ等）内にあれば、同じ業務エリアであると判定してもよい。【００８６】
位置情報−業務スケジュール矛盾解決部２３３０にて、位置情報と業務スケジュールの矛盾を解決した業務コンテキストを「社内」と推定し、推定した業務コンテキスト「社内」を変数Ｃに記憶する。このとき、矛盾解決のために業務スケジュールを記憶する変数Ｓは、予定件名が「モバイル定例」、時間が「１０：００〜１１：００」、業務エリアの建物名が「横浜第１ビル」フロアが「１Ｆ」に、位置情報−業務スケジュール矛盾解決部２３３０によって変更される。位置情報−業務スケジュール矛盾解決部２３３０の業務コンテキストの推定手順や、業務スケジュールの変更手順などの詳細については後述する。【００８７】
また、ステップ２３１３にて位置情報の差が閾値以内と判定された場合は、ステップ２３１４に進み、業務コンテキスト対応表２２３０を用いて、変数Ｐ０と変数Ｓに記憶された業務エリア情報に対応する業務コンテキストを取得し、取得した業務コンテキストを変数Ｃに記憶させる。【００８８】
ステップ２３１５にて、業務コンテキストの推定依頼をした日立太郎の氏名を記憶する変数Ｐ０、現在の日付７／２８、時刻１０時、現在の業務スケジュールを記憶する変数Ｓの予定件名「モバイル定例」、現在の位置情報を記憶する変数Ｌ「緯度・経度：ａａａ、ｂｂｂ  無線ＬＡＮ識別子：横浜第１ビル１Ｆ」、業務コンテキスト「社内」、矛盾フラグ「１」の情報を行動履歴テーブル２２１０に追加する。【００８９】
最後にステップ２３１６にて、推定した業務コンテキスト「社内」を端末１０００に送信して業務コンテキスト推定部２３１０を終了する。【００９０】
このように業務コンテキスト推定部２３１０では、端末１０００から受信した位置情報と管理装置２０００が記憶している位置情報を用いて、ユーザの業務コンテキストを関連する人の業務コンテキストから推定し、端末１０００に推定業務コンテキストを送信する。【００９１】
次に、図１１Ａ、図１１Ｂに示すフローチャートを参照して、位置情報−業務スケジュール矛盾解決部２３３０が行う処理の流れを説明する。なお、図１１Ａは、位置情報−業務スケジュール矛盾解決部で行われる処理の一例を示すフローチャートの前半部であり、図１１Ｂは、位置情報−業務スケジュール矛盾解決部で行われる処理の一例を示すフローチャートの後半部である。【００９２】
位置情報−業務スケジュール矛盾解決部２３３０は、業務コンテキスト推定部２３１０のステップ２３１３にて、変数Ｓの業務エリア情報と変数Ｌに矛盾が生じていると判定された際に実行される処理であり、ユーザの近くに居る業務上関連する人の業務スケジュール情報を利用して矛盾の解消を行うための処理である。【００９３】
最初にステップ２３３０ａでは、位置情報−業務スケジュール矛盾解決部２３３０が、社員情報テーブル２２５０から変数Ｐ０と業務上関連する人を取得し、取得した集合を変数Ｐに記憶する。【００９４】
本発明における業務上関連する人とは、図３の社員情報テーブルにおいて、所属事業部２２５３、所属部２２５４、所属ＰＪ２２５５のうち、少なくとも１つが、上記ユーザと同じ人のことを示す。【００９５】
２３３０ｂにて、行動履歴テーブル２２１０から氏名２２１１が変数Ｐに記憶されている各値に一致する最新の行を変数Ｈに記憶する。【００９６】
２３３０ｃにて、変数Ｈの現在時刻から一定時間内、例えば１５分以内、である情報をＨ’に記憶する。【００９７】
２３３０ｄにて、変数Ｈ’のうちＬとの距離が一定以内、例えば距離が１０ｍ以内あるいは５０ｍ以内もしくは、無線ＬＡＮ識別子情報が同一などを満たす変数Ｈ’の情報を持つ人の氏名情報を変数Ｐ’に記憶する。【００９８】
２３３０ｅにて、位置情報−業務スケジュール矛盾解決部２３３０が、変数Ｐ’が空か否かを判断し、空であった場合にはステップ２３３０ｍへ、空でなかった場合にはステップ２３３０ｄへ処理を進める。【００９９】
２３３０ｆにて、位置情報−業務スケジュール矛盾解決部２３３０が、変数Ｐ’の中で少なくとも１人が現在時刻において業務スケジュールを登録しているか否かを判定する。変数Ｐ’のうち誰も業務スケジュールを登録していなかった場合はステップ２３３０ｊへ進み、変数Ｐ’のうち少なくとも１人は業務スケジュールを登録していた場合は、２３３０ｇへと処理を進める。【０１００】
ステップ２３３０ｇでは、位置情報−業務スケジュール矛盾解決部２３３０は、予定が登録されている変数Ｐ’のうち、最も業務関連度が高い人を判定し、変数Ｐ１に記憶する。ここで、業務関連度は、当実施例においては、例えば変数Ｐ０と変数Ｐ’の所属事業部、所属部、所属ＰＪの情報のうち、合致するものの個数で判断を行う。ただし、各情報に傾斜をつけたり、入社年度など他の情報を用いるなど、業務関連度の計算方法は前記に限定するものではない。【０１０１】
ステップ２３３０ｈにて、位置情報−業務スケジュール矛盾解決部２３３０は、変数Ｐ１に登録されている現在時刻の業務スケジュールを、Ｐ０が現在行っている業務スケジュールを記憶している変数Ｓに上書きする。【０１０２】
ステップ２３３０ｉにて、位置情報−業務スケジュール矛盾解決部２３３０は、業務コンテキスト対応表２２３０から変数Ｐ０と変数Ｓに登録されている業務エリア情報に対応する業務コンテキストを取得し、取得した業務コンテキストを変数Ｐ０の現在の推定業務コンテキストとする。このときの業務コンテキストを変数Ｃに記憶する。【０１０３】
ステップ２３３０ｆにて、変数Ｐ’のいずれにも業務スケジュールが登録されていなかった場合に実行される手順であるステップ２３３０ｊでは、例えば変数Ｐ’が持つ端末１０００に変数Ｐ０の本人確認画面を表示させ、変数Ｐ’のいずれかが本人確認画面上のボタンが押されるまで待つ。ステップ２３３０ｊは、本実施例で示す例であり、例えばＮＦＣやＢｌｕｅｔｏｏｔｈのような近接通信を用いて本人認証をする方法など、変数Ｐ０が端末使用者と同一であることを示す代替手段であれば良いものとする。【０１０４】
ステップ２３３０ｋにて、位置情報−業務スケジュール矛盾解決部２３３０は、変数Ｐ’が本人であると証明するボタンを押したか否かを判定する。本人であると証明するボタンが押下されなかった場合ステップ２３３０ｎへ、本人であると証明するボタンが押下された場合はステップ２３３０ｌへ進む。【０１０５】
ステップ２３３０ｌにて、位置情報−業務スケジュール矛盾解決部２３３０は、業務エリア位置情報対応表２２２０から変数Ｌに対応する業務エリアを取得し、取得した業務エリア情報を変数Ａに記憶する。例えば、変数Ｌに記憶されている位置情報が緯度・経度ｅｅｅ、ｆｆｆであり、無線ＬＡＮ識別子が東京第１ビルであった場合、緯度・経度情報は図６に示す業務エリア−位置情報対応表２２２０中のレコード２２２２−２ｃに対応し、無線ＬＡＮ識別子情報は２２２２−２ｃに対応するため、取得される業務エリア情報は、建物名２２２１−１が東京第１ビル、フロア２２２１−２が１Ｆとなる。【０１０６】
ステップ２３３０ｍにて、業務コンテキスト対応表２２３０から、変数Ｐ０、変数Ａに対応する業務コンテキストを取得し、変数Ｃに記憶する。例えば。変数Ｐ０に日立太郎が記憶され、変数Ａに建物名情報として東京第１ビル、フロア情報として１Ｆが記憶されていたとすると、図７に示す業務コンテキスト対応表２２３０において、変数Ｐ０はレコード２２３３ａ〜２２３３ｄの氏名２２３１に合致し、変数Ａはレコード２２３３ｃの建物名２２３２−１に合致するため、取り出される業務コンテキストは「他部署」（レコード２２３３ｃ）となる。【０１０７】
ステップ２３３０ｎにて、推定業務コンテキストを記憶する変数Ｃに「業務外」を記憶させる。【０１０８】
ステップ２３３０ｏにて、推定業務コンテキストを記憶する変数Ｃに「不明」を記憶させる。【０１０９】
位置情報−業務スケジュール矛盾解決部２３３０が、ユーザの位置情報と業務スケジュールに矛盾が生じている場合に、矛盾を解決し業務コンテキストを推定する手順を、例を用いて説明する。【０１１０】
図２Ａで示したように、日立太郎が７／２８の１０時に横浜第１ビル１Ｆにて業務アプリケーション３１００を起動したことを想定して以下に説明する。そのため、前提として位置情報−業務スケジュール矛盾解決部２３３０が実行される以前に、ユーザ名を記憶する変数Ｐ０には日立太郎が、ユーザの位置情報を記憶する変数Ｌには緯度・経度：ａａａ、ｂｂｂ  無線ＬＡＮ識別子：横浜第１ビル１Ｆが、ユーザの業務スケジュールを記憶する変数Ｓには、図４に示した業務スケジュールリスト２２４０内のレコード２２４５−２ｊが記憶されているものとする。【０１１１】
図１０のステップ２３１３にて変数Ｓの業務エリア情報と変数Ｌの位置情報の差が閾値を超えると判定された場合に、図１１に示す位置情報−業務スケジュール矛盾解決部２３３０が実行される。【０１１２】
ステップ２３３０ａでは、社員情報テーブル２２５０から変数Ｐ０に記憶された「日立太郎」に対応するレコード２２５５ａの所属事業部２２５３が「横浜事業部」、所属部２２５４が「第１開発部」、所属ＰＪ２２５５が「全社モバイル」を取得する。次に、取得した所属事業部、所属部、所属ＰＪのうち、少なくとも１つは同じ人を社員情報テーブル２２５０から取得し、変数Pに記憶する。このとき、時変数Ｐに記憶されるのは、所属事業部、所属部、所属ＰＪの全てが一致する日立次郎（レコード２２５５ｂ）と、所属ＰＪが一致する日立三郎（レコード２２５５ｃ）の２つである。【０１１３】
ステップ２２３０ｂでは、図５の行動履歴テーブル２２１０から氏名２２１１が変数Ｐに記憶されている「日立次郎」と一致する最新の行と、「日立三郎」と一致する最新の行を変数Ｈに記憶する。図５に示す行動履歴テーブル２２１０から実際に取り出される列は、「日立次郎」と一致する最新の行として２２１７ｉと、「日立三郎」と一致する最新の行として２２１７ｊが取得されて変数Ｈに記憶される。【０１１４】
ステップ２３３０ｃでは、変数Ｈに記憶された情報の中で、現在時刻１０時から１５分以内の情報を取得し、変数Ｈ’に記憶する。この場合、日立次郎の情報（レコード２２１７ｉ）は登録された時刻が９時００分であるため該当せず、日立三郎の情報（レコード２２１７ｊ）のみがＨ’に記憶される。【０１１５】
ステップ２３３０ｄではまず、変数Ｈ’が持つ位置情報と変数Ｌを比較する。変数Ｈ’が持つ位置情報は緯度・経度２２１５−１にａａａ、ｂｂｂ  無線ＬＡＮ識別子２２１５−２に横浜第１ビル１Ｆが記憶され、変数Ｌには、緯度・経度：ａａａ、ｂｂｂ  無線ＬＡＮ識別子：横浜第１ビル１Ｆが記憶されている。これらより、変数Ｈ’が持つ位置情報と変数Ｌが一致するため、位置情報−業務スケジュール矛盾解決部２３３０は、変数Ｌの近くにいる人を日立三郎と判定し、変数Ｐ’に日立三郎を記憶する。【０１１６】
ステップ２３３０ｅでは、変数Ｐ’が空であるか否かを判定する。今回は変数Ｐ’に日立三郎が記憶されているため、次のステップとして２３３０ｆが実行される。【０１１７】
ステップ２３３０ｆでは、現在時刻において変数Ｐ’に記憶されているユーザに業務スケジュールが登録されているか否かを判定する。図４に示す業務スケジュールリスト２２４０から、氏名：日立三郎  日付：２０１２／７／２８  時間：１０：００に合致する業務スケジュールを取得する。この時合致するものがなかった場合はステップ２３３０ｊが実行されるが、今回は図４のレコード２２４５−２ｌの業務スケジュールが合致するため、ステップ２３３０ｇが次に実行される。【０１１８】
ステップ２３３０ｇでは、現在時刻において業務スケジュールが登録されている変数Ｐ’のうち、最も業務関連度の高い人を取得し、変数Ｐ１に記憶する。本実施例における業務関連度とは、変数Ｐ０と変数Ｐ’の所属事業部、所属部、所属ＰＪの情報のうち、合致するものの個数で判断を行うものとするため、変数Ｐ’に登録されている全てのメンバの業務関連度を算出する。今回は変数Ｐ’に日立三郎しか記憶されていないため日立三郎だけの業務関連度を算出する。日立三郎は所属ＰＪのみが合致するため、業務関連度は「１」と判定される。また、今回の例示では変数Ｐ’に記憶されているユーザ数が１人であるため、最も業務関連度が高い人は日立三郎となり、最も業務関連度が高い人を記憶する変数Ｐ１に日立三郎を記憶する。【０１１９】
ステップ２３３０ｈでは、変数Ｐ１に記憶された日立三郎の現在の業務スケジュールを業務スケジュールリストから取得し、ユーザの業務スケジュールを記憶する変数Ｓに変数Ｐ１の業務スケジュールを記憶する。現在のＰ１の業務スケジュールはステップ２３３０ｆで行った方法と同じ手法にて取得するため手順は省略する。取得された業務スケジュール情報は、図４中のレコード２２４５−２ｋとなり、これを変数Ｓに記憶させる。【０１２０】
ステップ２３３０ｉにて、図７に示した業務コンテキスト対応表２２３０から、変数Ｓに記憶された業務エリア情報に対応する業務コンテキストを取得する。現在変数Sに記憶された業務エリアは図４に示される業務スケジュールリスト２２４０中の２２４５−２ｋが入っているので、建物名：横浜第１ビル  フロア：１Ｆが記憶されている。図７に示された業務コンテキスト対応表２２３０から、変数Ｐ０に記憶された日立太郎と前述した業務エリアに対応する業務コンテキストは社内（レコード２２３３ａ）となり、変数Ｐ０の推定業務コンテキストを「社内」とする。【０１２１】
位置情報−業務スケジュール矛盾解決部２３３０は前記のステップ（２３３０ｇ、もしくは２３３０ｋ、２３３０ｌ、２３３０ｍのいずれか）により業務コンテキストが推定され、ユーザの登録されていた業務スケジュールの業務エリア情報と端末の位置情報に生じていた矛盾を解決している。【０１２２】
本実施例ではこれまでに説明したように、矛盾解決を行うユーザの近くに業務上関連する人がいた場合に、業務スケジュールと端末の位置情報との間に生じる矛盾を解消し、ユーザの利便性を損なわずに厳密なアクセス制御を可能とする。【０１２３】
すなわち、端末１０００のユーザと業務上関連する人で、かつ、ユーザの所有する端末１０００との位置情報が近い端末１０００を所有する人に登録された業務スケジュールを当該ユーザの業務スケジュールとみなし、この業務スケジュール情報から業務コンテキストを推定することで、ユーザが保持する端末が計測した位置情報と登録されたスケジュール情報の間に生じていた矛盾を解決することができるのである。【０１２４】
なお、上記第１の実施例では、業務コンテキストを管理装置２０００で推定する例を示したが、管理装置２０００は推定した業務コンテキストに基づいて適用ポリシを決定し、端末１０００に適用ポリシを通知しても良い。
【実施例２】
【０１２５】
実施例１では、業務上関連する人が同時刻に近く（位置情報の差が閾値以内または無線ＬＡＮ識別子が同一）にいる場合に有効なアクセス制御手法であったが、本実施例では業務上関連する人の過去の行動を利用することでユーザの利便性を損なわずアクセス制御を実現する例を説明する。【０１２６】
本実施例で例示するアクセス制御システムの構成を図１２に示す。【０１２７】
図１２は実施例１のシステム構成図である図１と類似しているが、図１と異なる点は、管理装置２０００内の主記憶装置２３００に読み込まれている位置情報−業務スケジュール矛盾解決部２３３１である。図１で示す位置情報−業務スケジュール矛盾解決部２３３０とは処理が異なる。その他の構成については、前記第１の実施例と同様である。【０１２８】
図１３に示すフローチャートを参照して、位置情報−業務スケジュール矛盾解決部２３３１が行う処理の流れを説明する。【０１２９】
位置情報−業務スケジュール矛盾解決部２３３１は、業務コンテキスト推定部２３１０の処理のステップ２３１３にて、変数Ｓの業務エリア情報と変数Ｌに矛盾が生じていると判定された際に実行される処理であり、ユーザの近くに居る業務上関連する人の行動履歴情報を利用して矛盾の解消を行うための処理である。【０１３０】
位置情報−業務スケジュール矛盾解決部２３３１が呼ばれると、最初にステップ２３３１ａが実行される。【０１３１】
ステップ２３３１ａでは、社員情報テーブル２２５０から、ユーザ名と業務上関連度がある人の氏名情報を取得し、変数Ｐに記憶する。業務上関連する人とは実施例１と同様に、所属事業部、所属部、所属ＰＪのうち１つ以上が合致するユーザとする。【０１３２】
ステップ２３３１ｂでは、位置情報−業務スケジュール矛盾解決部２３３１が、行動履歴テーブル２２１０からユーザの現在の位置情報の変化パターンと類似している変数Ｐに記憶されるユーザの過去の位置情報の変化パターンを検索する。そして、類似している位置情報の変化パターンを持つ行動履歴情報を変数Ｈに記憶する。位置情報の変化パターンの類似を検索する方法は、例えば本実施例においてはユーザの直近３回分の位置情報の変化パターンと同一の変化パターンを持つユーザを探すものとする。【０１３３】
ステップ２３３１ｃにて、変数Ｈが空か否かを判定する。空であった場合はステップ２３３１ｆへ進み、空でなかった場合はステップ２３３１ｄへと処理を進める。【０１３４】
変数Ｈが空でなく、ステップ２３３１ｄへ進んだ場合、変数Ｈの中で一番最近の履歴を変数Ｈ１に記憶し、変数Ｈ１の行動を行っていたユーザの氏名を変数Ｐ１に記憶する。【０１３５】
ステップ２３３１ｅにて、変数Ｈ１にいた時に変数Ｐ１に適用されていた業務コンテキストを変数Ｐ０の業務コンテキストと推定し、推定した業務コンテキストを変数Ｃに記憶する。【０１３６】
変数Ｈが空であり、位置情報−業務スケジュール矛盾解決部２３３１がステップ２３３１ｆへ進んだ場合、業務コンテキストを「業務外」と推定し、推定した業務コンテキストを記憶する変数Ｃに「業務外」を記憶する。【０１３７】
上述のような処理を行う位置情報−業務スケジュール矛盾解決部２３３１が、ユーザの位置情報と業務スケジュールに矛盾が生じている場合に、矛盾を解決し業務コンテキストを推定する手順を、例を用いて説明する。【０１３８】
日立太郎が７／２８の９時５０分より横浜第１ビル１Ｆにおり、１０時に業務アプリケーション３１００の起動要求をしたことを想定して記述する。そのため、前提として位置情報−業務スケジュール矛盾解決部２３３１が実行される以前に、ユーザ名を記憶する変数Ｐ０には日立太郎が、ユーザの位置情報を記憶する変数Ｌには緯度・経度：ａａａ、ｂｂｂ  無線ＬＡＮ識別子：横浜第１ビル１Ｆが、ユーザの業務スケジュールを記憶する変数Ｓには、図４に示した業務スケジュールリスト２２４０内のレコード２２４５−２ｊが記憶されているものとする。【０１３９】
図１０のステップ２３１３にて変数Ｓの業務エリア情報と変数Ｌの位置情報の差が閾値を超えると判定された場合に図１１に示す位置情報−業務スケジュール矛盾解決部２３３１が実行される。【０１４０】
位置情報−業務スケジュール矛盾解決部２３３１が呼び出されると、最初にステップ２３３１ａを実行する。【０１４１】
ステップ２３３１ａでは、社員情報テーブル２２５０から変数Ｐ０に記憶された「日立太郎」に対応する所属事業部２２５３が「横浜事業部」、所属部２２５４が「第１開発部」、所属ＰＪ２２５５が「全社モバイル」を取得する。次に、取得した所属事業部、所属部、所属ＰＪのうち、少なくとも１つは一致する人を社員情報テーブル２２５０から取得し、変数Ｐに記憶する。この時変数Ｐに記憶されるのは、所属事業部、所属部、所属ＰＪの全てが一致する日立次郎（レコード２２５５ｂ）と、所属ＰＪが一致する日立三郎（レコード２２５５ｃ）の２つである。【０１４２】
ステップ２３３１ｂでは、行動履歴テーブル２２１０の中から現在のユーザの位置情報変化パターンと類似するものを取得するが、ユーザの位置情報の変化パターンは、９時５０分、９時５５分、１０時と３回連続して計測された位置情報は緯度・経度：ａａａ、ｂｂｂ  無線ＬＡＮ識別子：横浜第１ビル１Ｆであった。図５に示す行動履歴テーブル２２１０の中から３回連続して位置情報が緯度・経度：ａａａ、ｂｂｂ  無線ＬＡＮ識別子：横浜第１ビル１Ｆを計測したのは、日立次郎の２２１７ｂ、２２１７ｄ、２２１７ｆのみである。よって、ユーザの行動パターンに類似した行動履歴として変数Ｈにレコード２２１７ｂ、２２１７ｄ、２２１７ｆの行動履歴を記憶する。【０１４３】
ステップ２３３１ｃにて、変数Ｈが空か否かを判定するが、今回の例では変数Ｈに日立次郎の行動履歴が記憶されているので、変数Ｈは空ではないと判定しステップ２３３１ｄに進む。【０１４４】
ステップ２３３１ｄでは、位置情報−業務スケジュール矛盾解決部２３３１が、変数Ｈに記憶される行動履歴情報の中で、一番新しい履歴を変数Ｈ１に記憶させ、また、変数Ｈ１に記憶される行動を行ったユーザ名を変数Ｐ１に記憶する。ただし、今回の例では変数Ｈに１つしか情報が入っていないので変数Ｈ１には、図５に示す行動履歴テーブル２２１０中のレコード２２１７ｂ、２２１７ｄ、２２１７ｆの値を記憶させ、変数Ｈ１の行動を行った日立次郎を変数Ｐ１に記憶する。【０１４５】
ステップ２３３１ｅにて、位置情報−業務スケジュール矛盾解決部２３３１は、変数Ｈ１に記憶される行動をしていた際の変数Ｐ１に記憶されている日立次郎に適用されていた業務コンテキストを、変数Ｐ０の業務コンテキストと推定する。今回の例において変数Ｈ１に記憶されている業務コンテキストは「社内」（レコード２２１７ｆ）であるので、変数Ｐ０の業務コンテキストを「社内」と推定し、推定業務コンテキストを記憶する変数Ｃに「社内」を記憶させる。【０１４６】
以上、説明したように本実施例では、業務スケジュールリスト２２４０と端末の位置情報との間に矛盾が生じた際に、矛盾の解消を行うユーザと類似した、過去の行動履歴を持つ業務上関連する人の情報を用いることにより、ユーザの利便性を低下させずに厳密なアクセス制御を実現する。【０１４７】
すなわち、ユーザと業務上関連する人の過去の行動履歴の中から、現在のユーザの位置情報の変化パターンに類似している他人の変化のパターンを検索し、該当する過去の行動履歴を行っている人に適用されていた業務コンテキストを、当該ユーザの業務コンテキストと推定する。これにより、ユーザが保持する端末が計測した位置情報と登録されたスケジュール情報の間に生じていた矛盾を解決することが可能となる。
【実施例３】
【０１４８】
本実施例は、これまでに説明した実施例１、２とは異なり、業務スケジュールと端末１０００の位置情報と、業務スケジュールとの間に生じた矛盾を、過去の矛盾履歴として記録しておき、過去の矛盾履歴を用いて現在の業務スケジュールと端末１０００の位置情報との間に生じた矛盾を解決し、厳密なアクセス制御を実現する手法である。【０１４９】
本実施例で例示する計算機システムの構成図を図１４に示す。本実施例の構成も、実施例１、ならびに実施例２に類似している。アクセス制御システムの構成が異なる点として、図１４中の管理装置２０００内にある補助記憶装置２２００に記憶されるデータ構造として矛盾履歴テーブル２２６０が追加されている点、ならびに本実施例でも管理装置２０００内にある主記憶装置２３００内にて実行される位置情報−業務スケジュール矛盾解決部２３３２を保持するが、実施例１や実施例２で利用した位置情報−業務スケジュール矛盾解決部（図１中の２３３０、図１３中の２３３１）とは処理内容が異なる点である。【０１５０】
図１６は本実施例にて、過去同じスケジュール名でユーザが参加した業務スケジュールに生じていた過去の矛盾情報を取得するために用いる矛盾履歴テーブル２２６０のデータ構造を例示した図である。図１６にて示すように、矛盾履歴テーブル２２６０は、業務スケジュールが実行された日付を記憶する日付２２６１、実行された業務スケジュール件名を記憶するスケジュール名２２６２、実行された業務スケジュールに参加予定者として登録されていた人の名前を記憶する参加予定者２２６３、実行された業務スケジュールにどの様な矛盾が生じていたかを記憶する矛盾種別２２６４、矛盾が生じている時間の長さを記憶する矛盾時間２２６５にて構成される。【０１５１】
図１６に示す矛盾履歴テーブル２２６０は、同じ業務スケジュールにて生じた矛盾の履歴を取得するために用いる。例えば、日立太郎が参加するモバイル定例というスケジュールの過去の矛盾は、同図２２６５ａ、２２６５ｂ、２２６５ｃを含む３つの行が保持する情報である。また、同図２２６５ａに示す行では、「２０１２／７／７」に行われた「モバイル定例」という業務スケジュールは３０分延長されたことを示している。【０１５２】
図１５Ａ、図１５Ｂ、図１５Ｃに示すフローチャートを参照して、位置情報−業務スケジュール矛盾解決部２３３２が行う処理の一例を説明する。なお、図１５Ａはフローチャートの前半部、図１５Ｂはフローチャートの中盤部、図１５Ｃがフローチャートの後半部である。【０１５３】
位置情報−業務スケジュール矛盾解決部２３３２は、業務コンテキスト推定部２３１０のステップ２３１３にて、変数Ｓの業務エリア情報と変数Ｌに矛盾が生じていると判定された際に実行される処理であり、過去の業務スケジュールに生じた矛盾の履歴情報を用いて現在生じている矛盾の解決を行うための処理である。【０１５４】
位置情報−業務スケジュール矛盾解決部２３３２が呼ばれると、最初にステップ２３３２ａが実行される。【０１５５】
ステップ２３３２ａでは、位置情報−業務スケジュール矛盾解決部２３３２が、変数Ｌと、直前に予定されていた業務スケジュールリスト２２４０の業務エリア２２４５が一致するか否かを判定する。本実施例においては、直前に予定されていた業務スケジュールとは、既に完了している業務スケジュールの中で、予定終了時間が最も現在時刻に近いものとする。【０１５６】
この時、変数Ｌと業務スケジュールリスト２２４０の業務エリア２２４５を比較するために、実施例１でも利用した図６に示す業務エリア−位置情報対応表２２２０を用いる。位置情報と業務エリア２２４５の一致判定は、前記第１の実施例の図１０にて示した業務コンテキスト推定部２３１０中のステップ２３１３の判定と同様に行うものとする。このステップ２３３２ａにて一致すると判定された場合はステップ２３３２ｂが次に実行され、一致しないと判定された場合はステップ２３３２ａ’が実行される。【０１５７】
ステップ２３３２ａにて場所が一致すると判定された場合は、ステップ２３３２ｂにて矛盾種別に「延長」を、矛盾時間に直前のスケジュールの終了時間から現在時刻までの時間を分単位で記憶し、ステップ２３３２ｃに進む。この場合、会議などが長引いて、場所が同じで予定の終了時刻を越えたため、「延長」を設定する。【０１５８】
ステップ２３３２ｃでは、矛盾履歴テーブル２２６０から一定期間内、例えば１ヶ月以内の矛盾履歴かつ、同テーブル内の参加予定者２２６３に変数Ｐ０に記憶されている氏名が含まれる情報かつ、同テーブル内のスケジュール名２２６２が直前に予定されていた業務スケジュールの件名と一致する情報を変数Ｈに記憶する。変 数Ｐ０には、図１０で示した業務コンテキスト推定部２３１０内にて業務コンテキストの推定依頼を行ったユーザの氏名情報が記憶されているものとする。【０１５９】
ステップ２３３２ａにて場所が一致しないと判定された場合は、ステップ２３３２ａ’にて、変数Ｌと直後に予定されている業務スケジュールリスト２２４０の業務エリア２２４５が一致するか否かを判定する。本実施例において直後に予定されていた業務スケジュールとは、今後予定されている業務スケジュールの中で、予定開始時刻が最も現在時刻に近いものとする。この比較もステップ２３３２ａの判定と同様に行うものとする。このステップ２３３２ａ’にて、現在の位置情報と業務スケジュールリスト２２４０の直後の業務エリア２２４５が一致すると判定された場合は、ステップ２３３２ｂ’が次に実行され、一致しないと判定された場合はステップ２３３２ｑが実行される。【０１６０】
ステップ２３３２ａ’にて場所が一致すると判定された場合は、ステップ２３３２ｂ’にて矛盾種別に「前倒し」を、矛盾時間に現在時刻から直後のスケジュールの開始時間までの時間を分単位で記憶し、ステップ２３３２ｃ’に進む。【０１６１】
ステップ２３３２ｃ’では、矛盾履歴テーブル２２６０から一定期間内、例えば１ヶ月以内の矛盾履歴かつ、同テーブル内の参加予定者２２６３に変数Ｐ０の氏名が含まれる情報かつ、同テーブル内のスケジュール名２２６２が直後に予定されている業務スケジュールの件名と一致する情報を変数Ｈに記憶する。【０１６２】
ステップ２３３２ｃもしくは、ステップ２３３２ｃ’のステップが完了するとステップ２３３２ｄに処理が移る。ステップ２３３２ｄでは、位置情報−業務スケジュール矛盾解決部２３３２が、変数Ｈの中身が空であるか否かを判断する。変数Ｈの中身が空でない場合はステップ２３３２ｅに進み、空であった場合はステップ２３３２ｊに進む。【０１６３】
ステップ２３３３２ｅでは、位置情報−業務スケジュール矛盾解決部２３３２が、変数Ｈから直近３回分の情報を取得し、それらを変数Ｈ０、変数Ｈ１、変数Ｈ２に記憶させる。【０１６４】
ステップ２３３２ｆでは２３３２ｂもしくは２３３２ｂ’にて算出した矛盾時間が変数Ｈ０、変数Ｈ１、変数Ｈ２の３つの平均矛盾時間よりも小さいか比較する。小さいと判定された場合はステップ２３３２ｇに進み、大きいと判定された場合ステップ２３３２ｊへと進む。【０１６５】
ステップ２３３２ｆにて現在の矛盾時間が過去直近３回分の矛盾時間の平均値よりも小さいと判定された場合にステップ２３３２ｇにて、現在の矛盾種別が延長か否かを判定する。矛盾種別が延長である場合はステップ２３３２ｈへ、延長でない場合はステップ２３３２ｈ’に処理をすすめる。【０１６６】
ステップ２３３２ｈでは、位置情報−業務スケジュール矛盾解決部２３３２が、ユーザが直前に行っていた業務スケジュールを現在の業務スケジュールを記憶する変数Ｓに記憶する。【０１６７】
ステップ２３３２ｈ’では、位置情報−業務スケジュール矛盾解決部２３３２が、ユーザが直後に行う予定の業務スケジュールを現在の業務スケジュールを記憶する変数Ｓに記憶する。【０１６８】
ステップ２３３２ｉでは、位置情報−業務スケジュール矛盾解決部２３３２が、ステップ２３３２ｈ、もしくはステップ２３３２ｈ’にて上書きされた変数Ｓ内の業務エリア情報に対応する業務コンテキストを業務コンテキスト対応表２２３０から取得し、それを推定業務コンテキストとして変数Ｃに記憶する。【０１６９】
ステップ２３３２ｊにて、位置情報−業務スケジュール矛盾解決部２３３２が、現在の日付、変数Ｓ内の予定件名、変数Ｐ０、矛盾種別、矛盾時間を矛盾履歴テーブル２２６０に追加する。【０１７０】
ステップ２３３２ｄにて変数Ｈが空である、もしくはステップ２３３２ｆにて現在の矛盾時間が過去直近３回分の矛盾時間の平均よりも大きいと判定された場合、ステップ２３３２ｋに処理が進む。【０１７１】
ステップ２３３２ｋにて、業務エリア位置情報対応表２２２０からユーザの位置情報を記憶している変数Ｌに対応する業務エリアを取得する。取得した業務エリア情報を変数Ａに記憶する。【０１７２】
ステップ２３３２ｌにて、業務コンテキスト対応表２２３０から変数Ｐ０と変数Ａに対応する業務コンテキストを取得する。【０１７３】
ステップ２３３２ｍにて、承認者が所有する端末の画面にステップ２３３２ｌにて推定した業務コンテキストと承認ボタン、非承認ボタンを表示させ、いずれかのボタンが押されるまで処理を停止する。承認者がいずれかのボタンを押すと、処理をステップ２３３２ｎへと進める。本実施例において承認者とは、例えば所属部の部長など、業務で関連し、かつ業務上権限を持つ人のことと定義する。【０１７４】
ステップ２３３２ｎでは、ステップ２３３２ｌで推定した業務コンテキストを承認者が承認ボタンを押したか否かを判定する。承認ボタンが押された場合はステップ２３３２ｏへ、非承認ボタンが押された場合はステップ２３３２ｐへと処理を進める。【０１７５】
承認ボタンが押された場合は、ステップ２３３２ｌで推定した業務コンテキストをユーザに適用して良いと判断し、推定業務コンテキストを記憶する変数Ｃにステップ２３３２ｌで推定した業務コンテキストを記憶する。【０１７６】
非承認ボタンが押された場合は、ステップ２３３２ｐにて、ユーザは現在業務中ではないと判断し、業務コンテキストを記憶する変数Ｃに業務外を記憶する。【０１７７】
ステップ２３３２ａ’にて場所が一致しないと判定された場合は、ステップ２３３２ｑに進み、業務コンテキストを記憶する変数Ｃに不明を記憶する。【０１７８】
上述のような処理を行う位置情報−業務スケジュール矛盾解決部２３３２が、ユーザの位置情報と業務スケジュールに矛盾が生じている場合に、矛盾を解決し業務コンテキストを推定する手順を、例を用いて説明する。【０１７９】
図２Ａの例示は、図４に示す業務スケジュールリスト２２４０にて、日立太郎が７／２１の１０時から１１時まで横浜第１ビルにて行われたモバイル定例会議（レコード２２４５−２ｇ）に参加したものとする。また、この会議は定刻通り開始され、予定時間を１５分延長して終了したものとし、日立太郎は会議終了間際の１１時１５分に端末上のアプリケーションを起動しようとしたものとする。前提として位置情報−業務スケジュール矛盾解決部２３３２が実行される以前に、ユーザ名を記憶する変数Ｐ０には日立太郎が、ユーザの位置情報を記憶する変数Ｌには緯度・経度：ａａａ、ｂｂｂ  無線ＬＡＮ識別子：横浜第１ビル１Ｆが記憶されているものとする。【０１８０】
図１０のステップ２３１３にて変数Ｓの業務エリア情報と変数Ｌの位置情報の差が閾値を超えると判定された場合に図１１に示す位置情報−業務スケジュール矛盾解決部２３３２が実行される。【０１８１】
位置情報−業務スケジュール矛盾解決部２３３２が呼び出されると、最初にステップ２３３２ａを実行する。【０１８２】
ステップ２３３２ａでは、変数Ｌと直前の業務スケジュールの場所が一致するか否かを判定する。この場合の直前の業務スケジュールとは、既に完了している業務スケジュールの中で、予定終了時間が最も現在時刻に近いものであるため、図４に示される２２４５−２ｇの行に示される業務スケジュールとなる。業務スケジュールリスト２２４０が保持する業務エリア２２４５と、端末１０００が取得した位置情報を比較する詳細は、図１０に示す業務コンテキスト推定部２３１０中のステップ２３１３にて使用した手法を採用する。今回の例では、実施例１で述べた手法にて業務エリア情報と位置情報を比較すると一致するため、図１５Ａのステップ２３３２ｂへと処理をすすめる。【０１８３】
ステップ２３３２ｂでは矛盾種別を「延長」と記憶し、直前の業務スケジュールが保持する時間情報２２４４ｇと現在時刻を用いて矛盾時間を算出する。具体的には、２２４４ｇにて記憶されている業務スケジュールの終了時間が１１時であり、現在時刻が１１時１５分であるため、矛盾時間は１５分と算出される。【０１８４】
ステップ２３３２ｃでは、図１６に示す矛盾履歴テーブル２２６０を参照し、現在日時から１ヶ月以内の履歴かつ、参加予定者に変数Ｐ０が含まれており、スケジュール名が直前に行っていた業務スケジュールの件名である「モバイル定例」２２４２ｇと合致する情報を取得し変数Ｈに記憶する。今回の例では、図１６中のレコード２２６５ａ、２２６５ｂ、２２６５ｃの３つの行が示す情報が変数Ｈに記憶される。【０１８５】
ステップ２３３２ｄにて、変数Ｈが空か否かを判定する。上述したように本例示においては、変数Ｈに３つの情報が記憶されているため、空ではないと判定され、処理をステップ２３３２ｅに進める。【０１８６】
ステップ２３３２ｅでは、変数Ｈに記憶されている情報の中で、直近３つの情報をそれぞれ変数Ｈ０、変数Ｈ１、変数Ｈ２に記憶させる。【０１８７】
ステップ２３３２ｆでは、ステップ２３３２ｂにて算出した矛盾時間が変数Ｈ０、変数Ｈ１、変数Ｈ２の３つの平均した矛盾時間よりも小さいか否かを判定する。この例示では変数Ｈ０に「３０」、変数Ｈ１に「２０」、変数Ｈ２に「３０」が記憶されているので、３つの変数の平均は、２６分４０秒であり、ステップ２３３２ｂにて算出した矛盾時間には「１５」が記憶されているため、本ステップの判定は、矛盾時間が変数Ｈ０、変数Ｈ１、変数Ｈ２の平均よりも小さいと判定され、処理を２２３２ｇへと進める。【０１８８】
ステップ２３３２ｇでは、現在の矛盾種別が「延長」であるか否かを判定する。この例示ではステップ２３３２ｂにて矛盾種別が「延長」であると記憶されているため、判定は「延長」であり、ステップ２３３２ｈへと処理をすすめる。【０１８９】
ステップ２３３２ｈでは、ここまでの処理から直前に行っていた業務スケジュールが現在まで延長していると判断し、現在のユーザの業務スケジュールを記憶する変数Ｓに直前の業務スケジュールを記憶する。具体的には、変数Ｓに、図４に示す業務スケジュールリスト２２４０中の、２２４５−２ｇを含む行の情報を記憶する。【０１９０】
ステップ２３３２ｉでは、ユーザを記憶する変数Ｐ０と変数Ｓに記憶されている業務エリア情報と図７に示す業務コンテキスト対応表２２３０から業務コンテキストの推定を行う。今回の例では、変数Ｐ０に日立太郎が記憶され、変数Ｓの業務エリア情報は、建物名に横浜第１ビル２２４５−１ｇ、フロアに１Ｆ２２４５−２ｇが記憶されているため、図７に示される業務コンテキスト対応表２２３０内にて対応する業務コンテキストは社内（レコード２２３３ａ）となり、現在の変数Ｐ０の業務コンテキストを社内と推定し、推定業務コンテキストを記憶する変数Ｃに「社内」を記憶する。【０１９１】
最後にステップ２３３２ｊにて、現在の日付、現在行っていると推定した業務スケジュール名、変数Ｐ０、矛盾種別、矛盾時間を矛盾履歴テーブル２２６０に追加する。今回の例では、現在の日付として「２０１２／７／２１」、現在行っていると推定した業務スケジュール名として「モバイル定例」、予定者として変数Ｐ０に記憶されている「日立太郎」、矛盾種別としてステップ２３３２ｂにて記憶した「延長」、矛盾時間としてステップ２３３２ｂにて算出した「１５」を追加する。【０１９２】
以上、説明したように本実施例では、直前もしくは直後に予定されている業務スケジュールが「前倒し」もしくは「延長」していることによる業務スケジュールと端末１０００の位置情報との矛盾を、過去に生じた矛盾を記憶した矛盾履歴テーブル２２６０を用いて解消することにより、ユーザの利便性を低下させずに厳密なアクセス制御を実現する。【０１９３】
すなわち、ユーザが保持する端末１０００が計測する位置情報と、登録されたスケジュール情報の間に生じた過去の矛盾を矛盾履歴テーブル２２６０に蓄積し、現在生じている矛盾が過去に起きた矛盾の傾向と類似または一致していれば、過去に生じた矛盾の種別とスケジュール名を取得し、スケジュール名に対応する業務コンテキストをユーザの業務コンテキストとして推定することができる。【０１９４】
なお、本発明は前記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、前記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、またある実施例の構成に他の実施例の構成を加えることも可能である。例えば、実施例１と実施例２を組み合わせて利用することも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【図１Ａ】
2014068792.tif 000003
【図１Ｂ】
2014068792.tif 000004
【図２Ａ】
2014068792.tif 000005
【図２Ｂ】
2014068792.tif 000006
【図３】
2014068792.tif 000007
【図４】
2014068792.tif 000008
【図５】
2014068792.tif 000009
【図６】
2014068792.tif 000010
【図７】
2014068792.tif 000011
【図８】
2014068792.tif 000012
【図９】
2014068792.tif 000013
【図１０】
2014068792.tif 000014
【図１１Ａ】
2014068792.tif 000015
【図１１Ｂ】
2014068792.tif 000016
【図１２】
2014068792.tif 000017
【図１３】
2014068792.tif 000018
【図１４】
2014068792.tif 000019
【図１５Ａ】
2014068792.tif 000020
【図１５Ｂ】
2014068792.tif 000021
【図１５Ｃ】
2014068792.tif 000022
【図１６】
2014068792.tif 000023
【国際調査報告】
2014068792.tif 000024
2014068792.tif 000025
2014068792.tif 000026
2014068792.tif 000027