(57)【特許請求の範囲】
【請求項１】
特定のディレクトリとネットワーク上の外部記憶装置におけるデータの取得先とを関連付けて記憶する第１記憶手段と、
接続される情報処理装置から、ディレクトリに対する前記データの取得要求を受信する受信手段と、
前記取得要求されたディレクトリの履歴を記憶する第２記憶手段と、
前記第２記憶手段に記憶された履歴が予め定められた条件を満たすとき、前記取得要求で特定されるディレクトリに関連付けられた取得先からデータの取得を行う取得手段と、
前記取得したデータを前記取得要求への応答として前記情報処理装置へ出力する出力手段と
を有する制御装置。
【請求項２】
前記出力手段は、前記受信手段で受信した取得要求が前記特定のディレクトリへの要求である場合に、前記第２記憶手段に記憶されている前記履歴が前記条件を満たさないときは、前記データの取得を許可しない旨を示すデータを出力する
請求項１に記載の制御装置。
【請求項３】
前記出力手段は、前記受信手段で受信する取得要求により指定されるディレクトリが前記特定のディレクトリでない場合、当該指定されたディレクトリの下位層に属するディレクトリおよびファイルの少なくともいずれか一方の一覧を出力する
請求項１または２に記載の制御装置。
【請求項４】
前記特定のディレクトリおよび当該特定のディレクトリの下位層に属するディレクトリの少なくともいずれか一方とデータの出力ファイル形式との対応関係を記憶する第３記憶手段を更に有し、
前記出力手段は、前記取得要求により指定されるディレクトリが前記データの出力ファイル形式と対応づけられたディレクトリである場合、当該ディレクトリに対応する出力ファイル形式で、前記特定のディレクトリに対応するデータを出力する
請求項１乃至３のいずれか１項に記載の制御装置。
【請求項５】
特定のディレクトリとネットワーク上の外部記憶装置におけるデータの取得先とを関連付けて記憶し、
接続される情報処理装置から、ディレクトリに対する前記データの取得要求を受信し、
前記取得要求されたディレクトリの履歴を記憶し、
前記記憶した履歴が予め定められた条件を満たすとき、前記取得要求で特定されるディレクトリに関連付けられた取得先からデータを取得し前記取得要求への応答として前記情報処理装置へ出力する
処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置およびプログラムに関する。
【背景技術】
【０００２】
特許文献１には、アプリケーション・データを記憶する複数個の記憶エリアを有し、識別符号により各記憶エリアをアクセスするようにしたディレクトリ管理機能を有するＩＣカードが記載されている。特許文献２には、起動時に個人認証のキーを入力する入力手段、個人認証のキーおよび暗号化・復号化の情報を保持する内部記憶手段、外部記憶手段、外部記憶手段が使用可能を検出する外部記憶検出手段、起動時に入力されたキーから個人認証を行う個人認証手段、表示制御および外部記憶の検出を行う個人認証手段、表示制御および外部記憶の検出を行う中央制御手段、表示手段、終了時に外部記憶の暗号化を行う暗号化手段、個人認証成功時と外部記憶手段が使用可能状態移行時に復号化を行う復号化手段、により構成される外部記憶媒体管理装置が記載されている。
【０００３】
特許文献３には、外付け型データ格納装置の保安のために、キー入力部を介して入力されるパスワードを読み取り、予め登録されたパスワードと一致するか否かに応じてデータ格納装置の駆動を行わせることによって、他人によるデータの持ち出し及び損傷を未然に防止し、ユーザのデータが確実に保護できる外付け型データ格納装置の保安システム及びその制御方法が記載されている。特許文献４には、コンピュータ装置側に特別なＡＰＩなどをインストールすることなく、認証機能などを有する外部メモリ装置が使用できる技術として、メモリ装置の入力用ファイルに外部機器から書き込まれた入力データに基づいて、第２のデータ記憶部に記憶されたセキュリティ確保用のデータを読み出して、その読み出したセキュリティ確保用のデータと入力データとを使った演算を行い、演算結果を出力ファイルに書き込ませる制御を行う技術が記載されている。
【０００４】
特許文献５には、記憶媒体に記憶されているデータの受渡しをセキュアにかつ従来よりも容易に行う技術として、第一のＵＳＢメモリに予め設定された第一のキーと、第一のＵＳＢメモリが接続されている第一のコンピュータに入力された第二のキーとに基づいて、第一のＵＳＢメモリのフラッシュメモリチップに記憶されているデータを、第二のコンピュータに送信してもよいか否かを判別する技術が記載されている。特許文献６には、外部ストレージに接続する手段を備え、内蔵メモリに保存されたデータを退避するフラッシュカードが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開昭６２−２５７５５５号公報
【特許文献２】特開２００６−１６３８６３号公報
【特許文献３】特開２０１０−５０６３２７号公報
【特許文献４】特開２０１０−１７０２７６号公報
【特許文献５】特開２００９−０７０２９８号公報
【特許文献６】米国特許第６４０５２７８号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、外部記憶装置に対してアクセスする手段を有しない情報処理装置から外部記憶装置へのアクセスを可能とすることを目的とする。
【課題を解決するための手段】
【０００７】
請求項１に係る発明は、特定のディレクトリとネットワーク上の外部記憶装置におけるデータの取得先とを関連付けて記憶する第１記憶手段と、接続される情報処理装置から、ディレクトリに対する前記データの取得要求を受信する受信手段と、前記取得要求されたディレクトリの履歴を記憶する第２記憶手段と、前記第２記憶手段に記憶された履歴が予め定められた条件を満たすとき、前記取得要求で特定されるディレクトリに関連付けられた取得先からデータの取得を行う取得手段と、前記取得したデータを前記取得要求への応答として前記情報処理装置へ出力する出力手段とを有する制御装置である。
【００１０】
請求項２に係る発明は、前記出力手段は、前記受信手段で受信した取得要求が前記特定のディレクトリへの要求である場合に、前記第２記憶手段に記憶されている前記履歴が前記条件を満たさないときは、前記データの取得を許可しない旨を示すデータを出力する請求項１に記載の制御装置である。
請求項３に係る発明は、前記出力手段は、前記受信手段で受信する取得要求により指定されるディレクトリが前記特定のディレクトリでない場合、当該指定されたディレクトリの下位層に属するディレクトリおよびファイルの少なくともいずれか一方の一覧を出力する請求項１または２に記載の制御装置である。
請求項４に係る発明は、前記特定のディレクトリおよび当該特定のディレクトリの下位層に属するディレクトリの少なくともいずれか一方とデータの出力ファイル形式との対応関係を記憶する第３記憶手段を更に有し、前記出力手段は、前記取得要求により指定されるディレクトリが前記データの出力ファイル形式と対応づけられたディレクトリである場合、当該ディレクトリに対応する出力ファイル形式で、前記特定のディレクトリに対応するデータを出力する請求項１乃至３のいずれか１項に記載の制御装置である。
【００１１】
請求項５に係る発明は、特定のディレクトリとネットワーク上の外部記憶装置におけるデータの取得先とを関連付けて記憶し、接続される情報処理装置から、ディレクトリに対する前記データの取得要求を受信し、前記取得要求されたディレクトリの履歴を記憶し、前記記憶した履歴が予め定められた条件を満たすとき、前記取得要求で特定されるディレクトリに関連付けられた取得先からデータを取得し前記取得要求への応答として前記情報処理装置へ出力する処理をコンピュータに実行させるプログラムである。
【発明の効果】
【００１２】
本発明によれば、外部記憶装置に対してアクセスする手段を有しない情報処理装置が、外部記憶装置から文書データを取得することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】システム１の構成を示す模式図。
【図２】システム１の機能構成を示す図。
【図３】画像形成装置２０のハードウェア構成を示す図。
【図４】ストレージインターフェースカード３０のハードウェア構成を示す図。
【図５】接続管理情報の一例を示す図。
【図６】ファイルシステム構造の一例を示す図。
【図７】ルートディレクトリの内容を示す図。
【図８】正解ディレクトリの内容を示す図。
【図９】画像形成装置２０の動作を例示するフローチャート。
【図１０】ストレージインターフェースカード３０の動作を例示するフローチャート。
【図１１】ＵＩ部２０６に表示される画面の一例を示す図。
【発明を実施するための形態】
【００１４】
１．構成
図１は、本実施形態に係るシステム１の構成を示す模式図である。システム１は、サービス提供装置１０と、画像形成装置２０と、ストレージインターフェースカード３０とを備える。サービス提供装置１０は、いわゆるストレージサービスを提供する装置である。ここでいうストレージサービスとは、データの保存をネットワーク（クラウド）上のサーバ装置が行うというものである。画像形成装置２０（情報処理装置の一例）は、例えば電子写真方式のプリンタである。画像形成装置２０は、スキャナ機能の他、コピー機能、プリント機能、ファクシミリ機能などの複数の機能を有していてもよい。ストレージインターフェースカード３０（制御装置の一例）は、ＳＤカードスロットなどのメモリカードスロットに挿入して用いられるカードであり、この例で、画像形成装置２０に装着して用いられる。画像形成装置２０は、ストレージインターフェースカード３０を、メモリカードとして認識する。ネットワーク２は、例えば、移動体通信網、ゲートウェイ装置およびインターネットを含む公衆通信回線である。ストレージインターフェースカード３０は、ネットワーク２に接続する手段を有しており、ネットワーク２を介してサービス提供装置１０との間でデータの授受を行う。
【００１５】
図２は、システム１の機能構成を示す図である。ストレージインターフェースカード３０は、第１接続手段３１と、第２接続手段３２と、第１記憶手段３３と、受信手段３４と、第２記憶手段３５と、出力手段３６と、第３記憶手段３７とを有する。第１接続手段３１は、サービス提供装置１０と接続する。第２接続手段は、画像形成装置２０と接続し、画像形成装置２０との間でデータの入出力を行う。第１記憶手段３３は、複数のディレクトリを含む階層構造を有し、この複数のディレクトリのうち特定のディレクトリがサービス提供装置１０に記憶されているデータと対応付けられた仮想的なディレクトリ構造を記憶する。受信手段３４は、画像形成装置２０から第２接続手段３２を介して、上記複数のディレクトリのうち一のディレクトリへのアクセス要求を受信する。第２記憶手段３５は、受信手段３４によって受信されたアクセス要求によってアクセスが要求されたディレクトリの履歴を記憶する。出力手段３６は、アクセス要求により指定されるディレクトリが特定のディレクトリである場合において、第２記憶手段３５に記憶されている履歴が予め定められた条件を満たすときは、その特定のディレクトリに対応するデータを第２接続手段３２を介して画像形成装置２０に出力する。第３記憶手段３７は、特定のディレクトリおよび特定のディレクトリの下位層に属するディレクトリの少なくともいずれか一方とデータの出力ファイル形式との対応関係を記憶する。画像形成装置２０は、第３接続手段２１を有する。第３接続手段２１は、ディレクトリへのアクセス要求をストレージインターフェースカード３０へ送信したり、アクセス結果としてのディレクトリ情報やファイル情報や出力するためのファイルを受信する。
【００１６】
図３は、画像形成装置２０のハードウェア構成を例示する図である。画像形成装置２０は、ＣＰＵ（Central Processing Unit）２０１と、ＲＯＭ（Read Only Memory）２０２と、ＲＡＭ（Random Access Memory）２０３と、ストレージ２０４と、カードＩＦ２０５と、ＵＩ（User Interface）部２０６と、画像形成部２０７とを備えている。ＣＰＵ２０１は、画像形成装置２０の各部を制御する制御装置（プロセッサ）である。ＲＯＭ２０２は、プログラムおよびデータを記憶する不揮発性の記憶装置である。ＲＡＭ２０３は、ＣＰＵ２０１がプログラムを実行する際の作業領域として機能する揮発性の主記憶装置である。ストレージ２０４は、プログラムおよびデータを記憶する不揮発性の補助記憶装置である。カードＩＦ２０５は、ストレージインターフェースカード３０との間でデータの授受を行うためのインターフェースである。カードＩＦ２０５は、ストレージインターフェースカード３０などのカードが差し込まれる差込口を有しており、この差込口に差し込まれたカードとの間でデータの授受を行う。ＵＩ部２０６は、例えばタッチスクリーンとキーとを備えている。ＵＩ部２０６は、画像形成装置２０を操作するために用いられる。画像形成部２０７は、画像データに応じた画像を用紙などの媒体に形成する。
【００１７】
この例で、ストレージ２０４（またはＲＯＭ２０２）に記憶されているプログラムをＣＰＵ２０１が実行することにより、図２に示される機能が実装される。プログラムを実行しているＣＰＵ２０１、またはＣＰＵ２０１およびカードＩＦ２０５は、第３接続手段２１の一例である。
【００１８】
図４は、ストレージインターフェースカード３０のハードウェア構成を例示する図である。ストレージインターフェースカード３０は、ＣＰＵなどのプロセッサ３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、ストレージ３０４と、通信ＩＦ３０５と、ホストＩＦ３０６とを有する。プロセッサ３０１は、ストレージインターフェースカード３０の各部を制御する制御装置であり、例えばＣＰＵである。ＲＯＭ３０２は、プログラムおよびデータを記憶する不揮発性の記憶装置である。ＲＡＭ３０３は、プロセッサ３０１がプログラムを実行する際の作業領域として機能する揮発性の主記憶装置である。ストレージ３０４は、プログラムおよびデータを記憶する不揮発性の補助記憶装置であり、例えばフラッシュメモリである。通信ＩＦ３０５は、ネットワーク２を介した通信を行うためのインターフェースであり、この例では特に、サービス提供装置１０と通信を行うためのインターフェースである。この例で、通信ＩＦ３０５は、無線ＬＡＮや無線の公衆回線によりネットワーク２に接続する。
【００１９】
この例で、ストレージ３０４（またはＲＯＭ３０２）に記憶されているデータをＲＡＭ３０３に呼び出し、ストレージ３０４（またはＲＯＭ３０２）に記憶されているプログラムをプロセッサ３０１が実行することにより、図２に示される機能が実装される。プログラムを実行しているプロセッサ３０１、またはプロセッサ３０１および通信ＩＦ３０５は、第１接続手段３１の一例である。プログラムを実行しているプロセッサ３０１およびホストＩＦ３０６は、第２接続手段３２、受信手段３４および出力手段３６の一例である。ＲＡＭ３０３０またはストレージ３０４は、第１記憶手段３３、第２記憶手段３５および第３記憶手段３７の一例である。
【００２０】
なお、サービス提供装置１０のハードウェア構成についての詳細な説明は省く。サービス提供装置１０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ストレージ、通信ＩＦを有するコンピュータ装置である。
【００２１】
２．動作
次いで、この実施形態の動作を説明する。ここでは、ユーザは画像形成装置２０を用いてサービス提供装置１０に記憶されたデータを取得し、取得したデータの示す画像を画像形成装置２０から出力させる場合の動作について説明する。画像形成装置２０はサービス提供装置１０に直接アクセスする機能を有しておらず、ストレージインターフェースカード３０が画像形成装置２０とサービス提供装置１０との間のデータのやりとりを行う。画像形成装置２０は、一般的なメモリカードにアクセスするプロトコルを利用してデータの入出力を行う機能を有しているものの、ストレージインターフェースカード３０およびサービス提供装置１０に対してアクセスする機能を有していない。このアクセスする機能としては、ファイルの入出力に関する機能や、ユーザの認証に関する機能等がある。しかし、画像形成装置２０からサービス提供装置１０へのアクセスを、認証を行うことなく許可してしまうと、サービス提供装置１０へ不正なアクセスが行われてしまう虞がある。そこで、この実施形態では、ストレージインターフェースカード３０が画像形成装置２０に対して仮想的なディレクトリ構造（以下、「仮想ディレクトリ構造」という）を提示し、仮想ディレクトリをユーザに指定させることで、アクセスの許可を行う。具体的には、この実施形態では、アクセスされたディレクトリが特定のディレクトリである場合において、この特定のディレクトリへアクセスされるまでにアクセスされたディレクトリの履歴が予め定められた条件を満たすときに、アクセスが許可されたとみなされ、外部ストレージへ認証情報を送信してアクセスが許可される。以下、この実施形態に係る具体的な動作について図面を参照しつつ説明する。なお、以下の説明においては、説明の便宜上、上述した特定のディレクトリを「正解ディレクトリ」と称する。
【００２２】
２−１．事前登録動作
まず、ユーザは、パーソナルコンピュータなどのコンピュータ装置を用いて、外部ストレージ（サービス提供装置１０）へアクセスするための情報（以下「接続管理情報」という）をストレージインターフェースカード３０に登録する操作を行う。コンピュータ装置は、操作部から出力されるデータに基づいて、通信ＩＦ３０５を介してストレージインターフェースカード３０に接続し、ユーザによって入力された接続管理情報をストレージインターフェースカード３０へ出力する。
【００２３】
図５は、接続管理情報の内容の一例を示す図である。接続管理情報は、「外部ストレージ接続先情報」と、「ユーザ識別情報」と、「正解ディレクトリパス情報」とを含む。「外部ストレージ接続先情報」は、外部ストレージの接続先を示す情報であり、例えばＵＲＬである。「ユーザ識別情報」は、外部ストレージにアクセスする際に用いられる認証に関する情報であり、例えば、ユーザＩＤとパスワードのセットや、アクセストークンである。この動作例で、「ユーザ識別情報」は、サービス提供装置１０にアクセスするために用いられるアクセストークンである。「正解ディレクトリパス情報」は、この外部ストレージにアクセスするための認証情報として用いられる、正解ディレクトリへのディレクトリパスを示す情報である。図５に示す例では、「１／２／３／４」というディレクトリパスが認証情報として用いられる。
【００２４】
プロセッサ３０１は、コンピュータ装置から出力された接続管理情報を、ストレージ３０４に格納する。この接続管理情報は、画像形成装置２０がストレージインターフェースカード３０を介してサービス提供装置１０へアクセスする際に用いられる。なお、接続管理情報は、ストレージインターフェースカード３０を所有するユーザが登録してもよく、また、システム１の管理者であるユーザが接続管理情報を設定した後に、接続管理情報が設定されたストレージインターフェースカード３０をユーザに配布してもよい。
【００２５】
２−２．外部ストレージからのデータ取得動作
次いで、外部ストレージであるサービス提供装置１０から画像形成装置２０を用いてデータを取得して出力する動作について説明する。ユーザは、画像形成装置２０のカードＩＦ２０５にストレージインターフェースカード３０を差し込む。画像形成装置２０のＣＰＵ２０１は、カードＩＦ２０５から供給される情報に基づいて、ストレージインターフェースカード３０を検知する。ストレージインターフェースカード３０が検知されると、ＣＰＵ２０１は、ストレージインターフェースカード３０の仮想ディレクトリ構造におけるルートディレクトリへのアクセス要求を、ストレージインターフェースカード３０へ出力する。
【００２６】
図６は、ストレージインターフェースカード３０における仮想ディレクトリ構造を例示する図である。この例で、ストレージインターフェースカード３０の仮想ディレクトリ構造が割り当てられたストレージは、予め定められたメモリブロック（以下、単に「ブロック」という）単位でアクセスされる。それぞれのブロックにアドレスが割り当てられている。画像形成装置２０はこのアドレスを指定して読取要求を行う。アドレスが割り当てられたブロックの一部または全部には、ディレクトリおよびファイルの少なくともいずれか一方が格納される。なお、図６は、説明を簡明にするため、上記ストレージ上に連続してブロックが配置されている例を示す。図６において、アドレス「＋０」はルートディレクトリに対応している。また、図６において、正解ディレクトリは「／１／２／３／４」である。各ディレクトリは、そのディレクトリ内にある要素である仮想的なファイルやディレクトリの一覧を表すデータを含む。
【００２７】
図７は、図６に例示した仮想ディレクトリ構造におけるルートディレクトリの内容を示す図である。なお、図７にはルートディレクトリの内容を例示しているが、ルートディレクトリ以外の他のディレクトリに含まれるデータの構成も、図７に例示するものと同様である。各ディレクトリは、「名前」と、「種別」と、「アドレス」と、「サイズ」との各項目が互いに関連付けられたデータを含む。「名前」は、そのディレクトリ内にある要素であるファイルの名称またはディレクトリの名称を示す情報である。「種別」は、その要素がディレクトリであるかファイルであるかを示す情報である。「アドレス」はその要素が格納されているアドレスである。「サイズ」はその要素のサイズである。
【００２８】
図６において、例えば、アドレスが「＋１ｘ」（ｘは０から９の整数）である場合、対応するディレクトリのパスは「／ｘ」である。同様に、アドレスが「＋１ｘｙ」（ｘ，ｙはともに０から９の整数）である場合、対応するディレクトリのパスは「／ｘ／ｙ」である。アドレスが「＋１ｘｙｚ」（ｘ，ｙ，ｚはいずれも０から９の整数）である場合、そのアドレスに対応するディレクトリのパスは「／ｘ／ｙ／ｚ」である。アドレスが「＋１ｘｙｚｗ」（ｘ，ｙ，ｚ，ｗはいずれも０から９の整数）である場合、そのアドレスに対応するディレクトリのパスは「／ｘ／ｙ／ｚ／ｗ」であって、本実施例においては、ディレクトリのパスは4階層からなり、これらが最下層のディレクトリとする。
【００２９】
すなわち、図６に示す例において、最下層でないディレクトリは、名前が「０」から「９」の１０個のディレクトリ要素を含む。それぞれの要素はその下位ディレクトリを指すディレクトリ要素である。最下位ディレクトリのうちの正解ディレクトリでないものは、内容が空である。
【００３０】
図８は、図６に例示した仮想ディレクトリ構造における正解ディレクトリの内容を示す図である。図８において、「ファイルＡ」と「ファイルＢ」は、サービス提供装置１０に記憶されているファイル（データ）である。正解ディレクトリの内容は、サービス提供装置１０に対してストレージインターフェースカード３０がファイル一覧要求を送信して取得されたファイル一覧から動的に生成される。具体的には、プロセッサ３０１は、ストレージ３０４に記憶された接続管理情報に含まれる外部ストレージ接続先情報に基づいてサービス提供装置１０へアクセスし、ファイル一覧要求を送信する。サービス提供装置１０は、ストレージインターフェースカード３０からファイル一覧要求を受信すると、受信された要求に対応するファイル一覧をストレージインターフェースカード３０へ送信する。プロセッサ３０１は、サービス提供装置１０から受信されるファイル一覧に基づいて、ファイル一覧に含まれるファイルを仮想ディレクトリ構造上のアドレスに動的に配置する。プロセッサ３０１は、どのファイルをどのアドレスに配置したかという情報を、ファイル一覧情報としてＲＡＭ３０３に記憶する。また、プロセッサ３０１は、受信されたファイル一覧に含まれるファイルを示す情報（名前、種別、アドレス、サイズ）に基づいて、正解ディレクトリの内容を動的に生成する。図８に示す例では、サービス提供装置１０に「ファイルＡ」と「ファイルＢ」とが記憶されており、「ファイルＡ」がアドレス「＋１０００００」に配置され、「ファイルＢ」がアドレス「＋１０１０００」に配置された状態を示す。
【００３１】
図９は、画像形成装置２０が行う、サービス提供装置１０からのデータの取得動作を例示するフローチャートである。ストレージインターフェースカード３０が検知されたり、ユーザがＵＩ部２０６を用いてデータを取得するための操作を行ったりすることをトリガとして、図９に示す処理が開示される。ステップＳ１０１において、ＣＰＵ２０１は、ルートディレクトリへのアクセス要求、すなわちブロック「＋０」の読出要求をストレージインターフェースカード３０へ出力する。
【００３２】
図１０は、ストレージインターフェースカード３０の動作を例示するフローチャートである。ストレージインターフェースカード３０のプロセッサ３０１は、画像形成装置２０からホストＩＦ３０６を経由して読出要求を受け付け、受け付けた読出要求に対する応答を出力する処理を繰り返す。
【００３３】
ステップＳ２０１において、プロセッサ３０１は、画像形成装置２０から読出要求を受信する。この読出要求には、読み出すブロックのアドレスが含まれる。ステップＳ２０２において、プロセッサ３０１は、ＲＡＭ３０３に記憶されている、仮想ディレクトリ構造を示す仮想ディレクトリ構造情報に基づいて、指定されたアドレスがディレクトリ領域に相当するものであるかファイル領域に相当するものであるかを判定する。ディレクトリ領域であると判定された場合（ステップＳ２０２；ＹＥＳ）、プロセッサ３０１は、ステップＳ２０３の処理に進む。ディレクトリ領域でないと判定された場合（ステップＳ２０２；ＮＯ）、プロセッサ３０１は、ステップＳ２１３の処理に進む。
【００３４】
ステップＳ２０３において、プロセッサ３０１は、指定されたアドレスを履歴情報としてＲＡＭ３０３に記憶する。次いで、ステップＳ２０４において、指定されたディレクトリが最下層のディレクトリであるかを判定する。最下層のディレクトリであるか否かは、指定されたアドレスが予め定められた条件（例えば、「＋１００００」〜「＋１９９９９」のいずれかである、など）を満たすか否かによって判定される。最下層のディレクトリでない場合（ステップＳ２０４；ＮＯ）は、プロセッサ３０１はステップＳ２０５の処理に進む。最下層のディレクトリである場合（ステップＳ２０４；ＹＥＳ）は、プロセッサ３０１はステップＳ２０７の処理に進む。
【００３５】
ステップＳ２０５において、プロセッサ３０１は、指定されたアドレスに記憶されたディレクトリの内容を示すレスポンスを生成する。ステップＳ２０６において、プロセッサ３０１は、生成したレスポンスを読出要求の応答として画像形成装置２０へ出力する。ステップＳ２０６の処理を終えると、プロセッサ３０１は、ステップＳ２０１の処理に戻り、新たな読出要求を受け付けるまで待機する。
【００３６】
ステップＳ２０７において、プロセッサ３０１は、指定されたディレクトリが正解ディレクトリであるかを判定する。指定されたディレクトリが正解ディレクトリでない場合（ステップＳ２０７；ＮＯ）は、プロセッサ３０１は、ステップＳ２０８の処理へ進む。指定されたディレクトリが正解ディレクトリである場合（ステップＳ２０７；ＹＥＳ）は、プロセッサ３０１は、ステップＳ２０９の処理へ進む。
【００３７】
ステップＳ２０８において、プロセッサ３０１は、指定されたディレクトリに何も格納されていない（すなわち、指定されたディレクトリが空である）旨を示すレスポンスを生成し、生成したレスポンスを、ステップＳ２０６において画像形成装置２０へ出力する。
【００３８】
ステップＳ２０９において、プロセッサ３０１は、ＲＡＭ３０３に記憶されている履歴情報を参照し、ルートディレクトリから正解ディレクトリへの順序でアクセスされたかを判定する。具体的には、この例では、「／」、「／１」、「／１／２」、「／１／２／３」、および「／１／２／３／４」の順序でアクセスされた場合はＯＫであると判定され、それ以外の順序でアクセスされた場合はＮＧと判定される。例えば、「／」、「／１」、「／１／２」、「／１／２／３」、「／１／２／３／５」、「／１／２／３」、および「／１／２／３／４」の順序でアクセスされた場合はＮＧであると判定される。ステップＳ２０９の判定は、ルートディレクトリから正解ディレクトリへ最短パスでアクセスされたかが判定されてもよい。順序が異なっている場合は（ステップＳ２０９；ＮＯ）、プロセッサ３０１は、ステップＳ２０８の処理へ進み、空のディレクトリを示すレスポンスを生成してステップＳ２０６において画像形成装置２０へ出力する。順序が一致している場合は（ステップＳ２０９；ＹＥＳ）、プロセッサ３０１は、ステップＳ２１０の処理へ進む。
【００３９】
ステップＳ２１０において、プロセッサ３０１は、サービス提供装置１０へアクセスし、ファイル一覧の取得要求を送信する。この送信処理には、接続管理情報に含まれる外部ストレージ接続先情報とユーザ識別情報が用いられる。ステップＳ２１１において、プロセッサ３０１は、取得したファイル一覧情報をＲＡＭ３０３に記憶する。このとき、プロセッサ３０１は、それぞれのファイルサイズに応じて各ファイルを仮想ディレクトリ構造内のアドレスに配置し、配置したアドレスもあわせてファイル一覧情報として記憶する。ステップＳ２１２において、プロセッサ３０１は、ファイル一覧を示すレスポンスを生成し、生成したレスポンスをステップＳ２０６において画像形成装置２０へ出力する。
【００４０】
ステップＳ２１３において、プロセッサ３０１は、ＲＡＭ３０３に記憶されているファイル一覧情報を参照し、ステップＳ２１４において、指定されたファイルに対応する情報がファイル一覧情報に含まれているかを判定する。指定されたファイルに対応する情報がＲＡＭ３０３に記憶されていない場合、プロセッサ３０１は、ステップＳ２１５において、正解ディレクトリにアクセスされていないと判定し、エラー応答を生成する。一方、指定されたファイルに対応する情報がＲＡＭ３０３に記憶されている場合、プロセッサ３０１は、ステップＳ２１６の処理へ進む。
【００４１】
ステップＳ２１６において、プロセッサ３０１は、ファイル一覧情報に含まれるアドレスに基づいて、どのファイルのどの部分が指定されているかを特定し、特定したデータの取得要求をサービス提供装置１０へ送信する。サービス提供装置１０はストレージインターフェースカード３０からデータの取得要求を受信すると、受信した取得要求に対応するデータをストレージから読み出してストレージインターフェースカード３０へ送信する。ステップＳ２１７において、プロセッサ３０１は、サービス提供装置１０から取得されたデータに応じたレスポンスを生成する。
【００４２】
ステップＳ２０８、Ｓ２１２、Ｓ２１５またはＳ２１７で生成されたレスポンスは、ステップＳ２０６において画像形成装置２０へ出力される。ここで、サービス提供装置１０から取得したファイルを、画像形成装置２０で印刷できるファイル形式に変換した上で、画像形成装置２０へ出力するようにしてもよい。プロセッサ３０１は、ステップＳ２０６の処理を終えると、ステップＳ２０１の処理へ戻り、画像形成装置２０から読出要求を受信するまで待機する。
【００４３】
図９の説明に戻る。ステップＳ１０１でストレージインターフェースカード３０へ出力した読出要求のレスポンスを受信すると、ステップＳ１０２において、ＣＰＵ２０１は、受信されたレスポンスに応じてルートディレクトリの内容を表示する。
【００４４】
図１１は画像形成装置２０のＵＩ部２０６に表示される画面の一例を示す図であり、特に、画面Ｇ１は、ステップＳ１０２においてＵＩ部２０６に表示されるルートディレクトリの内容を示す画面である。この例では、ルートディレクトリには「０」から「９」までの名前の１０個のサブディレクトリが表示される。ＣＰＵ２０１は、画面Ｇ１をＵＩ部２０６に表示し、ステップＳ１０２において、ユーザによって要素が選択されるまで待機する。
【００４５】
ユーザは、ＵＩ部２０６に表示された画面を参照し、ＵＩ部２０６を用いて、表示されたサブディレクトリのいずれかを選択する操作を行う。ステップＳ１０４において、ＣＰＵ２０１は、ＵＩ部２０６から出力されるデータに基づいて、選択された要素がディレクトリであるかファイルであるかを判定する。ＣＰＵ２０１は、ディレクトリが選択された場合にはステップＳ１０５の処理へ進む。一方、ステップＳ１０４において、ファイルが選択されたと判定された場合は、ＣＰＵ２０１はステップＳ１０７の処理へ進む。
【００４６】
ステップＳ１０５において、ＣＰＵ２０１は、選択されたディレクトリブロックの読出要求を、ストレージインターフェースカード３０へ出力する。出力した読出要求の応答をストレージインターフェースカード３０から受信すると、ＣＰＵ２０１は、ステップＳ１０６において、受信された応答に基づいて、選択されたディレクトリの内容を表示する。ステップＳ１０６の処理により、選択されたディレクトリの内容を示す画面（例えば、図１１の画面Ｇ２ないしＧ５のいずれか）がＵＩ部２０６に表示される。ステップＳ１０６の処理を終えると、ＣＰＵ２０１は、ステップＳ１０３の処理へ戻り、ユーザによって要素が選択されるまで待機する。
【００４７】
ステップＳ１０７において、ＣＰＵ２０１は、選択されたファイルの読出要求をストレージインターフェースカード３０へ出力する。ＣＰＵ２０１は、出力した読出要求の応答としてストレージインターフェースカード３０から供給されるファイルを取得する。ステップＳ１０８において、ＣＰＵ２０１は、取得したファイルを出力する。この例で、ＣＰＵ２０１は、画像形成部２０７を制御して取得したファイルの表す画像を用紙等の媒体に形成することによってファイルを出力する。
【００４８】
この実施形態では、上述したように、画像形成装置２０からストレージインターフェースカード３０への読取指示に対して、仮想ディレクトリ構造による仮想ディレクトリを示すデータを返す。この仮想ディレクトリ構造では、サービス提供装置１０に記憶されたデータに対して動的にアドレスが割り当てられ、データの読み取りが実際に要求されるまではサービス提供装置１０からデータが取得されない。そのため、ストレージインターフェースカード３０に、サービス提供装置１０に格納されているデータを継続的に記憶するためのストレージを設ける必要がない。
【００４９】
３．変形例
上述した実施形態は、本発明の一例である。これらの実施形態は、以下のように変形してもよい。また、以下の変形例は、互いに組み合わせてもよい。
【００５０】
３−１．変形例１
上述の実施形態では、ディレクトリへのアクセス履歴が予め定められた条件を満たさない場合に（図１０のステップＳ２０９；ＮＯ）、プロセッサ３０１は、空のディレクトリを示すレスポンスを生成して画像形成装置２０へ出力した（ステップＳ２０８）。これに代えて、プロセッサ３０１が、アクセス要求により指定されるディレクトリが正解ディレクトリである場合において、ＲＡＭ３０３に記憶されている履歴情報が接続管理情報に含まれる正解ディレクトリパス情報に対応しないときは、アクセスを許可しない旨を示すファイル名を含むレスポンスを、指定されたディレクトリの内容を示すデータとして画像形成装置２０へ出力してもよい。具体的には、例えば、プロセッサ３０１は、「ディレクトリの選択順序が間違っています。最初から正しい順序で選択してください。」といったメッセージをファイル名に含むレスポンスを、指定されたディレクトリの内容を示すデータとして出力してもよい。
【００５１】
また、指定されたディレクトリが最下層のディレクトリである場合において、指定されたディレクトリが正解ディレクトリでない場合に（図１０のステップＳ２０７；ＮＯ）、プロセッサ３０１が、アクセスを許可しない旨を示すファイル名を含むレスポンスを、指定されたディレクトリの内容を示すデータとして画像形成装置２０へ出力してもよい。
【００５２】
３−２．変形例２
上述の実施形態では、正解ディレクトリは最下層のディレクトリであったが、正解ディレクトリは最下層のディレクトリに限られない。正解ディレクトリに１または複数のディレクトリが含まれていてもよい。
【００５３】
３−３．変形例３
上述の実施形態において、正解ディレクトリおよび正解ディレクトリの下位層に属するディレクトリの少なくともいずれか一方とデータの出力ファイル形式とを対応付けてストレージ３０４に記憶しておき、プロセッサ３０１が、画像形成装置２０から受信されたアクセス要求により指定されるディレクトリがデータの出力ファイル形式に対応付けられてディレクトリである場合、このディレクトリに対応する出力ファイル形式で、サービス提供装置１０から取得されたデータを出力してもよい。例えば、正解ディレクトリの下位層に「ディレクトリＸ」、「ディレクトリＹ」を設け、「ディレクトリＸ」と「ＪＰＥＧ形式」、「ディレクトリＹ」と「ＰＤＦ形式」をそれぞれ対応付けておく。この場合、ユーザによって正解ディレクトリ内の一のファイルが選択された後に、正解ディレクトリの下位層のディレクトリのいずれかが選択されると、プロセッサ３０１は、選択されたディレクトリに対応する出力ファイル形式で、選択されたファイルを出力してもよい。また、この場合、ストレージインターフェースカード３０が、選択された出力ファイル形式に変換する変換手段を備えていない場合には、プロセッサ３０１が、予め定められた他のコンピュータ装置にファイルの変換を依頼し、上記他のコンピュータ装置で変換されたファイルを出力してもよい。
【００５４】
３−４．変形例４
上述の実施形態では、サービス提供装置１０に「ファイルＡ」と「ファイルＢ」とが記憶されている場合を例示したが、サービス提供装置１０に１または複数のディレクトリが記憶されていてもよい。例えば、サービス提供装置１０に、「ディレクトリＣ」と「ディレクトリＤ」とが記憶されている場合、ストレージインターフェースカード３０のプロセッサ３０１は、サービス提供装置１０から受信されるファイル一覧（ディレクトリ一覧）に基づいて、「ディレクトリＣ」をアドレス「＋１０００００」に配置し、「ディレクトリＤ」をアドレス「＋１０１０００」に配置する。また、プロセッサ３０１は、どのディレクトリをどのアドレスに配置したかという情報を、ファイル一覧情報としてＲＡＭ３０３に記憶する。
【００５５】
この場合、画像形成装置２０からディレクトリＣまたはディレクトリＤへのアクセス要求を受信すると、プロセッサ３０１は、ストレージ３０４に記憶されている接続管理情報を用いてサービス提供装置１０へアクセスし、指定されたディレクトリの内容を示すデータの取得要求を送信する。サービス提供装置１０は、ストレージインターフェースカード３０からデータの取得要求を受信すると、受信した取得要求に対応するディレクトリの内容を示すデータをストレージ読み出してストレージインターフェースカード３０へ送信する。プロセッサ３０１は、サービス提供装置１０から取得されたデータに応じたレスポンスを生成する。画像形成装置２０のＣＰＵ２０１は、ストレージインターフェースカード３０から取得されたデータに基づいて、ディレクトリＣまたはディレクトリＤの内容をＵＩ部２０６に表示させる。
【００５６】
この場合、ユーザによってディレクトリＣまたはディレクトリＤの下位層のディレクトリまたはファイルが選択されると、ＣＰＵ２０１は、選択された要素の読出要求をストレージインターフェースカード３０へ送信する。ストレージインターフェースカード３０のプロセッサ３０１は、画像形成装置２０から受信された読出要求に応じて、選択されたディレクトリまたはファイルの取得要求をサービス提供装置１０へ送信し、送信した取得要求の応答としてサービス提供装置１０から送信されてくるデータを画像形成装置２０に出力する。
【００５７】
３−５．変形例５
上述の実施形態に係るシステム１は、サービス提供装置１０と、画像形成装置２０と、ストレージインターフェースカード３０とを備えていた。サービス提供装置１０、画像形成装置２０およびストレージインターフェースカード３０の台数はシステム１で示した台数に限られない。例えば、複数のサービス提供装置を備える構成であってもよい。この場合、ストレージインターフェースカード３０のストレージ３０４には、それぞれのサービス提供装置に対応する接続管理情報が記憶される。
【００５８】
３−６．変形例６
画像形成装置２０は、電子写真方式以外の方式で画像を形成するプリンタであってもよい。また、画像形成装置２０は、白黒の画像を形成するものであってもよいし、カラーの画像を形成するものであってもよい。
【００５９】
３−７．変形例７
上述した実施形態において、ストレージインターフェースカード３０のプロセッサ３０１により実行されるプログラムおよび画像形成装置２０のＣＰＵ２０１により実行されるプログラムは、インターネットなどの通信回線を介してダウンロードされてもよい。また、このプログラムは、磁気記録媒体（磁気テープ、磁気ディスクなど）、光記録媒体（光ディスクなど）、光磁気記録媒体、半導体メモリなどの、コンピュータが読取可能な記録媒体に記録した状態で提供されてもよい。
【符号の説明】
【００６０】
１…システム、２…ネットワーク、１０…サービス提供装置、２０…画像形成装置、２１…第３接続手段、３０…ストレージインターフェースカード、３１…第１接続手段、３２…第２接続手段、３３…第１記憶手段、３４…受信手段、３５…第２記憶手段、３６…出力手段、３７…第３記憶手段。
【要約】
【課題】外部記憶装置に対してアクセスする手段を有さない情報処理装置から外部記憶装置へのアクセスを可能とする。
【解決手段】ストレージインターフェースカード３０の第１記憶手段３３は、複数のディレクトリを含む階層構造を有する仮想的なディレクトリ構造を記憶している。この仮想的なディレクトリ構造のうち特定のディレクトリは、サービス提供装置１０に記憶されているデータと対応付けられている。受信手段３４は、複数のディレクトリのうち一のディレクトリへのアクセス要求を画像形成装置２０から受信する。第２記憶手段は、アクセス要求によってアクセスが要求されたディレクトリの履歴を記憶する。出力手段３６は、アクセス要求により指定されるディレクトリが特定のディレクトリである場合において、第２記憶手段３５に記憶されている履歴が予め定められた条件を満たすときは、特定のディレクトリに対応するデータを画像形成装置２０に出力する。
【選択図】図２【図１】
0005737469.tif 000002
【図２】
0005737469.tif 000003
【図３】
0005737469.tif 000004
【図４】
0005737469.tif 000005
【図５】
0005737469.tif 000006
【図６】
0005737469.tif 000007
【図７】
0005737469.tif 000008
【図８】
0005737469.tif 000009
【図９】
0005737469.tif 000010
【図１０】
0005737469.tif 000011
【図１１】
0005737469.tif 000012