(57)【要約】      （修正有）【課題】セキュリティが高く、ユーザの利便性がよいクロスドメイン通信を可能にする装置、方法を提供する。【解決手段】情報処理装置であって、Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからリクエストを受信する受信手段と、前記リクエストからリクエスト元のドメインの情報を取得する取得手段と、前記取得手段にて取得した情報にて示されるドメインを、許可するか否かを判定する判定手段と、前記判定手段の判定結果に基づいて、前記Ｗｅｂブラウザにレスポンスを送信する送信手段とを有する。【選択図】図７
2019075144.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからリクエストを受信する受信手段と、
前記リクエストからリクエスト元のドメインの情報を取得する取得手段と、
前記取得手段にて取得した情報にて示されるドメインを、許可するか否かを判定する判定手段と、
前記判定手段の判定結果に基づいて、前記Ｗｅｂブラウザにレスポンスを送信する送信手段と
を有する情報処理装置。
【請求項２】
前記情報処理装置は更に、
Ｗｅｂサーバプログラムと、
前記情報処理装置に接続されている画像読取装置との間で通信を行うドライバと、
を有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションから画像読取に関するリクエストを受信する第一の受信手段と、
前記第一の受信手段にて受信したリクエストを、前記ドライバに送信する第一の送信手段と、
前記ドライバから前記画像読取装置にて読み取られた画像情報を受信する第二の受信手段と、
前記第二の受信手段にて受信した画像情報を、ネットワークに接続された外部装置に送信する第二の送信手段と
を有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記Ｗｅｂサーバプログラムは、前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからのリクエストに応じて、該Ｗｅｂアプリケーションを識別するための識別情報を発行することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記Ｗｅｂサーバプログラムは、所定時間の経過、または、前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからのリクエストに応じて、前記識別情報を破棄することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記Ｗｅｂサーバプログラムは、前記ドライバに前記画像読取装置の状態を確認することを特徴とする請求項２乃至４のいずれか1項に記載の情報処理装置。
【請求項６】
情報処理装置における制御方法であって、
受信手段が、Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからリクエストを受信する受信工程と、
取得手段が、前記リクエストからリクエスト元のドメインの情報を取得する取得工程と、
判定手段が、前記取得工程にて取得した情報にて示されるドメインを、許可するか否かを判定する判定工程と、
送信手段が、前記判定工程の判定結果に基づいて、前記Ｗｅｂブラウザにレスポンスを送信する送信工程と
を有する情報処理装置の制御方法。
【請求項７】
情報処理装置であって、
Ｗｅｂブラウザと、
Ｗｅｂサーバプログラムと、
前記情報処理装置に接続されている画像読取装置との間で通信を行うドライバと、
を有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信手段と、
前記第一の受信手段にて受信したＨＴＴＰメッセージを、前記ドライバに送信する第一の送信手段と、
前記ドライバから前記画像読取装置にて読み取られた画像情報を受信する第二の受信手段と、
前記第二の受信手段にて受信した画像情報を、ネットワークに接続された外部装置に送信する第二の送信手段と
を有する情報処理装置。
【請求項８】
情報処理装置における制御方法であって、
前記情報処理装置は、
Ｗｅｂブラウザと、
Ｗｅｂサーバプログラムと、
前記情報処理装置に接続されている画像読取装置との間で通信を行うドライバと、
を有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信工程と、
前記第一の受信工程にて受信したＨＴＴＰメッセージを、前記ドライバに送信する第一の送信工程と、
前記ドライバから前記画像読取装置にて読み取られた画像情報を受信する第二の受信工程と、
前記第二の受信工程にて受信した画像情報を、ネットワークに接続された外部装置に送信する第二の送信工程と
を有する情報処理装置の制御方法。
【請求項９】
請求項１乃至５のいずれか1項に記載された情報処理装置が備える各手段としてコンピュータを機能させることを特徴とするプログラム。
【請求項１０】
情報処理システムであって、
Ｗｅｂブラウザと、Ｗｅｂサーバプログラムとを有する情報処理装置と、
前記情報処理装置に接続される画像読取装置と、
を有し、
前記情報処理装置は、
前記画像読取装置との間で通信を行うドライバと、
を有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信手段と、
前記第一の受信手段にて受信したＨＴＴＰメッセージを、前記ドライバに送信する第一の送信手段と、
前記ドライバから前記画像読取装置にて読み取られた画像情報を受信する第二の受信手段と、
前記第二の受信手段にて受信した画像情報を、ネットワークに接続された外部装置に送信する第二の送信手段と
を有する情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびその制御方法、プログラムおよび情報処理システムに関する。
【背景技術】
【０００２】
ユーザ端末で動作する画像読取装置（例えば、スキャナ）を使用して画像を読み取るアプリケーションを作成するには、各画像読取装置に対応したソフトウェア開発キットをプログラムに組み込み、ユーザ端末で動作するデスクトップアプリケーションを開発する必要があった。しかし、企業の業務アプリケーションがＷｅｂブラウザ上で動作する複数のＷｅｂアプリケーションで実現されることが多くなってきている昨今では、例えば画像読取装置を利用するために、画像読取装置を操作するアプリケーションと業務アプリケーションを使い分ける必要がある。２つのアプリケーションを使い分けた場合、業務が分断されて効率の低下を招いたり、２つのアプリケーションに習熟する手間がかかるなどの問題があった。この問題を解決するために、Ｗｅｂブラウザから画像読取装置を操作して画像読み取りを行う技術が、特許文献１に記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許第９２４１０３０号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１では、Ｗｅｂブラウザからの画像読み取りを可能にしているが、読み取った画像を記憶するＷｅｂストレージシステムは、Ｗｅｂアプリケーションサービス提供システムとは異なるドメイン（クロスドメイン）となってしまうこともある。一般的にＷｅｂアプリケーションの動作環境である各種Ｗｅｂブラウザには、Ｗｅｂアプリケーションに含まれるＪａｖａＳｃｒｉｐｔ（登録商標）が、Ｗｅｂアプリケーションが配置されたドメイン以外へのリクエストを送信しデータを取得することを禁止する動作（クロスドメインリクエストの禁止）が実装されている。
【０００５】
クロスドメインリクエストの禁止機能に対する対処として、特許文献１ではＪＳＯＮＰ（ＪａｖａＳｃｒｉｐｔ（登録商標）  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ  ｗｉｔｈ  Ｐａｄｄｉｎｇ：ｓｃｒｉｐｔタグを使用してクロスドメインデータを取得する仕組み）にてデータを取得する方法が記載されている。しかし、これはサーバのエンドポイントが常に公開されていることから、機密情報を扱う形式としては適切ではないという問題がある。
【０００６】
クロスドメインリクエストの禁止機能に対する別の手段として、クロスドメインリクエストを許可する仕様であるＸＭＬＨｔｔｐＲｅｑｕｅｓｔ  Ｌｅｖｅｌ  ２が存在する。この場合、ＣＯＲＳ（Ｃｒｏｓｓ−Ｏｒｉｇｉｎ  Ｒｅｓｏｕｒｃｅ  Ｓｈａｒｅｉｎｇ）の仕様に従う必要があり、リクエスト送信を許可させる為に、送信先サーバであるＷｅｂアプリケーションサービス提供システムとはドメインが異なるＷｅｂストレージサービスにて、ＣＯＲＳ対応とＷｅｂアプリケーションサービス提供システムのドメインを許可する設定と、を行う必要がある。従って、Ｗｅｂアプリケーションサービス提供システムであるＷｅｂアプリケーション側のみでは、クロスドメインリクエストに対処できない。
【０００７】
そこで、本発明は、上記問題点に鑑みてなされたものであり、セキュリティが高く、ユーザの利便性がよいクロスドメイン通信を可能にすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明にかかる情報処理装置は、
Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからリクエストを受信する受信手段と、
前記リクエストからリクエスト元のドメインの情報を取得する取得手段と、
前記取得手段にて取得した情報にて示されるドメインを、許可するか否かを判定する判定手段と、
前記判定手段の判定結果に基づいて、前記Ｗｅｂブラウザにレスポンスを送信する送信手段と
を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、セキュリティが高く、ユーザの利便性がよいクロスドメイン通信を可能にすることができる。
【００１０】
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
【図面の簡単な説明】
【００１１】
添付図面は明細書に含まれ、その一部を構成し、本発明の実施の形態を示し、その記述と共に本発明の原理を説明するために用いられる。
【図１】実施形態に係る画像読取装置１００の概略図である。
【図２】実施形態に係るシステムの機能構成例を示すブロック図である。
【図３】実施形態に係る画像読取装置１００のハードウェア構成を示すブロック図である。
【図４】実施形態に係るハードウェア構成例を示すブロック図である。
【図５】ブラウザ２０１の処理を示すフローチャートである。
【図６】ＳｃａｎＳｅｒｖｅｒ２０２の処理を示すフローチャートである。
【図７】実施形態に係るシステムの機能構成例を示すシーケンス図である。
【図８】ブラウザ２０１で表示する画面の一例を示す図である。
【図９】Ｗｅｂアプリケーション３０１がロック機能を利用して画像読取処理を行う一例を示した図である。
【図１０】ロック機能においてＳｃａｎＳｅｒｖｅｒ２０２が占有されたままになってしまう例を示した図である。
【図１１】ロック機能において一定時間で発行した接続ＩＤを破棄可能にした動作を示した図である。
【図１２】ロック機能において一定時間で発行した接続ＩＤを破棄可能にした動作の一例を示した図である。
【図１３】画像読み取り処理において、異常が発生した際の動作の一例を示した図である。
【発明を実施するための形態】
【００１２】
本発明を実施するための実施形態について、図面を用いて説明する。本発明は、以下に記載の構成に限定されるものではなく、同一の技術的思想において種々の構成を採用することができる。例えば、以下に示す構成の一部は、省略し又は他の構成等に置換してもよいし、他の構成を含むようにしてもよい。
【００１３】
図２を用いて、本実施形態に係るシステムについて説明する。図２に示す如く、本実施形態に係るシステムでは、インターネットやイントラネットなどのネットワーク５００を介して、ユーザ端末（情報処理装置）２００、Ｗｅｂアプリケーションサービス提供システム３００、Ｗｅｂストレージシステム４００（外部装置）が接続される。なお、ユーザ端末２００、Ｗｅｂアプリケーションサービス提供システム３００、Ｗｅｂストレージシステム４００は複数接続されていてもよい。また、以下では一例として、Ｗｅｂアプリケーションサービス提供システム３００およびブラウザ２０１のドメインを「ドメインＡ」、Ｗｅｂストレージシステム４００のドメインを「ドメインＢ」、ＳｃａｎＳｅｒｖｅｒ２０２のドメインを「ドメインＣ」として説明する。
【００１４】
画像読取装置（デバイス装置）１００は、ユーザ端末２００と接続される。ユーザ端末２００との接続は、有線通信（例えば、ＵＳＢケーブル）に限らず無線通信でもよい。また、ユーザ端末２００内に画像読取装置１００を備える構成でもよい。
【００１５】
なお、以下の説明では、デバイス装置の一例として、画像読取装置について説明するが、これに限らず、撮像装置（例えば、カメラ）、画像形成装置（例えば、複合機）、電化製品（例えば、冷蔵庫）、センサ（例えば、温度計）、自動車等でもよい。撮像装置であれば撮影画像情報や音声情報が送信対象になる。電化製品であれば電化製品自体の状態の情報が送信対象になる。センサであれば各センサでセンシング可能な情報が送信対象になる。自動車であれば走行距離や位置などの情報が送信対象になる。また、いずれか一つがユーザ端末２００に接続されるものに限定するものではなく、複数種類のデバイス装置がユーザ端末２００に接続されてよい。
【００１６】
＜画像読取装置の構成＞
図１は、本施形態に係る画像読取装置１００の概略図である。
画像読取装置１００は、載置台１に積載された一又は複数の搬送媒体Ｓを１つずつ装置内に経路ＲＴにて搬送してその画像を読み取り、排出トレイ２に排出する装置である。読み取る搬送媒体Ｓは、例えば、ＯＡ紙、チェック、小切手、カード類等のシートであり、厚手のシートであっても、薄手のシートであってもよい。カード類は、例えば、保険証、免許証、クレジットカード等を挙げることができる。搬送媒体Ｓには、また、パスポートなどの冊子も含まれる。
【００１７】
経路ＲＴに沿って搬送媒体Ｓを給送する給送機構としての第１搬送部１０が設けられている。第１搬送部１０は本実施形態の場合、送りローラ１１と、送りローラ１１に対向配置される分離ローラ１２と、を備え、載置台１上の搬送媒体Ｓを搬送方向Ｄ１に一つずつ順次搬送する。送りローラ１１には、モータ等の駆動部３から伝達部５を介して駆動力が伝達され、図中矢印方向（経路ＲＴに沿って搬送媒体Ｓを搬送させる正方向）に回転駆動される。伝達部５は例えば電磁クラッチであり、駆動部３からの送りローラ１１への駆動力を断続する。
【００１８】
駆動部３と送りローラ１１とを接続する伝達部５は、例えば、本実施形態では、通常時において駆動力が伝達される状態とし、搬送媒体Ｓの逆送の場合に駆動力を遮断する。送りローラ１１は伝達部５により駆動力の伝達が遮断されると、自由回転可能な状態となる。なお、このような伝達部５は、送りローラ１１を一方向のみに駆動させる場合には設けなくてもよい。
【００１９】
送りローラ１１に対向配置される分離ローラ１２は、搬送媒体Ｓを１枚ずつ分離するためのローラであり、送りローラ１１に対して一定圧で圧接している。この圧接状態を確保するため、分離ローラ１２は揺動可能に設けると共に送りローラ１１へ付勢されるように構成される。分離ローラ１２は、トルクリミッタ１２ａを介して駆動部３から駆動力が伝達され、実線矢印方向（送りローラ１１の正方向とは逆方向））に回転駆動される。
【００２０】
分離ローラ１２はトルクリミッタ１２ａにより駆動力伝達が規制されるため、送りローラ１１と当接している際は送りローラ１１に連れ回りする方向（破線矢印方向）に回転する。これにより、複数の搬送媒体Ｓが送りローラ１１と分離ローラ１２との圧接部に搬送されてきた際には、一つを残して２つ以上の搬送媒体Ｓが下流に搬送されないようにせき止められる。
【００２１】
なお、本実施形態では分離ローラ１２と送りローラ１１とで分離機構を構成したが、このような分離機構は必ずしも設けなくてもよく、経路ＲＴに搬送媒体Ｓを１つずつ順次給送する給送機構であればよい。また、分離機構を設ける場合においては、分離ローラ１２１のような構成の代わりに、搬送媒体Ｓに摩擦力を付与する分離パッドを送りローラ１１に圧接させて、同様の分離作業を持たせるようにしてもよい。
【００２２】
第１搬送部１０の搬送方向下流側にある搬送機構としての第２搬送部２０は、駆動ローラ２１と、駆動ローラ２１に従動する従動ローラ２２とを備え、第１搬送部１０から搬送されてきた搬送媒体Ｓをその下流側へ搬送する。駆動ローラ２１にはモータ等の駆動部４から駆動力が伝達され、図中矢印方向に回転駆動される。従動ローラ２２は駆動ローラ２１に対して一定圧で圧接し、駆動ローラ２１に連れ回る。この従動ローラ２２は、バネ等の付勢ユニット（不図示）によって駆動ローラ２１に対して付勢された構成としてもよい。
【００２３】
このような第２搬送部２０よりも搬送方向下流側にある第３搬送部３０は、駆動ローラ３１と、駆動ローラ３１に柔道する従動ローラ３２とを備え、第２搬送部２０から搬送されてきた搬送媒体Ｓを排出トレイ２へ搬送する。つまり、この第３搬送部３０は排出機構として機能する。駆動ローラ３１にはモータ等の駆動部４から駆動力が伝達され、図中矢印方向に回転駆動される。従動ローラ３２は駆動ローラ３１に対して一定圧で圧接し、駆動ローラ３１に連れまわる。この従動ローラ３２は、バネ等の付勢ユニット（不図示）によって駆動ローラ３１に対して付勢された構成としてもよい。
【００２４】
ここで、本実施形態の画像読取装置１００では、第２搬送部２０と第３搬送部３０との間に配置される画像読取ユニット７０によって画像の読み取りを行うため、第２搬送部２０及び第３搬送部３０は搬送媒体Ｓを定速搬送する。搬送速度は常に第１搬送部１０の搬送速度以上とすることで、先行搬送媒体Ｓに後続搬送媒体Ｓが追いついてしまう事態を確実に回避できる。例えば、本実施形態では、第２搬送部２０及び第３搬送部３０による搬送媒体Ｓの搬送速度を、第１搬送部１０による搬送媒体Ｓの搬送速度よりも速くなるように速度制御するようにした。
【００２５】
なお、第２搬送部２０及び第３搬送部３０による搬送媒体Ｓの搬送速度と、第１搬送部１０による搬送媒体Ｓの搬送速度とを同一条件とした場合でも、駆動部３を制御して後続搬送媒体Ｓの給送開始タイミングを間欠的にずらすことにより先行搬送媒体Ｓと後続搬送媒体Ｓとの間に最低限の間隔を形成することも可能である。
【００２６】
第１搬送部１０と第２搬送部２０との間に配置される重送検出センサ４０は、静電気等で紙などの搬送媒体Ｓ同士が密着し、第１搬送部１０を通過してきた場合（つまり重なって搬送される重送状態の場合）に、これを検出するための検出センサ（シートの挙動や状態を検出するセンサ）の一例である。重送検出センサ４０としては、種々のものが利用可能であるが本実施形態の場合には超音波センサであり、超音波の発信部４１とその受信部４２とを備え、紙等の搬送媒体Ｓが重送されている場合と１つずつ搬送されている場合とで、搬送媒体Ｓを通過する超音波の減衰量が異なることを原理として重送を検出する。
【００２７】
このような重送検出センサ４０よりも搬送方向下流側に配置される媒体検出センサ５０は第２搬送部２０よりも上流側で、第１搬送部１０よりも下流側に配置された上流側の検出センサ（シートの挙動や状態を検出するセンサ）としての一例であり、第１搬送部１０により搬送される搬送媒体Ｓの位置、詳細には、媒体検出センサ５０の検出位置に搬送媒体Ｓの端部が到達又は通過したか否かを検出する。媒体検出センサ５０としては、種々のものが利用可能であるが、本実施形態の場合には光学センサであり、発光部５１とその受光部５２とを備え、搬送媒体Ｓの到達又は通過により受光強度（受光量）が変化することを原理として搬送媒体Ｓを検出する。
【００２８】
本実施形態の場合、搬送媒体Ｓの先端が媒体検出センサ５０で検出されると、搬送媒体Ｓが重送検出センサ４０により重送を検出可能な位置に到達しているように、上記の媒体検出センサ５０は重送検出センサ４０の近傍においてその下流側に設けられている。なお、この媒体検出センサ５０は、上記の光学センサに限定されず、例えば、搬送媒体Ｓの端部が検知できるセンサ（イメージセンサ等）を用いてもよいし、経路ＲＴに突出したレバー型のセンサでもよい。
【００２９】
媒体検出センサ５０とは別の媒体検出センサ６０は画像読取ユニット７０よりも上流側で、第２搬送部２０よりも下流側に配置された下流側の検出センサとしての一例であり、第２搬送部２０により搬送される搬送媒体Ｓの位置を検出する。媒体検出センサ６０としては、種々のものが利用可能であるが、本実施形態の場合、媒体検出センサ５０と同様に光センサであり、発光部６１と受光部６２とを備え、搬送媒体Ｓの到達又は通過により受光強度（受光量）が変化することを原理として搬送媒体Ｓを検出する。なお、本実施形態では、第２搬送部２０の搬送方向上流側と下流側のそれぞれに媒体検出センサ５０、６０を配置したが、何れか一方だけでもよい。
【００３０】
媒体検出センサ６０よりも下流側にある画像読取ユニット７０は、例えば、光学的に走査し、電気信号に変換して画像データとして読み取るものであり、内部にＬＥＤ等の光源、イメージセンサ、レンズアレー等を備えている。本実施形態の場合、画像読取ユニット７０は経路ＲＴの両側に一つずつ配置されており、搬送媒体Ｓの表裏面を読み取る。しかし、経路ＲＴの片側にのみ一つ配置して、搬送媒体Ｓの片面のみを読み取る構成としてもよい。また、本実施形態では、画像読取ユニット７０を経路ＲＴの両側に対向配置した構造としているが、例えば、経路ＲＴの方向に間隔をあけて配置してもよい。
【００３１】
図３を参照して制御部８について説明する。図３は、実施形態に係る画像読取装置１００のハードウェア構成を示すＡの制御部８のブロック図である。制御部８はＣＰＵ８１、記憶部８２、操作部８３、通信部８４、アクチュエータ８５、インターフェース部８６、画像メモリ８９及び帳票処理部９０を備える。ＣＰＵ８１は記憶部８２に記憶されたプログラムを実行することにより、画像読取装置１００全体の制御を行う。記憶部８２は例えばＲＡＭ、ＲＯＭ等から構成される。操作部８３は、例えば、スイッチやタッチパネル等で構成され、操作者からの操作を受け付ける。
【００３２】
通信部８４は、外部装置との情報通信を行うインターフェースである。外部装置としてＰＣ（ユーザ端末）を想定した場合、通信部８４としては、例えば、ＵＳＢインターフェースやＳＣＳＩインターフェースを挙げることができる。また、このような有線通信のインターフェースの他、通信部８４は無線通信のインターフェースとしてもよく、有線通信、無線通信の双方のインターフェースを備えていてもよい。インターフェース部８６は、アクチュエータ８５やセンサ８７とのデータの入出力を行うＩ／Ｏインターフェースである。アクチュエータ８５には、駆動部３、駆動部４、伝達部５等が含まれる。センサ８７には、重送検出センサ４０、媒体検出センサ５０及び６０、画像読取ユニット７０等が含まれる。画像メモリ８９は、センサ８７で読み取った画像データを保存する。帳票処理部９０は、画像メモリ８９に保存されている画像データから光学文字認識処理を行い、帳票の種類を認識し、画像データに情報を付加する。
【００３３】
ここで、画像読取装置１００の基本的な動作について説明する。制御部８は、例えば、画像読取装置１００が接続されたユーザ端末２００から画像読み取りの開始指示を受信すると、第１乃至第３搬送部１０乃至３０の駆動を開始する。載置台１に積載された搬送媒体Ｓはその最も下に位置する搬送媒体Ｓから１つずつ搬送される。搬送の途中で搬送媒体Ｓは重送検出センサ４０により重送の有無が判定され、重送が無いと判定されると搬送が継続される。なお、重送があると判定された場合には、搬送を停止するか、第１搬送部１０による後続搬送媒体Ｓの取り込みを停止して、重送状態にある搬送媒体Ｓをそのまま排出するようにしてもよい。
【００３４】
制御部８は、媒体検出センサ６０の検出結果に基づくタイミングで、第２搬送部２０により搬送されてきた搬送媒体Ｓの、画像読取ユニット７０による画像の読み取りを開始し、読み取った画像を画像メモリ８９に保存し、保存されている画像データから光学文字認識処理を行い、帳票の種類を認識し、画像データに情報を付加する。その後、画像データを順次ユーザ端末２００へ送信する。画像が読み取られた搬送媒体Ｓは、第３搬送部３０により排出トレイ２に排出されてその搬送媒体Ｓの画像読取処理が終了する。
【００３５】
＜ユーザ端末の構成＞
図４は、ユーザ端末２００に適用可能なコンピュータのハードウェア構成例を示すブロック図である。
ＣＰＵ４１は、ＲＯＭ４２やＲＡＭ４３に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行う。ＲＯＭ４２には、本コンピュータの設定データや、ブートプログラムなどが格納されている。ＣＰＵ８１は、ユーザ端末２００が行うものとして後述する各処理を実行する。
【００３６】
ＲＡＭ４３は、ＨＤＤ（ハードディスクドライブ）４４からロードされたコンピュータプログラムやデータ、インターフェース４７を介して外部から受信したデータなどを一時的に記憶するためのエリアを有する。更に、ＲＡＭ４３は、ＣＰＵ４１が各種の処理を実行する際に用いるワークエリアを有する。即ち、ＲＡＭ４３は、各種のエリアを適宜提供することができる。
【００３７】
ＨＤＤ４４には、ＯＳ（オペレーティングシステム）や、本コンピュータを適用した装置が行う各種の処理をＣＰＵ４１に実行させるためのコンピュータプログラムやデータが保存されている。係るコンピュータプログラムには、ユーザ端末２００が行うものとして後述する各処理をＣＰＵ４１に実行させるためのコンピュータプログラムが含まれている。ＨＤＤ４４に保存されているコンピュータプログラムやデータは、ＣＰＵ４１による制御に従って適宜ＲＡＭ４３にロードされ、ＣＰＵ４１による処理対象となる。また、ＨＤＤ４４には、クロスドメイン通信を許可する許可設定（許可ドメイン、アクセストークン等）が記録されている。
【００３８】
入力装置４５は、キーボードやマウスなどにより構成されており、本コンピュータの操作者は、この入力装置４５を操作することで、各種の指示をＣＰＵ４１に対して入力することができる。表示装置４６は、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ４１による処理結果を画像や文字などでもって表示することができる。インターフェース４７は、様々なインターフェースで構成されている。例えば、本コンピュータをネットワークに接続する為のネットワークインターフェース、本コンピュータに画像読取装置１００を接続する為のデバイスインターフェースを含む。４８は上述の各部を繋ぐバスである。本実施形態では説明を簡単にするために、ユーザ端末２００の何れも図４に示した構成を有するコンピュータであるものとして説明するが、コンピュータの構成については係る構成に限定するものではない。
【００３９】
図２に示すように、ユーザ端末２００は、ユーザによって操作され、ブラウザ（Ｗｅｂブラウザ）２０１、ＳｃａｎＳｅｒｖｅｒ２０２、ドライバ２０５を備える。ユーザは、ユーザ端末２００内のブラウザ２０１を介して、Ｗｅｂアプリケーション（Ｗｅｂアプリケーションサービス提供システム３００、Ｗｅｂストレージシステム４００）を利用することができる。
【００４０】
ＳｃａｎＳｅｒｖｅｒ２０２は、Ｗｅｂサーバ部２０３、画像読取装置操作部２０４を備える。ブラウザ２０１は、Ｗｅｂアプリケーション（Ｗｅｂアプリケーションサービス提供システム３００、Ｗｅｂストレージシステム４００）と通信を行う。ＳｃａｎＳｅｒｖｅｒ２０２は、Ｗｅｂアプリケーション（Ｗｅｂアプリケーションサービス提供システム３００、Ｗｅｂストレージシステム４００）と通信を行うブラウザ２０１が動作するユーザ端末２００内で動作するプログラム（Ｗｅｂサーバプログラム）である。ＳｃａｎＳｅｒｖｅｒ２０２のＷｅｂサーバ部２０３は、ファイアウォール（不図示）による通信のブロックを回避し、どのユーザ端末上のブラウザからでも名前解決可能なＷｅｂサーバとして動作するために、ユーザ端末２００においてホスト名ｌｏｃａｌｈｏｓｔで待ち受けを行ってもよい。
【００４１】
ＳｃａｎＳｅｒｖｅｒ２０２は、ユーザ端末２００に接続された画像読取装置１００を利用して、画像読込処理等を行うエンドポイント（画像読取装置操作部２０４）と、リクエスト送信元であるＷｅｂシステムとは異なるドメインのＷｅｂシステムと通信するエンドポイント（Ｗｅｂサーバ部２０３）を提供する。Ｗｅｂサーバ部２０３へのリクエストによって、画像読取装置操作部２０４へ画像読取装置１００の操作を指示できる。画像読取装置操作部２０４は、ユーザ端末２００に接続された画像読取装置１００を操作する。ドライバ２０５は、画像読取装置１００を制御するためのソフトウェアである。
【００４２】
本実施形態において、ＳｃａｎＳｅｒｖｅｒ２０２はドメインＣに属し、Ｗｅｂアプリケーションサービス提供システム３００はドメインＡに属することから、それぞれ異なるドメインに属する。そのため、ユーザ端末２００内のブラウザ２０１で動作する、Ｗｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーションが、ＳｃａｎＳｅｒｖｅｒ２０２のＷｅｂサーバ部２０３と通信しようとする場合は、クロスドメインリクエストとなる。
【００４３】
従って、ブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーションは、ＳｃａｎＳｅｒｖｅｒ２０２と通信する際、クロスドメインリクエストとなる為、ＣＯＲＳ標準仕様に従ったリクエスト送信（ＨＴＴＰメッセージ送信）を試みる。なお、ＨＴＴＰメッセージには、ＨＴＴＰＳ通信によるリクエスト／レスポンスも含まれる。ここで、図５と図６を用いて、クロスドメインリクエストを許可し、クロスドメイン通信を可能にする処理について具体的に説明する。
【００４４】
＜ブラウザ２０１の処理＞
図５は、ブラウザ２０１の処理を示すフローチャートである。ユーザ端末２００を操作しているユーザが、Ｗｅｂアプリケーションサービス提供システム３００のユーザである場合、ユーザはユーザ端末２００内のブラウザ２０１から、Ｗｅｂアプリケーションサービス提供システム３００にアクセスを行う。ブラウザ２０１は、Ｗｅｂアプリケーションサービス提供システム３００のドメイン（ドメインＡ）にアクセスする（Ｓ５００１）。
【００４５】
ブラウザ２０１は、異なるドメイン（例えば、ＳｃａｎＳｅｒｖｅｒ２０２のドメイン（ドメインＣ））へのリクエスト送信（ＨＴＴＰメッセージ送信）か否かを判定する（Ｓ５００２）。異なるドメインへのリクエスト送信ではない場合（Ｓ５００２のＮＯ）、処理を繰り返す。
【００４６】
異なるドメイン（ＳｃａｎＳｅｒｖｅｒ２０２のドメイン（ドメインＣ））へのリクエスト送信である場合（Ｓ５００２のＹＥＳ）、ユーザ端末２００内のブラウザ２０１は、リクエスト内のＯｒｉｇｉｎヘッダーに、Ｗｅｂアプリケーションサービス提供システム３００のドメイン（ドメインＡ）を付与し、ＳｃａｎＳｅｒｖｅｒ２０２へＣＯＲＳの仕様に従ったリクエスト送信（ＨＴＴＰメッセージ送信）を行う（Ｓ５００３）。だたしＳｃａｎＳｅｒｖｅｒ２０２へのリクエストについては、ＨＴＴＰだけでなく、ＷｅｂＳｏｃｋｅｔや別のプロトコルであってもよい。
【００４７】
ブラウザ２０１は、ＳｃａｎＳｅｒｖｅｒ２０２から、正常レスポンスを受信したか否か判定する（Ｓ５００４）。ＳｃａｎＳｅｒｖｅｒ２０２にて、Ｗｅｂアプリケーションサービス提供システム３００のドメイン（ドメインＡ）が許可されている場合は正常のレスポンスを受信し、許可されていない場合はエラーのレスポンスを受信する。
【００４８】
ブラウザ２０１（ブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーション）は、ＳｃａｎＳｅｒｖｅｒ２０２から正常レスポンスを受信した場合（Ｓ５００４のＹＥＳ）、ＳｃａｎＳｅｒｖｅｒ２０２との通信が可能となる（Ｓ５００５）。すなわち、クロスドメイン通信（ドメインＡとドメインＣの通信）が可能となる。ブラウザ２０１（ブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーション）は、ＳｃａｎＳｅｒｖｅｒ２０２からエラーレスポンスを受信した場合（Ｓ５００４のＮＯ）、ＳｃａｎＳｅｒｖｅｒ２０２との通信を行うことができない。
【００４９】
＜ＳｃａｎＳｅｒｖｅｒ２０２の処理＞
図６は、ＳｃａｎＳｅｒｖｅｒ２０２の処理を示すフローチャートである。開始されたＳｃａｎＳｅｒｖｅｒ２０２は（Ｓ６００１）、ＣＯＲＳに従ったリクエスト（ＨＴＴＰメッセージ）を受信したか否か判定する（Ｓ６００２）。受信していない場合（Ｓ６００２のＮＯ）、処理を繰り返す。
【００５０】
ＣＯＲＳに従ったリクエストを受信した場合（Ｓ６００２のＹＥＳ）、リクエスト内のＯｒｉｇｉｎヘッダーから、リクエスト元（ブラウザ２０１）ドメイン（ドメインＡ）を取得する（Ｓ６００３）。取得したドメインが許可されているドメインとして登録されているか（許可設定されているか）否かを判定する（Ｓ６００４）。登録されている場合（Ｓ６００４のＹＥＳ）、リクエスト元（ブラウザ２０１）ドメイン（ドメインＡ）に正常のレスポンスを送信する（Ｓ６００５）。
【００５１】
ＳｃａｎＳｅｒｖｅｒ２０２に許可されているドメインが登録されていない場合（Ｓ６００４のＮＯ）、ＳｃａｎＳｅｒｖｅｒ２０２は、Ｏｒｉｇｉｎヘッダーに含まれていたドメインを、許可ドメインに登録可能か否かを判定する（Ｓ６００６）。登録可能か否かの判断は、例えば、予め許可ドメインを登録できる数を登録しておき、その時点で登録されている数が登録できる数以下ならば登録可能とし、登録できる数以上ならば登録不可とする。また、予め許可できないドメインを登録しておき（例えば、ブラックリスト）、Ｏｒｉｇｉｎヘッダーに含まれていたドメインが許可できないドメインであれば登録不可とし、それ以外であれば登録可能とする。また、予め許可できるドメインを登録しておき（例えば、ホワイトリスト）、Ｏｒｉｇｉｎヘッダーに含まれていたドメインが許可できるドメインであれば登録可能とし、それ以外であれば登録不可とする。
【００５２】
また、許可されているドメインの設定は、リクエスト毎に毎回必要なものではなく、事前に登録されていれば省略することもできる。Ｓ６００６にて、登録可能か否かの判断を行うことにより、ユーザへの不要な確認メッセージの表示を削減することができる。登録できない場合（Ｓ６００６のＮＯ）、ＣＯＲＳによるアクセスが禁止されている動作として、リクエスト元（ブラウザ２０１）ドメイン（ドメインＡ）に、エラーレスポンスを送信する（Ｓ６０１０）。
【００５３】
登録可能な場合（Ｓ６００６のＹＥＳ）、ＣＯＲＳ設定の許可確認メッセージを、ユーザ端末２００に表示する（Ｓ６００７）。ＳｃａｎＳｅｒｖｅｒ２０２は、Ｗｅｂアプリケーションサービス提供システム３００からのリクエストがユーザから許可されたか否か判定する（Ｓ６００８）。許可されていない場合（Ｓ６００８のＮＯ）、Ｓ６０１０に進む。
【００５４】
許可された場合（Ｓ６００８のＹＥＳ）、そのドメイン（ドメインＡ）を許可されているドメインとして設定して登録し（Ｓ６００９）、Ｓ６００５に進む。
【００５５】
なお、Ｓ６００６乃至Ｓ６００９の処理を省略し、許可ドメインに登録されていない場合（Ｓ６００４のＮＯ）は、エラーレスポンスを送信する（Ｓ６０１０）処理としてもよい。また、受信したリクエストは、Ｓ６００４とS６００６の処理を省略し、ＣＯＲＳ設定の許可確認メッセージをユーザ端末２００に表示する（Ｓ６００７）処理としてもよい。  また、取得したドメインが許可されているドメインか否か（Ｓ６００４）の処理を省略し、正常レスポンスを送信する（Ｓ６００５）処理としてもよい。
【００５６】
＜画像読取処理結果を含む情報の取得＞
従来技術の認証用のプロトコルであるＯＡｕｔｈ２．０等の認証情報（例えば、アクセストークン）によって、Ｗｅｂストレージシステム４００へのアクセスが可能である場合、ＳｃａｎＳｅｒｖｅｒ２０２は、画像読取処理結果（読み取った画像データ）を含む情報を、Ｗｅｂストレージシステム４００（ドメインＢ）に送信する際にＷｅｂストレージシステム４００のアクセストークンが必要となる。そこで、ユーザ端末２００内のブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーションは、画像読取処理を開始する前に、ＳｃａｎＳｅｒｖｅｒ２０２を介して、Ｗｅｂストレージシステム４００のアクセストークンを取得し記憶する。
【００５７】
図７は、実施形態に係るシステムの機能構成例を示すシーケンス図である。ユーザ１０００は、ブラウザ２０１を介して認証開始操作を指示する（Ｓ１００１０）。ブラウザ２０１は、Ｗｅｂストレージサービス４００へ認証画面要求を送信する（Ｓ１００１１）。Ｗｅｂストレージサービス４００は、ブラウザ２０１へ認証画面の返答を送信する（Ｓ１００１２）。
【００５８】
ユーザ１０００は、ブラウザ２０１を介して認証操作を指示する（Ｓ１００２０）。ブラウザ２０１は、Ｗｅｂストレージサービス４００へ認証情報の送信と認可画面要求を送信する（Ｓ１００２１）。Ｗｅｂストレージサービス４００は、ブラウザ２０１へ認可画面の返答を送信する（Ｓ１００２２）。
【００５９】
ユーザ１０００は、ブラウザ２０１を介して認可操作を指示する（Ｓ１００３０）。ブラウザ２０１は、Ｗｅｂストレージサービス４００へ認可情報の送信と認可コード取得要求を送信する（Ｓ１００３１）。Ｗｅｂストレージサービス４００は、ブラウザ２０１へ認可コードとリダイレクトを送信する（Ｓ１００３２）。ブラウザ２０１は、ＳｃａｎＳｅｒｖｅｒ２０２へアクセストークン取得要求を送信する（Ｓ１００３３）。ＳｃａｎＳｅｒｖｅｒ２０２は、Ｗｅｂストレージサービス４００へアクセストークン取得要求を送信する（Ｓ１００３４）。Ｗｅｂストレージサービス４００は、ＳｃａｎＳｅｒｖｅｒ２０２へアクセストークンの返答を送信する（Ｓ１００３５）。ＳｃａｎＳｅｒｖｅｒ２０２は、ブラウザ２０１へアクセストークンの返答を送信する（Ｓ１００３６）。ブラウザ２０１は、受信したアクセストークンを記憶する。なお、アクセストークンは、ＳｃａｎＳｅｒｖｅｒ２０２にて記憶してもよい。
【００６０】
ユーザは、ブラウザ２０１を介して画像読取処理を指示する（Ｓ１００５０）。指示には、スキャン設定（例えば、保存先、解像度、白黒／カラー選択、読取サイズ、ファイル形式等）の情報が含まれる。図８は、ブラウザ２０１で表示する画面の一例を示す図である。例えば、書類のボタンを選択した場合、指定のスキャン設定（白黒、３００ｄｐｉ、Ａ４サイズ、両面）にて画像の読取を指示する。なお、ブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーションは、図８に限定されず、ユーザにて自由にカスタマイズすることが可能である。
【００６１】
ユーザ端末２００内のブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーションは、ＳｃａｎＳｅｒｖｅｒ２０２に、Ｓ１００３５にて取得したアクセストークンと、スキャン設定情報と、画像読取処理を開始するリクエスト（画像読取に関するリクエスト）を送信する（Ｓ１００５１）。ＳｃａｎＳｅｒｖｅｒ２０２は、Ｓ１００３５にて取得したアクセストークンを保持する。ＳｃａｎＳｅｒｖｅｒ２０２は、画像読取装置１００を占有するために、リクエスト元に一意な接続ＩＤ（識別情報）を発行することで、利用元を固定するロック機能を持っていてもよい。
【００６２】
図９はユーザ端末２００内のブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーション３０１がロック機能を利用して画像読取処理を行う一例を示した図である。Ｗｅｂアプリケーション３０１は、画像読取装置１００で画像読取処理を開始する前に、ＳｃａｎＳｅｒｖｅｒ２０２に新規の接続ＩＤの発行を依頼する。ＳｃａｎＳｅｒｖｅｒ２０２は、新規の接続ＩＤを発行した場合、接続ＩＤを保持しない他のアプリケーション３０２からのＳｃａｎＳｅｒｖｅｒ２０２の使用を拒否する。接続ＩＤを伴った画像読取処理を開始し、画像読取装置１００の利用が終了した時点で、Ｗｅｂアプリケーション３０１は、接続ＩＤを伴った切断リクエストを送信する。ＳｃａｎＳｅｒｖｅｒ２０２は、切断リクエストを受信すると、既存の接続ＩＤを破棄し、新規の接続ＩＤ発行を待ち受ける状態に戻る。
【００６３】
なお、ロック機能において発行された接続ＩＤを知るＷｅｂアプリケーション３０１が接続ＩＤを伴った切断依頼を行う前に終了してしまった場合、図１０のようにＳｃａｎＳｅｒｖｅｒ２０２はロックされたままになってしまい、他のＷｅｂアプリケーション３０２へ接続ＩＤを発行することができない状態になってしまう。この為、ＳｃａｎＳｅｒｖｅｒ２０２は一定時間で発行した接続ＩＤを破棄可能にする機能を保持してもよい。図１１は一定時間で発行した接続ＩＤを破棄可能にした場合を示した図である。一定時間を過ぎた後、新規の接続要求で接続ＩＤを新たに発行している場合は、既存の接続ＩＤによる操作は拒否する。このとき、新たな接続要求を受信した場合には、既存の接続ＩＤを破棄した上で、新たな接続ＩＤを発行するようにしてもよい。しかし、図１２のように一定時間を過ぎた後でも、新規の接続要求がなく、既存の接続ＩＤでの操作リクエストが来た場合、リクエストを受け付けてもよい。またロックが解除される一定時間はＷｅｂアプリケーションから指定してもよい。
【００６４】
ＳｃａｎＳｅｒｖｅｒ２０２は、ドライバ２０５にスキャン設定情報と、画像読取処理を開始するリクエストを送信し、ドライバ２０５は、画像読取装置１００にスキャン設定情報と画像読取処理を開始するリクエストを送信する。（Ｓ１００５２）。
【００６５】
画像読取装置１００は、図１で説明したように、第１乃至第３搬送部１０乃至３０の駆動を開始する。載置台１に積載された搬送媒体Ｓはその最も下に位置する搬送媒体Ｓから１つずつ搬送される。制御部８は、媒体検出センサ６０の検出結果に基づくタイミングで、第２搬送部２０により搬送されてきた搬送媒体Ｓについて、受信したスキャン設定情報に基づいて画像読取ユニット７０による画像の読み取りを開始する。読み取った画像は、画像メモリ８９に保存し、保存されている画像データから光学文字認識処理を行い、帳票の種類を認識し、画像データに帳票の種類の情報を付加する。その後、取得した画像データを順次ドライバ２０５に送信する。ドライバ２０５は、取得した画像データをＳｃａｎＳｅｒｖｅｒ２０２へ送信する（Ｓ１００５３）。画像が読み取られた搬送媒体Ｓは、第３搬送部３０により排出トレイ２に排出されてその搬送媒体Ｓの画像読取処理が終了する。
【００６６】
画像読取装置１００は、搬送媒体Ｓの読み取りに失敗することがある。その原因には、搬送媒体Ｓが画像読取装置１００に詰まってしまう場合や、画像読取装置１００のカバーが開かれた結果、読み取りが行えない状態になる場合などが考えられる。図１３のように画像データの読み取りに失敗した場合、画像読取装置１００は画像データではなく、読み取り失敗原因をドライバ２０５に送信する。ドライバ２０５は、画像読み取り失敗とその原因を、ＳｃａｎＳｅｒｖｅｒ２０２へ送信する。ＳｃａｎＳｅｒｖｅｒ２０２では、画像読み取り処理が失敗し、画像データを取得することなく終了する。その後、画像読取装置１００の状態がユーザ端末２００と接続している限り、ＳｃａｎＳｅｒｖｅｒ２０２は定期的に画像読取装置１００の状態をドライバ２０５に確認し、次の画像読み取り処理が開始できる状態であるかを保持してもよい。また、画像読取装置１００の状態を確認する処理は一定の期間もしくは回数で終了してもよい。
【００６７】
ＳｃａｎＳｅｒｖｅｒ２０２は、ユーザ端末２００内のブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーションから指定された、ＳｃａｎＳｅｒｖｅｒ２０２に保持されているアクセストークンと、画像読取処理結果（画像データ）を含む情報のリクエストを、保存先であるＷｅｂストレージサービス６００６に送信する（Ｓ１００５４）。画像読取処理結果を含む情報とは、例えば、ユーザと画像データを対応付けた情報、画像データのＯＣＲ情報、時間等である。Ｗｅｂストレージサービス６００６は、ＳｃａｎＳｅｒｖｅｒ２０２にレスポンスを送信する（Ｓ１００５５）。
【００６８】
その後、ユーザ端末２００内のブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーションは、画像読取処理結果を含む情報と送信結果の要求を適宜ＳｃａｎＳｅｒｖｅｒ２０２に送信し（Ｓ１００５６）、ＳｃａｎＳｅｒｖｅｒ２０２は、レスポンスをブラウザ２０１に送信する（Ｓ１００５７）。
【００６９】
従って、ユーザ端末２００内のブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００（ドメインＡ）のＷｅｂアプリケーションは、ＳｃａｎＳｅｒｖｅｒ２０２との通信のみで、画像読取処理とＷｅｂストレージシステム４００（ドメインＢ）への画像読取処理結果（読み取った画像データ）を含む情報の送信を行うことができる。
【００７０】
なお、ＳｃａｎＳｅｒｖｅｒ２０２が画像読取処理結果や情報を送信する際に、Ｗｅｂストレージシステム４００がアクセストークンを要求しない場合、図７におけるアクセストークン取得の処理（Ｓ１００１０〜Ｓ１００３６）を省略することが可能である。
【００７１】
本実施例によれば、ＳｃａｎＳｅｒｖｅｒ２０２への画像読取処理を指示する通信を行う際に、ブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーションは、異なるドメインであるＷｅｂストレージシステム４００から取得した認証情報（例えば、アクセストークン）を、ＳｃａｎＳｅｒｖｅｒ２０２へ付与することで、ＳｃａｎＳｅｒｖｅｒ２０２は、画像読取処理結果を含む情報をＷｅｂストレージシステム４００へ送信することができる。
【００７２】
また、ＳｃａｎＳｅｒｖｅｒ２０２からＷｅｂストレージシステム４００へのリクエスト送信は、ブラウザ２０１からではなく、一般的なアプリケーションからの通信であるため、クロスドメインアクセスに該当しない。従って、ブラウザ２０１で動作するＷｅｂアプリケーションサービス提供システム３００のＷｅｂアプリケーションは、ユーザ端末２００内のＳｃａｎＳｅｒｖｅｒ２０２を経由することで、Ｗｅｂアプリケーションサービス提供システム３００とは異なるドメインであるＷｅｂストレージシステム４００と直接通信を行わずに、Ｗｅｂストレージシステム４００に画像読取装置１００より取得した画像読取処理結果（画像データ）を含む情報の送信を行うことができる。
【００７３】
ここまでドメインＡとドメインＢは異なることが前提だったが、同じでもよい。例えば、同じドメインの中にＷｅｂアプリケーションと画像読取処理結果を含む情報を受信するためのＵＲＬをそれぞれ用意している場合などである。 
【００７４】
（その他の実施例）  
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００７５】
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
【００７６】
本願は、２０１６年１１月３０日提出の日本国特許出願特願２０１６−２３３６１２を基礎として優先権を主張するものであり、その記載内容の全てを、ここに援用する。
【図１】
2019075144.tif 000003
【図２】
2019075144.tif 000004
【図３】
2019075144.tif 000005
【図４】
2019075144.tif 000006
【図５】
2019075144.tif 000007
【図６】
2019075144.tif 000008
【図７】
2019075144.tif 000009
【図８】
2019075144.tif 000010
【図９】
2019075144.tif 000011
【図１０】
2019075144.tif 000012
【図１１】
2019075144.tif 000013
【図１２】
2019075144.tif 000014
【図１３】
2019075144.tif 000015
【手続補正書】
【提出日】平成30年12月19日(2018.12.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
情報処理装置であって、
Ｗｅｂブラウザと、
Ｗｅｂサーバプログラムと、
前記情報処理装置に接続されているデバイスとの間で通信を行うドライバと、
を有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信手段と、
前記ＨＴＴＰメッセージを受信した前記第一の受信手段から、前記デバイスに関するリクエストを前記ドライバに送信する第一の送信手段と、
前記ドライバから前記デバイスにて出力された情報を受信する第二の受信手段と、
前記第二の受信手段にて受信した情報と、ネットワークに接続された外部装置に認証または認可されるための情報とを、該外部装置に送信する第二の送信手段と
を有する情報処理装置。
【請求項２】
情報処理装置における制御方法であって、
前記情報処理装置は、
Ｗｅｂブラウザと、
Ｗｅｂサーバプログラムと、
前記情報処理装置に接続されているデバイスとの間で通信を行うドライバと、
を有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信工程と、
前記ＨＴＴＰメッセージを前記第一の受信工程にて受信してから、前記デバイスに関するリクエストを前記ドライバに送信する第一の送信工程と、
前記ドライバから前記デバイスにて出力された情報を受信する第二の受信工程と、
前記第二の受信工程にて受信した情報と、ネットワークに接続された外部装置に認証または認可されるための情報とを、該外部装置に送信する第二の送信工程と
を有する情報処理装置の制御方法。
【請求項３】
請求項１に記載された情報処理装置が備える各手段としてコンピュータを機能させることを特徴とするプログラム。
【請求項４】
情報処理システムであって、
Ｗｅｂブラウザと、Ｗｅｂサーバプログラムとを有する情報処理装置と、
前記情報処理装置に接続されるデバイスと、
を有し、
前記情報処理装置は、
前記デバイスとの間で通信を行うドライバと、
を有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信手段と、
前記ＨＴＴＰメッセージを受信した前記第一の受信手段から、前記ドライバに送信する第一の送信手段と、
前記ドライバから前記デバイスにて出力された情報を受信する第二の受信手段と、
前記第二の受信手段にて受信した情報と、ネットワークに接続された外部装置に認証または認可されるための情報とを、該外部装置に送信する第二の送信手段と
を有する情報処理システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
本発明に係る情報処理装置は、Ｗｅｂブラウザと、Ｗｅｂサーバプログラムと、前記情報処理装置に接続されているデバイスとの間で通信を行うドライバと、を有し、前記Ｗｅｂサーバプログラムは、前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信手段と、前記ＨＴＴＰメッセージを受信した前記第一の受信手段から、前記デバイスに関するリクエストを前記ドライバに送信する第一の送信手段と、前記ドライバから前記デバイスにて出力された情報を受信する第二の受信手段と、前記第二の受信手段にて受信した情報と、ネットワークに接続された外部装置に認証または認可されるための情報とを、該外部装置に送信する第二の送信手段とを有する。
【手続補正書】
【提出日】平成31年3月6日(2019.3.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
情報処理装置であって、
Ｗｅｂブラウザと、
Ｗｅｂサーバプログラムと、
前記情報処理装置に接続されているデバイスとの間で通信を行うドライバと、
を有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信手段、
前記ＨＴＴＰメッセージを受信した前記第一の受信手段から、前記デバイスに関するリクエストを前記ドライバに送信する第一の送信手段、
前記ドライバから前記デバイスにて出力された情報を受信する第二の受信手段、
前記第二の受信手段にて受信した情報と、ネットワークに接続された外部装置に認証または認可されるための情報とを、該外部装置に送信する第二の送信手段
として前記情報処理装置を機能させることを特徴とする情報処理装置。
【請求項２】
情報処理装置における制御方法であって、
前記情報処理装置は、
Ｗｅｂブラウザと、
Ｗｅｂサーバプログラムと、
前記情報処理装置に接続されているデバイスとの間で通信を行うドライバと、
を有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信工程と、
前記ＨＴＴＰメッセージを前記第一の受信工程にて受信してから、前記デバイスに関するリクエストを前記ドライバに送信する第一の送信工程と、
前記ドライバから前記デバイスにて出力された情報を受信する第二の受信工程と、
前記第二の受信工程にて受信した情報と、ネットワークに接続された外部装置に認証または認可されるための情報とを、該外部装置に送信する第二の送信工程と
を前記情報処理装置に実行させることを特徴とする情報処理装置の制御方法。
【請求項３】
Ｗｅｂブラウザと、接続されているデバイスとの間で通信を行うドライバとを有する情報処理装置を、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信手段、
ＨＴＴＰメッセージを受信した前記第一の受信手段から、前記デバイスに関するリクエストをドライバに送信する第一の送信手段、
前記ドライバから前記デバイスにて出力された情報を受信する第二の受信手段、
前記第二の受信手段にて受信した情報と、ネットワークに接続された外部装置に認証または認可されるための情報とを、該外部装置に送信する第二の送信手段
として機能させるためのプログラム。
【請求項４】
情報処理システムであって、
Ｗｅｂブラウザと、Ｗｅｂサーバプログラムとを有する情報処理装置と、
前記情報処理装置に接続されるデバイスと、
を有し、
前記情報処理装置は、
前記デバイスとの間で通信を行うドライバを有し、
前記Ｗｅｂサーバプログラムは、
前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信手段、
前記ＨＴＴＰメッセージを受信した前記第一の受信手段から、前記ドライバに送信する第一の送信手段、
前記ドライバから前記デバイスにて出力された情報を受信する第二の受信手段、
前記第二の受信手段にて受信した情報と、ネットワークに接続された外部装置に認証または認可されるための情報とを、該外部装置に送信する第二の送信手段
として前記情報処理装置を機能させることを特徴とする情報処理システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
本発明に係る情報処理装置は、Ｗｅｂブラウザと、Ｗｅｂサーバプログラムと、前記情報処理装置に接続されているデバイスとの間で通信を行うドライバと、を有し、前記Ｗｅｂサーバプログラムは、前記Ｗｅｂブラウザで実行されるＷｅｂアプリケーションからＨＴＴＰメッセージを受信する第一の受信手段、前記ＨＴＴＰメッセージを受信した前記第一の受信手段から、前記デバイスに関するリクエストを前記ドライバに送信する第一の送信手段、前記ドライバから前記デバイスにて出力された情報を受信する第二の受信手段、前記第二の受信手段にて受信した情報と、ネットワークに接続された外部装置に認証または認可されるための情報とを、該外部装置に送信する第二の送信手段として前記情報処理装置を機能させることを特徴とする。