(57)【要約】【課題】ユーザ間で共有されたデータが、サービス提供装置の認可情報で許可されていない場合であっても、共有されたデータを検索することができる情報処理システムを提供する。【解決手段】中継サーバ１０２が、データを共有する通知を受けた情報処理装置１０４が取得した共有データ情報を登録する。中継サーバ１０２が、画像形成装置１０１を操作するユーザを認証する。中継サーバ１０２が、画像形成装置１０１からのデータの検索要求に応じて、上記認証されたユーザに対応する認可情報に基づいて、ストレージサーバ１０３にアクセスし、データを検索する第１の検索処理と、上記登録された共有データ情報を参照してデータを検索する第２の検索処理とを実行する。そして、画像形成装置１０１が、データの検索結果を表示する。【選択図】図１
2020098460.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してサービスを提供するサービス提供装置の認可情報を保持する保持手段と、
データを共有する通知を受けたデバイスが取得した、当該データを共有するために用いられる共有データ情報を登録する登録手段と、
デバイスを操作するユーザを認証する認証手段と、
前記認証されたユーザが操作するデバイスからのデータの検索要求に応じて、当該データを検索する制御手段と、
前記制御手段による前記データの検索結果を表示する表示手段と、を有し、
前記制御手段は、前記認証されたユーザに対応する前記認可情報に基づいて、前記サービス提供装置にアクセスし、前記データを検索する第１の検索処理と、前記登録された共有データ情報を参照して前記データを検索する第２の検索処理とを実行する
ことを特徴とする情報処理システム。
【請求項２】
前記登録手段は、ユーザごとに前記共有データ情報を登録し、
前記制御手段は、前記認証されたユーザに対応する前記共有データ情報を参照して、前記第２の検索処理を実行する
ことを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記制御手段によって検索されたデータと前記共有データ情報とを比較することで、前記データが変更されているかを判断し、当該データが変更されている場合に、前記共有データ情報を更新する更新手段を有する
ことを特徴とする請求項１または請求項２に記載の情報処理システム。
【請求項４】
前記更新手段は、前記検索されたデータに関する情報が前記共有データ情報に存在しない場合に、前記共有データ情報から前記データに関する情報を削除する
ことを特徴とする請求項３に記載の情報処理システム。
【請求項５】
前記更新手段は、前記第２の検索処理による検索でヒットしなかったデータがある場合に、前記共有データ情報内の、前記検索でアクセスが行われなかったＵＲＬに基づき前記サービス提供装置から取得されるデータで前記共有データ情報を更新する
ことを特徴とする請求項３または請求項４に記載の情報処理システム。
【請求項６】
前記共有データ情報は、前記データの識別情報と、前記データにアクセスするためのＵＲＬと、前記データを共有したユーザの情報とを含む
ことを特徴とする請求項１乃至５のいずれか１項に記載の情報処理システム。
【請求項７】
前記データを共有する通知は、電子メールである
ことを特徴とする請求項１乃至６のいずれか１項に記載の情報処理システム。
【請求項８】
前記サービス提供装置は、データを保存するストレージサーバである
ことを特徴とする請求項１乃至７のいずれか１項に記載の情報処理システム。
【請求項９】
前記表示手段は、前記第１の検索処理の結果と前記第２の検索処理の結果を同一の表示領域に画面表示する
ことを特徴とする請求項１乃至８のいずれか１項に記載の情報処理システム。
【請求項１０】
前記表示手段は、前記第１の検索処理の結果と前記第２の検索処理の結果とを、異なる表示領域に画面表示する
ことを特徴とする請求項１乃至９のいずれか１項に記載の情報処理システム。
【請求項１１】
前記表示手段は、前記第１の検索処理の結果と前記第２の検索処理の結果とを、前記第１の検索処理または前記第２の検索処理のいずれの検索結果であるかを示す情報とともに画面表示する
ことを特徴とする請求項１乃至１０のいずれか１項に記載の情報処理システム。
【請求項１２】
デバイスおよびネットワークを介してサービスを提供するサービス提供装置と通信する中継装置であって、
前記サービス提供装置の認可情報を保持する保持手段と、
データを共有する通知を受けたデバイスが取得した、当該データを共有するために用いられる共有データ情報を登録する登録手段と、
デバイスを操作するユーザを認証する認証手段と、
前記認証されたユーザが操作するデバイスからのデータの検索要求に応じて、当該データを検索する制御手段と、
前記制御手段による前記データの検索結果を前記データの検索要求を行ったデバイスに送信する送信手段と、を有し、
前記制御手段は、前記認証されたユーザに対応する前記認可情報に基づいて、前記サービス提供装置にアクセスし、前記データを検索する第１の検索処理と、前記登録された共有データ情報を参照して前記データを検索する第２の検索処理とを実行する
ことを特徴とする中継装置。
【請求項１３】
デバイスと、ネットワークを介してサービスを提供するサービス提供装置と、前記デバイスおよび前記サービス提供装置と通信する中継装置とを有するシステムにて実行されるデータ検索方法であって、
前記中継装置が、データを共有する通知を受けたデバイスが取得した、当該データを共有するために用いられる共有データ情報を登録する登録工程と、
前記中継装置が、デバイスを操作するユーザを認証する認証工程と、
前記中継装置が、前記認証されたユーザが操作するデバイスからのデータの検索要求に応じて、当該データを検索する制御工程と、
前記データの検索結果を受けたデバイスが、前記データの検索結果を表示する表示工程と、を有し、
前記制御工程では、前記中継装置は、予め保持された前記サービス提供装置の認可情報のうち、前記認証されたユーザに対応する前記認可情報に基づいて、前記サービス提供装置にアクセスし、前記データを検索する第１の検索処理と、前記登録された共有データ情報を参照して前記データを検索する第２の検索処理とを実行する
ことを特徴とするデータ検索方法。
【請求項１４】
コンピュータを、請求項１２に記載の中継装置が有する各手段として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、中継装置、データ検索方法およびプログラムに関する。
【背景技術】
【０００２】
文書や写真などのデータの電子化に伴い、クライアント装置（デバイス）に対するクラウドサービスとして、ネットワーク上に設置されたストレージを提供するストレージサービスが提案されている。クラウドサービスを提供する装置を、サービス提供装置と記述する。また、クラウドサービスのうち、ストレージサービスを提供するサーバを、ストレージサーバと記述する。
【０００３】
クラウドサービスを利用してデータを保存することで、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、スマートフォン、ＭＦＰ（Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ））などのデバイスからデータを閲覧することが可能となる。また、クラウドサービスでは、ユーザは、共有したいデータにアクセスするためのＵＲＬを発行することが可能である。ユーザが、ＵＲＬを電子メールなどでデータを共有したい相手に送信することで、電子メールを受信した受信者は、ＵＲＬからデータにアクセスすることができる。
【０００４】
しかし、複数のクラウドサービスが利用される際に、各クラウドサービスで扱っているＩＤとパスワードを記憶しておくことや、どのクラウドサービスにどのデータが保存されているのかを管理することは容易ではない。特許文献１は、デバイスとクラウドサービスとの中継を行う中継装置が、ＯＡｕｔｈなどの認可プロトコルに従って、クラウドサービスの認可情報を取得し、ユーザのアカウントと対応付けて管理する情報処理装置を開示している。認可情報とは、システムを実行するための権限情報である。認可情報は、例えば、ＸＭＬやランダムな文字列等で表現され、実行できる処理の範囲や実行可能期間などの情報を有する。認可情報の構成は、サービス提供側毎により異なる。また、特許文献２は、複数のクラウドサービスを横断してデータの検索、閲覧、取得を行うための処理を行う中継装置を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特願２０１６−３０７６８号公報
【特許文献２】特願２０１２−１４８７５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１が開示する技術では、中継装置が記憶している認可情報を用いてクラウドサービスを参照するので、中継装置に記憶しているアカウントの権限で許可されたデータしか検索、閲覧、取得することができない。特許文献２が開示する技術を適用しても、クラウドサービスの認可情報で許可されていないデータは検索対象とならない。例えば、クラウドサービス上のデータが、携帯端末などのデバイスに対する電子メールで通知されたＵＲＬで共有された場合を想定する。この場合に、ユーザは、携帯端末に通知されたＵＲＬを通じて、クラウドサービス上にある当該共有されたデータにアクセスすることができる。しかし、例えば、ユーザが、デバイスから、クラウドサービスを対象としてデータの検索をした場合を想定する。この場合には、上記ＵＲＬを通じてアクセスすることができたデータを保持するクラウドサービスと同一のクラウドサービスであっても、このクラウドサービスの認可情報で認可されていないときは、当該データは検索されない。本発明は、ユーザ間で共有されたデータが、サービス提供装置の認可情報で許可されていない場合であっても、当該共有されたデータを検索することができる情報処理システムの提供を目的とする。
【課題を解決するための手段】
【０００７】
本発明の一実施形態の情報処理システムは、ネットワークを介してサービスを提供するサービス提供装置の認可情報を保持する保持手段と、データを共有する通知を受けたデバイスが生成した、当該データを共有するために用いられる共有データ情報を登録する登録手段と、デバイスを操作するユーザを認証する認証手段と、前記認証されたユーザが操作するデバイスからのデータの検索要求に応じて、当該データを検索する制御手段と、前記制御手段による前記データの検索結果を表示する表示手段と、を有する。前記制御手段は、前記認証されたユーザに対応する前記認可情報に基づいて、前記サービス提供装置にアクセスし、前記データを検索する第１の検索処理と、前記登録された共有データ情報を参照して前記データを検索する第２の検索処理とを実行する。
【発明の効果】
【０００８】
本発明の情報処理システムによれば、ユーザ間で共有されたデータが、サービス提供装置の認可情報で許可されていない場合であっても、当該共有されたデータを検索することができる。
【図面の簡単な説明】
【０００９】
【図１】情報処理システムの構成を説明する図である。
【図２】画像形成装置の機器構成図の一例である。
【図３】中継サーバ、ストレージサーバ、または情報処理装置を実現する機器のハードウェア構成の一例を示す図である。
【図４】情報処理システム全体のソフトウェア構成を示す図である。
【図５】認証管理テーブルの一例を示す図である。
【図６】認可情報管理テーブルの一例を示す図である。
【図７】電子メールの一例を示す図である。
【図８】共有管理テーブルの一例を示す図である。
【図９】情報処理装置の動作処理の一例を説明するフローチャートである。
【図１０】データの検索処理の一例を説明するフローチャートである。
【図１１】データの検索結果の表示例を示す図である。
【図１２】実施例２におけるデータの検索処理を説明するフローチャートである。
【発明を実施するための形態】
【００１０】
（実施例１）
図１は、本実施形態の情報処理システムの構成を説明する図である。
図１に示す情報処理システムは、ネットワーク１００を介して接続される画像形成装置１０１と、中継サーバ１０２と、ストレージサーバ１０３と、情報処理装置１０４とを有するネットワークシステムである。画像形成装置１０１と、ストレージサーバ１０３、情報処理装置１０４は、複数であってもよい。情報処理装置（第１のデバイス）１０４と画像形成装置（第２のデバイス）１０１は、ネットワーク１００を介して中継サーバ１０２と通信を行う。ネットワーク１００は、各装置間で通信を行うための基盤であって、イントラネット、インターネットもしくはその他のネットワークであっても構わない。
【００１１】
情報処理装置１０４は、例えば、ＰＣ、携帯端末等である。画像形成装置１０１は、例えば、ＭＦＰ等のプリンタである。中継サーバ１０２は、画像形成装置１０１および情報処理装置１０４とストレージサーバ１０３との中継を担う中継装置である。中継サーバ１０２は、例えば、ストレージサーバ１０３へ接続するための認証情報の管理や、ストレージサーバ１０３からのデータ取得などを行う機能を有する。ストレージサーバ１０３は、ネットワーク１００を介してサービス（ストレージサービス）を提供するサービス提供装置である。例えば、ストレージサーバ１０３は、情報処理装置１０４や中継サーバ１０２からのリクエスト（データの検索要求）に応じて、データの検索を行う。また、ストレージサーバ１０３は、情報処理装置１０４や中継サーバ１０２からのリクエストに応じて、ログイン処理や、記憶（ストレージ）したデータへのアクセス制御等の機能を提供する。本発明が適用可能なサービス提供装置は、ストレージサーバ１０３に限定されない。例えば、リクエストに応じた所定の画像処理等を行うサーバも、サービス提供装置として、本発明の適用範囲となる。
【００１２】
図２は、画像形成装置の機器構成図の一例である。
画像形成装置１０１は、メインバス２００で接続されたＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの）２０１乃至ネットワーク装置２０８を有する。ＣＰＵ２０１は、画像形成装置１０１全体を制御する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）は、ＣＰＵ２０１のワークエリアとして機能する記憶手段である。読取装置２０３は、画像の読み取り処理を行う。印刷装置２０４は、画像の印刷処理を行う。記憶装置２０５は、画像形成装置１０１の制御プログラムや様々な設定を記憶する。記憶装置２０５は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＮＶＲＡＭ（Ｎｏｎ−ｖｏｌａｔｉｌｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等である。
【００１３】
ユーザ入力装置２０６は、ユーザの操作に応じた情報を入力する。ＵＩ表示装置２０７は、画面表示を行う。タッチパネルディスプレイのようにＵＩ表示装置２０７がユーザ入力装置２０６を兼ねてもよい。ネットワーク装置２０８は、外部装置とネットワーク１００を介した通信を行う。
【００１４】
図３は、中継サーバ、ストレージサーバ、または情報処理装置を実現する機器のハードウェア構成の一例を示す図である。
図３に示す機器は、メインバス３００で接続されたＣＰＵ３０１乃至ネットワーク装置３０４を有する。ＣＰＵ３０１は、機器全体を制御する。ＲＡＭ３０２は、ＣＰＵ３０１のワークエリアを提供する記憶手段である。記憶装置３０３は、機器の制御プログラム、設定を記憶する。ネットワーク装置３０４は、外部装置とネットワーク１００を介した通信を行う。
【００１５】
図４は、図１に示す情報処理システム全体のソフトウェア構成を示す図である。
図４に示す各装置、サーバの機能は、各装置、サーバのそれぞれが有しているＣＰＵが制御プログラムを実行することにより実現される。
【００１６】
図４に示す中継サーバ１０２、ストレージサーバ１０３は、例えば、ＳＯＡＰプロトコルに従ってリクエスト／レスポンスを送受信するＷｅｂサーバであるが、中継サーバ１０２、ストレージサーバ１０３は、Ｗｅｂサーバに限定されない。
【００１７】
画像形成装置１０１は、アプリケーション４３０を有する。アプリケーション４３０は、画像形成装置１０１が有しているＣＰＵ２０１が制御プログラムを実行することにより実現される。アプリケーション４３０は、通信部４３１、データ処理部４３２、画面表示部４３３を有する。通信部４３１は、ＳＯＡＰ又はＨＴＴＰプロトコルに従って、中継サーバ１０２の通信部４２４を介してＷｅｂアプリケーション４２０のプログラム処理部４２２と通信する。より具体的には、通信部４３１は、画面表示部４３３が表示した検索画面を介して入力された情報を、通信部４３１及び中継サーバ１０２のＷｅｂアプリケーション４２０の通信部４２４を介して、検索処理部４２３に送信する。データ処理部４３２は、各種のデータ処理を実行する。画面表示部４３３は、データを画面表示する。例えば、画面表示部４３３は、データの検索に用いられる検索画面を表示する。
【００１８】
中継サーバ１０２は、Ｗｅｂアプリケーション４２０を有する。Ｗｅｂアプリケーション４２０は、プレゼンテーション部４２１、プログラム処理部４２２、検索処理部４２３、通信部４２４、認証処理部４２５、認可処理部４２６、ストレージ部４２７を有する。プレゼンテーション部４２１は、本システムで使用する認証画面（不図示）と検索画面（不図示）を提供する。プレゼンテーション部４２１は、デバイス（情報処理装置１０４または画像形成装置１０１）からアクセスされたことに応じて、認証画面のデータと検索画面のデータとを生成して、デバイスに送信し、それぞれの画面を表示させる。そして、プログラム処理部４２２、検索処理部４２３、認証処理部４２５、認可処理部４２６が、認証画面または検索画面を用いたユーザの入力値に応じた処理を実行する。認証画面には、中継サーバ１０２が提供するサービスを利用するための認証情報であるＩＤとパスワードの入力欄が表示される。検索画面には、ストレージサーバ１０３にアクセスして検索を行うための検索ワードの入力欄が表示される。
【００１９】
通信部４２４は、ネットワーク装置３０４を介して、ＳＯＡＰ又はＨＴＴＰプロトコルにより通信を行うソフトウェアモジュールである。プログラム処理部４２２は、Ｗｅｂアプリケーション４２０が有する各処理部を制御する。通信部４２４が、画像形成装置１０１及び情報処理装置１０４から送信される入力情報を受信すると、プログラム処理部４２２が、入力情報に基づいて、検索処理部４２３、認証処理部４２５、認可処理部４２６に指示して、各種処理を実行する。認証処理部４２５は、プログラム処理部４２２の指示に基づき、ストレージ部４１４に保存されている認証管理テーブルを参照して、中継サーバ１０２での認証処理を行う。認証管理テーブルは、認証情報を管理するためのテーブルである。
【００２０】
図５は、認証管理テーブルの一例を示す図である。
認証管理テーブル１１００で管理されている認証情報は、ＩＤ、パスワード、権限を含む。ＩＤ１１０１は、ユーザを一意に管理するための文字列（識別情報）である。パスワード１１０２は、ＩＤ１１０２に対応するユーザの認証を行うために用いられる文字列である。権限１１０３は、ユーザのＷｅｂアプリケーション４２０における権限であって、権限により機能制限を設けるために用いられる。例えば、管理者ユーザは、Ｗｅｂアプリケーション４２０の設定等を行えるが、標準ユーザは設定は行えない。ユーザの認証は、認証管理画面でＩＤ１１０１と、ＩＤ１１０１に対応するパスワード１１０２が正しく入力されることで完了（成功）する。図５に示す例では、ＩＤ「Ａ１１１１」に対して、パスワード「ａａａａ１１１１」が入力されると、認証が成功し、ユーザ「Ａ１１１１」としてＷｅｂアプリケーション４２０を利用することが可能となる。
【００２１】
図４の説明に戻る。認可処理部４２６は、プログラム処理部４２２の指示に基づき、認可情報の生成、認可情報の整合性のチェック、ストレージ部４２７への認可情報の保持を命令する。ストレージ部４２７が保持する認可情報は１つに限らず、複数のストレージサーバ１０３に対しての認証が行われる場合には、複数のストレージサーバ１０３の認可情報を保持することができる。認可情報は、ストレージ部４２７内の認可情報管理テーブルで管理される。
【００２２】
図６は、認可情報管理テーブルの一例を示す図である。
認可情報管理テーブル１２００で管理される認可情報は、ＩＤ１２０１、認可コード１２０２、ＵＲＬ１２０３を含む。ＩＤ１２０１は、図５の認証管理テーブル１１０におけるＩＤ１１０１で管理しているユーザのＩＤである。認可コード１２０２は、認可情報を示すランダムな文字列である。認可コード１２０２は、ユーザのシステム実行許可の有無を判断するために利用される。ＵＲＬ１２０３は、ストレージサーバ１０３にアクセスするためのＵＲＬである。
【００２３】
図４の説明に戻る。認可処理部４２６は、認可コードを取得した後、認証処理部４２５で認証したユーザのＩＤ１１０１（１２０１）と認可コード１２０２とＵＲＬ１２０３を認可情報管理テーブル１２００に保存する。また、認可処理部４２６が、認可情報管理テーブル１２００を参照するときは、認証処理部４２５で認証したユーザのＩＤ１１０１（１２０１）に一致する項目しか参照することができない。ストレージ部４２７は、認可処理部４２６の指示に基づき、認可情報を記憶する。
また、検索処理部４２３は、プログラム処理部４２２の指示に基づき、ストレージサーバ１０３に保存されているデータの検索を実行し、検索結果をプログラム処理部４２２に返却する。このとき、中継サーバ１０２の認証処理部４２５での認証が完了したユーザのＩＤに紐付く認可情報がストレージ部４２７に保存されているストレージサーバ１０３が検索の対象となる。したがって、ストレージ部４２７が複数のストレージサーバ１０３の認可情報を保持している場合は、複数のストレージサーバを対象に検索処理が行われる。
【００２４】
ストレージサーバ１０３は、Ｗｅｂアプリケーション４１０を有する。Ｗｅｂアプリケーション４１０は、プレゼンテーション部４１１、通信部４１２、データ処理部４１３、ストレージ部４１４、認証処理部４１５を有する。プレゼンテーション部４１１は、認証画面などのログイン画面及びストレージしているデータの一覧画面等を表示する。通信部４１２は、ネットワーク装置３０４（図３）を介して、ＳＯＡＰ又はＨＴＴＰプロトコルにより通信を行うソフトウェアモジュールである。データ処理部４１３は、ストレージ部４１４を制御して、各種のデータ処理を行う。ストレージ部４１４は、通信部４１２で受信された、画像形成装置１０１または情報処理装置１０４からのスキャン画像、文書データ、または画像データを保存する。認証処理部４１５は、情報処理装置１０４のＷｅｂブラウザ４４１からのリクエストに基づき、認証処理を実行する。
【００２５】
情報処理装置１０４は、通信部４４０、Ｗｅｂブラウザ４４１、メールアプリ４４２、メール監視アプリ４４３を有する。Ｗｅｂブラウザ４４１は、中継サーバ１０２のプレゼンテーション部４２１への接続時、又はストレージサーバ１０３のプレゼンテーション部４１１への接続時に利用される。メールアプリ４４２は、電子メールの送信、受信を行う。メール監視アプリ４４３は、メールアプリ４４２による電子メールの受信を監視し、受信された電子メールの解析処理を行う。
【００２６】
図７は、情報処理装置において表示された電子メールの一例を示す図である。
メールアプリ４４２は、受信した電子メール５００の内容を画面に表示する。図７に示す例では、メールアプリ４４２は、差出人５０１から宛先５０２に対して、ストレージサーバ１０３が保持するデータを共有することを通知する電子メールを受信している。データを共有したユーザのメールアドレスが、差出人５０１に表示されている。当該データを共有された電子メールの受信者のメールアドレスが、宛先５０２に表示されている。領域５０３は、電子メールの本文が表示される領域である。差出人が入力した文章５０４と、システムによって自動入力された文章５０５と共有データのリンク５０６とが表示されている。共有データのリンク５０６は、共有データのハイパーリンクである。表示されているファイル名のリンク先には、ストレージサーバ１０３のストレージ部４１４に保存されている共有データがリンクされている。
【００２７】
図８は、共有管理テーブルの一例を示す図である。
共有管理テーブル６００は、データの共有に用いられる情報（共有データ情報）を管理するテーブルである。情報処理装置１０４が有するメール監視アプリ４４３は、データを共通することを通知する電子メール５００を受信すると、当該電子メールを解析して、共有データ情報を取得する。データを共通することを通知する電子メールを、以下では、データ共有の電子メールとも記述する。共有データ情報の取得は、情報処理装置１０４のユーザが中継サーバ１０２の認証処理部４２５で認証された場合に行われる。ユーザが認証されると、メール監視アプリ４４３は、共有データ情報が設定された共有管理テーブル６００を中継サーバ１０２のストレージ部４２７内に登録する。具体的には、中継サーバ１０２のプログラム処理部４２０が、メール監視アプリ４４３から受信した共有管理テーブル６００をストレージ部４２７に保存する。共有管理テーブル６００は、中継サーバ１０２によって認証されたユーザごとに作成され、当該認証されたユーザに関する処理についてのみ扱うことができる。
【００２８】
図８に示す共有管理テーブル６００は、ファイル名６０１、共有者６０２、ＵＲＬ６０３を有する。ファイル名６０１は、共有データのファイル名である。メール監視アプリ４４３は、受信された電子メール５００の共有データのリンク５０６の文字列からファイル名を取得する。共有者６０２は、データを共有したユーザ（共有者）のアドレスである。メール監視アプリ４４３は、差出人５０１から共有者６０２を取得する。ＵＲＬ６０３は共有データにアクセスするためのＵＲＬ（共有用ＵＲＬ）である。メール監視アプリ４４３は、共有データのリンク５０６のリンク先のＵＲＬからＵＲＬ５０３を取得する。もちろん、ファイル名６０１乃至ＵＲＬ６０３以外の情報が電子メールに含まれる場合は、この情報を共有データ情報として取得してもよい。例えば、メール監視アプリ４４３は、データの共有期限や、データの容量、メールの受信日などを共有データ情報として取得してもよい。
【００２９】
図９は、データ共有の電子メールを受信した情報処理装置の動作処理の一例を説明するフローチャートである。
メール監視アプリ４４３が起動すると、処理が開始される。ただし、メール監視アプリ４４３は、アプリインストール後の初回実行時に監視するメールの登録と中継サーバ１０２による認証を受ける必要がある。メール監視アプリ４４３は、情報処理装置１０４の通信部４４０を制御して、中継サーバ１０２の通信部４２４を介し、Ｗｅｂアプリケーション４２０のプログラム処理部４２２と通信をする。また、プレゼンテーション部４２１が、情報処理装置１０４のＷｅｂブラウザ４４１に認証画面データを送信し、Ｗｅｂブラウザ４４１が、認証画面を表示する。Ｗｅｂブラウザ４４１が、ユーザの操作に応じて、認証処理部４２５が管理するＩＤとパスワードを正しく入力することで、ユーザの認証が成功し、中継サーバ１０２の機能を使用することができるようになる。情報処理装置１０４は、入力されたＩＤとパスワードを記憶装置３０３に記憶することで、以降の認証情報の入力が省略される。
【００３０】
Ｓ７０１において、メール監視アプリ４４３が、前回終了してから、今回起動するまでにメールアプリ４４２が受信した電子メールを確認する。続いて、Ｓ７０２において、メール監視アプリ４４３が、メールアプリ４４２が電子メールを受信したかを判断する。電子メールを受信したかの確認方法として、メール監視アプリ４４３で設定された時間ごとにメールアプリ４４２の受信情報を確認する方法がある。また、メールアプリ４４２の電子メール受信イベントが発生したタイミングでメール監視アプリ４４３に通知を行う方法を用いてもよい。メールアプリ４４２が、電子メールを受信した場合は、処理がＳ７０３に進む。メールアプリ４４２が、電子メールを受信していない場合は、処理がＳ７０２に戻る。
【００３１】
Ｓ７０３において、メール監視アプリ４４３が、受信された電子メールの解析を行い、データ共有の電子メールであるかを判断する。例えば、メール監視アプリ４４３は、予め登録されているアドレスから受信した電子メールをデータ共有の電子メールであると判断する。メール監視アプリ４４３が、メールアプリ４４２の受信メールの本文５０３に共有データのリンク５０６のような特定の拡張子を含むハイパーリンクが存在する場合に、データ共有の電子メールであると判断してもよい。電子メールがデータ共有の電子メールである場合は、処理がＳ７０４に進む。電子メールがデータ共有の電子メールでない場合は、処理がＳ７０２に戻る。
【００３２】
Ｓ７０４において、メール監視アプリ４４３が、通信部４４０を介して、中継サーバ１０２にログインする。具体的には、メール監視アプリ４４３は、記憶装置３０３に保存されているＩＤとパスワードを中継サーバ１０２に送信する。中継サーバ１０２の認証処理部４２５が、受信したＩＤとパスワードが、認証管理テーブル１１００のＩＤ１１０１とパスワード１１０２に一致する場合に、当該ＩＤに対応するユーザを認証する。
【００３３】
次に、Ｓ７０５において、メール監視アプリ４４３が、受信した電子メールから共有データ情報を抽出し、抽出した共有データ情報が設定された共有管理テーブル６００を中継サーバ１０２のストレージ部４２７内に登録する。電子メールの本文にファイル名等が表示されていなかった場合は、メール監視アプリ４４３は、電子メールから抽出されるＵＲＬを使用して、ストレージサーバ１０３にアクセスし、ストレージ部４１４内のデータからファイル名等の情報を取得する。電子メールの本文にファイル名等が表示されていなかった場合に、メール監視アプリ４４３が、共有管理テーブル６００のファイル名６０１を空白にしておいてもよい。そして、中継サーバ１０２が、データを検索する際に、共有管理テーブル６００のファイル名６０１が空白である場合は、ＵＲＬを使用したアクセスによってストレージサーバ１０３から取得されるファイル名を用いて検索を行ってもよい。
【００３４】
図１０は、ストレージサーバに保持されたデータの検索処理の一例を説明するフローチャートである。
画像形成装置１０１が、中継サーバ１０２を介して、ストレージサーバ１０３が保持するデータの検索を行う場合を想定して説明する。まず、Ｓ８０１において、画像形成装置１０１のアプリケーション４３０が、通信部４３１を介して、中継サーバ１０２のプログラム処理部４２２と通信する。プログラム処理部４２２は、画像形成装置１０１の認証状態を確認する。認証が完了していなかった場合は、プレゼンテーション部４２１が、画像形成装置１０１のＵＩ表示装置２０７に認証画面を表示する。画像形成装置１０１のユーザが、認証画面を用いて、中継サーバ１０２の認証処理部４２５が管理するＩＤとパスワードを正しく入力すると、認証が成功する。これにより、画像形成装置１０１が、中継サーバ１０２の機能を使用することができるようになる。なお、Ｓ８０１において、１度正しく入力されたＩＤとパスワードを、画像形成装置１０１のＲＡＭ２０２もしくは記憶装置２０５に記憶することで、次回以降の認証情報の入力を省略することが可能である。
【００３５】
次に、Ｓ８０２において、中継サーバ１０２が、複数のストレージサーバ１０３に対して検索を行う。具体的には、画像形成装置１０１からデータの検索指示を受けた中継サーバ１０２が、ストレージ部４２７に保存されている認可情報を用いて、ストレージサーバ１０３へアクセスする。画像形成装置１０１からのデータの検索指示は、図１１を参照して後述する検索画面９００上の入力によって行われる。ストレージ部４２７にＳ８０１で使用されたＩＤに該当する認可情報が複数保存されていた場合、中継サーバ１０２は、複数のストレージサーバ１０３のそれぞれにアクセスを行う。具体的には、検索処理部４２３が、通信部４２７を介して、ストレージサーバ１０３のストレージ部４１４にアクセスし、データの検索を行う。検索処理部４２３は、検索結果をＲＡＭ３０２に保存し、同様の検索処理を各ストレージサーバ１０３に対して行う。
【００３６】
Ｓ８０３において、検索処理部４２３が、図９のＳ７０５で登録された共有管理テーブル６００を参照して、データの検索を行い、検索にヒットしたかを判断する。検索処理部４２３は、ストレージ部４２７に保存されている共有管理テーブル６００を取得し、１項目ずつ検索画面で入力した検索ワードに一致しているかを確認する。検索処理部４２３は、ファイル名検索を実行する場合は、ファイル名６０１を対象に、検索ワードとの比較を行う。共有管理テーブル６００の項目と検索ワードとが一致した場合は、検索処理部４２３は、検索にヒットしたと判断し、一致した項目をＲＡＭ３０２に保存する。検索にヒットした場合は、処理がＳ８０４に進む。共有管理テーブル６００の項目と検索ワードとが一致しない場合は、検索処理部４２３は、検索にヒットしなかったと判断する。そして、処理がＳ８０５に進む。
【００３７】
Ｓ８０４において、検索処理部４２３が、Ｓ８０３で検索ワードと一致した項目に対応するＵＲＬ６０３へのアクセスを行う。検索処理部４２３は、当該ＵＲＬ６０３を使用し、ストレージサーバ１０３の通信部４１２を介して、ストレージ部４１４に保存されているデータの情報を取得する。検索処理部４２３は、取得したデータの情報と、接続に使用したＵＲＬ６０３を中継サーバ１０２のＲＡＭ３０２に保存する。Ｓ８０５において、検索処理部４２３が、共有管理テーブル６００を参照したデータの検索が完了したかを判断する。データの検索が完了した場合は、処理がＳ８０６に進む。データの検索が完了していない場合は、処理がＳ８０３に戻る。
【００３８】
Ｓ８０６において、検索処理部４２３が、Ｓ８０２でのストレージサーバを対象とした検索処理（第１の検索処理）の結果と、Ｓ８０３乃至Ｓ８０５での共有管理テーブル６００を用いた検索処理（第２の検索処理）の結果とを画像形成装置１０１に送信する。画像形成装置１０１の画面表示部４３３が、送信された検索結果を表示する。そして、処理が終了する。
【００３９】
図１１は、データの検索結果の表示例を示す図である。
画像形成装置１０１の画面表示部４３３は、検索画面９００に、データの検索結果を表示する。図１１に示す例では、画面表示部４３３は、検索プロパティ９０１と検索条件９０２と検索ワード９０３に入力された条件に一致した項目の表示を行う。検索プロパティ９０１には、ファイル名、ストレージサーバ名、サイズ、共有者などの検索対象データの持つプロパティが入力される。検索条件９０２には、「次の値を含む」、「次の値で始まる」、「次の値に等しい」、「次の値以上」、「次の値以下」などの検索条件が入力される。検索ワード９０３には、検索プロパティ９０１と検索条件９０２で指定された条件で検索を行うための文字列が入力される。ユーザが検索ボタン９０４を押下すると、検索プロパティ９０１と検索条件９０２と検索ワード９０３に入力された内容によって指定された条件でデータの検索が行われ、当該条件に合致したデータの一覧が検索結果として表示される。図１１に示す検索画面９００の例では、ファイル名に「．ｐｄｆ」を含むデータが検索される。ユーザがクリアボタン９０５を押下すると、画面表示部４３３は、検索プロパティ９０１、検索条件９０２、検索ワード９０３の検索条件を初期値に戻す。
【００４０】
検索結果９１０は、図１１に示す例では、ファイル名９０６、ストレージサーバ名９０７、サイズ９０８、共有者９０９を有する。ファイル名９０６は、検索されたデータのファイル名を示す。ストレージサーバ名９０７は、検索されたデータが保存されているストレージサーバ１０３の名称を示す。サイズ９０８は、検索されたデータの容量を示す。共有者９０９は、検索されたデータに対応する共有用ＵＲＬを発行したユーザのアドレスを示す。画面表示部４３３は、アドレス帳から取得されるユーザ名を共有者９０９として表示してもよい。共有者９０９は、図９のＳ７０５において、中継サーバ１０２のストレージ部４２７内に、共有用ＵＲＬが保存されていた場合にのみ表示される。
【００４１】
図１１に示す例では、画面表示部４３３は、図１０のＳ８０２での第１の検索処理の結果とＳ８０３乃至Ｓ８０５での第２の検索処理の結果とを同一の表示領域に表示しているが、異なる表示領域に表示してもよい。また、画面表示部４３３が、第１の検索処理の結果と第２の検索処理の結果を、第１の検索処理または第２の検索処理のいずれの検索結果であるかを示す情報（例えば、所定のプロパティ）とともに画面表示するようにしてもよい。また、第１の検索処理と第２の検索処理の双方で同じデータが検索された場合は、検索結果が重複するので、いずれか一方の検索結果に集約して表示してもよい。本実施例の情報処理システムによれば、ユーザ間で共有されたデータがサービス提供サーバによって認可されていない場合であっても、共有用ＵＲＬに基づく検索によって、検索することができる。
【００４２】
（実施例２）
実施例１の情報処理システムでは、ＵＲＬを含む共有データ情報を中継サーバ１０２に保存し、データ検索時に中継サーバ１０２に保存した共有データ情報を用いて検索を行う。したがって、中継サーバ１０２に保存した共有データ情報と検索ワードとが一致していれば、ＵＲＬが参照しているストレージサーバ１０３に保存されているデータの情報が変更され、本来検索にヒットしないデータでも、検索にヒットしてしまうことがある。
【００４３】
実施例２では、中継サーバ１０２が、ＵＲＬが参照しているストレージサーバ１０３に保存されているデータの情報が、共有管理テーブル６００の作成時から変更されていた場合に、共有管理テーブル６００を更新する。中継サーバ１０２は、共有管理テーブル６００の更新により検索にヒットしなくなったデータの情報を検索結果に含めないようにする。なお、特に明示しない限り、実施例２の構成及び処理は、実施例２と同じである。
【００４４】
図１２は、実施例２におけるデータの検索処理を説明するフローチャートである。
Ｓ８０１乃至Ｓ８０６は、図１０のＳ８０１乃至Ｓ８０６と同様である。Ｓ１００１において、中継サーバ１０２の検索処理部４２３が、Ｓ８０３での検索に使用した共有管理テーブル６００の項目と、ＲＡＭ３０２に保持しているストレージサーバ１０３から取得したデータの情報とを比較する。検索に使用した共有管理テーブル６００の項目と、ＲＡＭ３０２に保持しているデータの情報とで差異がない場合は、処理がＳ８０５に進む。検索に使用した共有管理テーブル６００の項目と、ＲＡＭ３０２に保持しているデータの情報とで差異がある場合は、検索処理部４２３は、データの情報が変更されたと判断して、処理がＳ１００２に進む。また、Ｓ８０４におけるＵＲＬを用いたアクセスで、データの情報を取得できていなかった場合は、検索処理部４２３は、データの情報が削除されたと判断して、処理がＳ１００３に進む。
【００４５】
Ｓ１００２において、検索処理部４２３が、変更されたデータの情報に基づいて、共有管理テーブル６００を更新する。具体的には、共有管理テーブル６００を変更した結果、検索にヒットしなくなった場合は、検索処理部４２３は、Ｓ８０４でＲＡＭ３０２に保存された情報を削除し、Ｓ８０６で表示される検索結果に含めない。
【００４６】
また、Ｓ１００３において、検索処理部４２３が、削除されたデータの情報（項目）を共有管理テーブル６００から削除する。検索処理部４２３は、Ｓ８０４でＲＡＭ３０２に保存された情報から、共有管理テーブル６００から削除された項目を削除し、Ｓ８０６で表示される検索結果に含めない。なお、共有管理テーブル６００に公開期限が設定されており、公開期限が切れていたためアクセスできなくなっていた場合、検索結果に公開期限が切れていることを示す所定の表示（例えば画面の色を薄くする表示）がされるようにしてもよい。
【００４７】
次に、Ｓ１００４乃至Ｓ１００６の処理について説明する。Ｓ１００１乃至Ｓ１００３において、検索処理部４２３が検索結果の更新を行うが、更新対象は、共有管理テーブル６００に基づく検索にヒットしたデータであり、当該検索にヒットしなかったデータの情報は更新されていない。つまり、共有管理テーブル６００に情報を保存したときには検索にヒットしなかったが、ストレージサーバ１０３のストレージ部４１４に保存されているデータの情報が更新されていて、検索にヒットするようになっている場合がある。
【００４８】
したがって、Ｓ１００４において、共有管理テーブル６００に基づく検索でヒットしなかったデータがある場合に、検索処理部４２３が、再検索を行うかを判断する。具体的には、検索処理部４２３は、通信部４３１を介し、再検索を行うための画面（再検索画面）を画面表示部４３３に表示させる。再検索画面には、例えば、再検索を行うかを確認する確認メッセージと、再検索の実行を行うためのボタンと、再検索の実行をキャンセルするためのボタンとが表示される。再検索の実行を行うためのボタンが押下された場合は、検索処理部４２３が、再検索を行うと判断して、処理がＳ１００５に進む。再検索の実行をキャンセルするためのボタンが押下された場合は、再検索を行わないと判断して、処理が終了する。
【００４９】
Ｓ１００５において、検索処理部４２３が、共有管理テーブル６００内の、Ｓ８０４でアクセスを行っていないＵＲＬを使用して、ストレージサーバ１０３の通信部４１２を介し、ストレージ部４１４に保存されているデータの情報を取得する。すなわち、検索処理部４２３は、第２の検索処理による検索でヒットしなかったデータがある場合に、共有データ情報内の、上記第２の検索処理でアクセスが行われなかったＵＲＬに基づいてストレージサーバ１０３からデータを取得する。そして、検索処理部４２３は、取得したデータの情報で共有管理テーブル６００の情報を最新状態に更新（再構築）する。検索処理部４２３は、最新の状態に更新された共有管理テーブル６００に基づく再検索を行い、検索にットしたデータの情報を、中継サーバ１０２のＲＡＭ３０２に保持する。
【００５０】
次に、Ｓ１００６において、画像表示部４３３が、中継サーバ１０２から接続可能なストレージサーバ１０３に対する検索処理の結果と、最新の状態の共有管理テーブル６００に基づく検索処理の結果の表示を行う。実施例２の情報処理システムによれば、共有データ情報が保存されてからストレージサーバ１０３上のデータが更新されていた場合でも、最新の状態のデータの情報を参照して、正しい検索結果を得ることができる。上述した各実施例は、特許請求の範囲に係る発明を限定するものでなく、また、各実施例で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００５１】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５２】
１０１  画像形成装置
１０２  中継サーバ
１０３  ストレージサーバ
１０４  情報処理装置
【図１】
2020098460.tif 000003
【図２】
2020098460.tif 000004
【図３】
2020098460.tif 000005
【図４】
2020098460.tif 000006
【図５】
2020098460.tif 000007
【図６】
2020098460.tif 000008
【図７】
2020098460.tif 000009
【図８】
2020098460.tif 000010
【図９】
2020098460.tif 000011
【図１０】
2020098460.tif 000012
【図１１】
2020098460.tif 000013
【図１２】
2020098460.tif 000014