(57)【特許請求の範囲】
【請求項１】
ユーザの認証を行うとともに，該認証が終了したことを示す認証情報を発行するプロキシを経由して，情報資源所在情報で指定したサーバにアクセスする処理を，コンピュータに実行させるためのプログラムであって，
前記コンピュータに，
前記認証情報を含まない第一の情報資源所在情報を指定した前記サーバへのリクエストを前記プロキシに送信するステップと，
前記プロキシから，前記第一の情報資源所在情報と前記認証情報とを含む第二の情報資源所在情報を取得するステップと，
前記第一の情報資源所在情報と，前記第二の情報資源所在情報との差分を抽出するステップと，
前記第二の情報資源所在情報に基づいて，前記サーバが提供するファイルを前記プロキシ経由で取得するステップと，
前記取得したファイルに基づいて，画面を出力するステップと，
前記ユーザから，前記ファイルに含まれる第三の情報資源所在情報に対する選択を受け付けるステップと，
前記第三の情報資源所在情報に対して，前記抽出した差分を付加した第四の情報資源所在情報を生成するステップと，
前記第四の情報資源所在情報を指定した他のリクエストを，前記プロキシに送信するステップとを
実行させることを特徴とするサーバアクセスプログラム。
【請求項２】
前記ファイルは，バイナリファイルである
ことを特徴とする請求項１に記載のサーバアクセスプログラム。
【請求項３】
ユーザの認証を行うとともに，該認証が終了したことを示す認証情報を発行するプロキシを経由して，情報資源所在情報で指定したサーバにアクセスする処理を行うサーバアクセス装置であって，
前記プロキシに送信した前記サーバへのリクエストで指定した，前記認証情報を含まない第一の情報資源所在情報と，前記プロキシから取得した，前記第一の情報資源所在情報と前記認証情報とを含む第二の情報資源所在情報との差分を抽出する差分抽出部と，
前記プロキシ経由で取得された，前記第二の情報資源所在情報に基づいて前記サーバが提供するファイルに含まれる第三の情報資源所在情報に対する，前記ユーザからの選択を受け付ける受付部と，
前記第三の情報資源所在情報に対して，前記抽出した差分を付加した第四の情報資源所在情報を生成する差分付加部と，
前記第四の情報資源所在情報を指定した他のリクエストを，前記プロキシに送信する出力部とを備える
ことを特徴とするサーバアクセス装置。
【請求項４】
ユーザの認証を行うとともに，該認証が終了したことを示す認証情報を発行するプロキシを経由して，情報資源所在情報で指定したサーバにアクセスする処理を，コンピュータが実行するサーバアクセス方法であって，
前記コンピュータが，
前記認証情報を含まない第一の情報資源所在情報を指定した前記サーバへのリクエストを前記プロキシに送信する過程と，
前記プロキシから，前記第一の情報資源所在情報と前記認証情報とを含む第二の情報資源所在情報を取得する過程と，
前記第一の情報資源所在情報と，前記第二の情報資源所在情報との差分を抽出する過程と，
前記第二の情報資源所在情報に基づいて，前記サーバが提供するファイルを前記プロキシ経由で取得する過程と，
前記取得したファイルに基づいて，画面を出力する過程と，
前記ユーザから，前記ファイルに含まれる第三の情報資源所在情報に対する選択を受け付ける過程と，
前記第三の情報資源所在情報に対して，前記抽出した差分を付加した第四の情報資源所在情報を生成する過程と，
前記第四の情報資源所在情報を指定した他のリクエストを，前記プロキシに送信する過程とを実行する
ことを特徴とするサーバアクセス方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，認証を行うプロキシを経由して，目的とするサーバへのアクセスを行うサーバアクセスプログラム，サーバアクセス装置およびサーバアクセス方法に関するものである。
【背景技術】
【０００２】
クライアント装置が，ＵＲＬ（Uniform Resource Locator）を指定してサーバにアクセスし，サーバが提供する情報サービスを受ける際に，クライアント装置とサーバとの間に存在するプロキシで認証が行われる場合がある。ここで，ＵＲＬは，情報資源の所在を示す情報である。また，プロキシは，アクセスの高速化や，セキュリティ，フィルタリング，情報の書き換えなどを目的として，クライアント装置とサーバとの間に設けられたコンピュータである。クライアント−サーバ間で，アクセス管理や情報編集を行うプロキシの技術などが知られている。
【０００３】
例えば，特許文献１には，クライアント装置からＷＥＢサーバへのアクセスをプロキシで制限する技術が開示されている。ＷＥＢサーバにアクセスしたいクライアント装置は，ユーザ認証時にプロキシで発行された，認証済みを示す認証キーの情報を含むＵＲＬを指定したリクエストを送信する。そして，プロキシは，認証キーの情報を含むＵＲＬを指定したリクエストのみを，ＷＥＢサーバに送る。認証キーの情報を含まないＵＲＬを指定したリクエストは，ＷＥＢサーバに送られない。クライアント装置からのリクエストを受けたＷＥＢサーバは，そのレスポンスとして，クライアント装置にサービスを提供するためのファイルを，プロキシ経由で返す。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−２４２６３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＷＥＢサーバからクライアント装置に対して返されるファイルの内部に，リンクが含まれている場合がある。クライアント装置を操作するユーザが，ＷＥＢサーバから取得されたファイルにより提示される情報の画面において，リンクを指定する。続いて，クライアント装置は，そのリンクに関連付けられたＵＲＬを指定したリクエストをプロキシ経由でＷＥＢサーバへ送信する。このとき，指定されたＵＲＬに認証キーの情報がない場合には，プロキシによって，ＷＥＢサーバへのアクセスが遮断されてしまう。
【０００６】
ここで，例えば，ＷＥＢサーバからクライアント装置に対して返されるファイルがプロキシを経由するときに，プロキシが，ファイル内部のＵＲＬを認証キーの情報を含むＵＲＬに書き換える方法も考えられる。よって，クライアント装置において，ファイル内部のリンクが指定された場合には，すでにファイル内部のリンクに関連付けられた，認証キーの情報を含むＵＲＬを指定したリクエストがプロキシへ送信されるので，プロキシによってＷＥＢサーバへのアクセスが遮断されない。
【０００７】
しかし，プロキシが，すべてのファイル内部のＵＲＬを書き換えることができるわけではない。例えば，ＷＥＢサーバからクライアント装置に返されるファイルがバイナリファイルなどであるような場合には，プロキシがファイル内部のＵＲＬを検出して書き換えることは，非常に困難である。
【０００８】
本発明は，上記の問題点の解決を図り，プロキシでの認証後に，サーバからクライアント装置に返されたファイル内部のリンクを指定したリクエストが，プロキシによって遮断されないようにすることが可能となる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
開示するプログラムは，ユーザの認証を行うとともに，該認証が終了したことを示す認証情報を発行するプロキシを経由して，情報資源所在情報で指定したサーバにアクセスする処理を行うコンピュータを，次のように機能させる。
【００１０】
すなわち，前記プログラムは，前記プログラムがインストールされて実行されるコンピュータに，認証情報を含まない第一の情報資源所在情報を指定したサーバへのリクエストをプロキシに送信するステップと，プロキシから第一の情報資源所在情報と認証情報とを含む第二の情報資源所在情報を取得するステップと，第一の情報資源所在情報と第二の情報資源所在情報との差分を抽出するステップと，第二の情報資源所在情報に基づいてサーバが提供するファイルをプロキシ経由で取得するステップと，取得したファイルに基づいて画面を出力するステップと，ユーザからファイルに含まれる第三の情報資源所在情報に対する選択を受け付けるステップと，第三の情報資源所在情報に対して抽出した差分を付加した第四の情報資源所在情報を生成するステップと，第四の情報資源所在情報を指定した他のリクエストをプロキシに送信するステップとを実行させる。
【発明の効果】
【００１１】
上記の技術によって，プロキシでの認証後にクライアント装置からサーバに送信されたリクエストが，サーバからクライアント装置に返されたファイル内部のリンクが指定されたリクエストであっても，プロキシによって遮断されないようになる。
【図面の簡単な説明】
【００１２】
【図１】システム構成例を示す図である。
【図２】ＷＥＢサーバからクライアント装置に返されるファイルがＨＴＭＬファイルである場合の流れの例を示すシーケンス図である。
【図３】ＷＥＢサーバからクライアント装置に返されるファイルがＨＴＭＬファイルである場合の流れの例を示すシーケンス図である。
【図４】ＷＥＢサーバからクライアント装置に返されるファイルがプロキシによる，リンク先となるＵＲＬの書き換えが不能なファイルである場合の流れの例を示すシーケンス図である。
【図５】認証情報テーブルの例を示す図である。
【図６】本実施の形態によるクライアント装置が備えるサーバアクセス処理部の機能図である。
【図７】本実施の形態によるＵＲＬ情報記憶部に格納されているデータテーブルの例を示す図である。
【図８】本実施の形態による差分情報記憶部に格納されているデータの例を示す図である。
【図９】本実施の形態のサーバアクセス処理部によるサーバアクセス処理フローチャートである。
【図１０】本実施の形態によるＷＥＢサーバからクライアント装置に返されるファイルがＳＷＦファイルである場合の流れの例を示すシーケンス図である。
【図１１】本実施の形態によるＷＥＢサーバからクライアント装置に返されるファイルがＳＷＦファイルである場合の流れの例を示すシーケンス図である。
【図１２】本実施の形態によるクライアント装置のハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１３】
以下，本実施の形態について，図を用いて説明する。
【００１４】
図１は，システム構成例を示す図である。
【００１５】
図１に示すシステムにおいて，クライアント装置１，プロキシ２，ＷＥＢサーバ３は，それぞれ，ＣＰＵ（Central Processing Unit ），メモリ等のハードウェアを備えるコンピュータである。クライアント装置１−プロキシ２間，プロキシ２−ＷＥＢサーバ３間は，それぞれネットワークで接続されている。
【００１６】
クライアント装置１は，ＵＲＬを指定してＷＥＢサーバ３にアクセスをすることが可能なコンピュータである。ここでは，クライアント装置１は，例えば，携帯電話やＰＤＡ（Personal Digital Assistante ）やＰＨＳ（Personal Handy-phone System ）等である。ＷＥＢサーバ３は，アクセスしてきたクライアント装置１に対して，ＷＥＢページによる情報提供などのサービスを行うコンピュータである。クライアント装置１を使用するユーザは，ＵＲＬを指定したＷＥＢサーバ３へのアクセスによって，クライアント装置１がＷＥＢサーバ３から取得したファイルが提供する情報を，ブラウザを用いて閲覧する。
【００１７】
プロキシ２は，ＷＥＢサーバ３に対するアクセスを制限するために，ＷＥＢサーバ３の前段に設けられたコンピュータである。プロキシ２は，ＷＥＢサーバ３へのアクセスを要求するクライアント装置１に対してユーザ認証を行い，認証に成功したクライアント装置１に対してのみ，ＷＥＢサーバ３へのアクセスを許可する。
【００１８】
ここで，図２〜図４に示すシーケンス図を用いて，ＷＥＢサーバ３からクライアント装置１に返されるファイル内部のＵＲＬを，プロキシ２が検出して書き換える例を説明する。ファイル内部のＵＲＬとは，クライアント装置１の表示画面に出力されるＷＥＢページにおけるリンク先のＵＲＬである。ＷＥＢページは，プロキシ経由で返却されたファイルに基づいてブラウザによって生成される。なお，ここでは，ＷＥＢサーバ３からクライアント装置１に返されるファイルがテキストファイルである場合にのみ，プロキシ２がそのファイル内部に記述されたＵＲＬを検出して書き換えることが可能であるものとする。
【００１９】
図２，図３は，ＷＥＢサーバからクライアント装置に返されるファイルがＨＴＭＬファイルである場合の流れの例を示すシーケンス図である。
【００２０】
ユーザは，クライアント装置１のブラウザで，ＵＲＬを指定する。例えば，ユーザはＷＥＢサーバ３が提供するサービスのメニュー画面を表示するためのＵＲＬなどを指定するとして，以下説明を行う。クライアント装置１は，ユーザによるＵＲＬの指定を受け付ける（ステップＳ２００）。ここでは，ＵＲＬとして，“http://test.example.com/menu”が指定されたものとする。このＵＲＬ“http://test.example.com/menu”は，プロキシ２によるユーザ認証前の，認証キーの情報を含まないＵＲＬである。認証キーは，プロキシ２によるユーザ認証に成功した場合に発行される，認証済みを示す情報である。クライアント装置１は，プロキシ２に対して，ＵＲＬ“http://test.example.com/menu”を指定したリクエストを送信する（ステップＳ２０１）。
【００２１】
プロキシ２は，ＵＲＬ“http://test.example.com/menu”を指定したリクエストを受けることで，クライアント装置１によるＷＥＢサーバ３へのアクセスを検知する（ステップＳ２０２）。このとき，プロキシ２は，クライアント装置１からのリクエストのＵＲＬに認証キーの情報が含まれているかを確認する（ステップＳ２０３）。ＵＲＬ“http://test.example.com/menu”は，ユーザ認証前のクライアント装置１から送信されたリクエストのＵＲＬであるので，認証キーの情報は含まれていない。
【００２２】
なお，ここでは，プロキシ２は，認証キーの情報を含まない，特定のＵＲＬが指定されたリクエストがクライアント装置１から受信された場合に，クライアント装置１に対するユーザ認証を行うものとする。認証キーの情報を含まない，特定のＵＲＬ以外のＵＲＬが指定されたリクエストがクライアント装置１から受信された場合には，プロキシ２は，エラー画面を提示するためのファイルを，クライアント装置１に対して返却するものとする。
【００２３】
ここでは，ＵＲＬ“http://test.example.com/menu”のみが，ユーザ認証を行う特定のＵＲＬであるものとする。プロキシ２は，ユーザ認証画面を提示するためのファイルを，クライアント装置１に返却する（ステップＳ２０４）。なお，プロキシ２は，クライアント装置１のＩＰアドレスに基づいて，クライアント装置１へファイルの送信を行う。
【００２４】
クライアント装置１ではユーザ認証画面が表示され，ユーザは，ユーザ認証画面の入力欄にユーザ情報を入力する。ここでは，ユーザ情報は，ユーザ名とパスワードとの組合せである。クライアント装置１は，ユーザによるユーザ情報の入力を受け付けると（ステップＳ２０５），そのユーザ情報をプロキシ２に送信する（ステップＳ２０６）。
【００２５】
プロキシ２は，クライアント装置１から受けたユーザ情報で，クライアント装置１に対するユーザ認証を実行する（ステップＳ２０７）。より具体的には，プロキシ２は，クライアント装置１から受けたユーザ情報に含まれるユーザ名とパスワードとの組合せが，プロキシ２にあらかじめ登録されたユーザ名とパスワードとに一致するかを判定する。つまり，プロキシ２を経由した特定のＷＥＢサーバ３へのアクセスが，あらかじめ許可されたユーザであるかを判定する。ユーザ名とパスワードとの組合せが一致すれば，ユーザ認証は成功となる。
【００２６】
プロキシ２は，クライアント装置１に対するユーザ認証が成功した場合に，認証キーを発行する。認証キーは，クライアント装置１に対するユーザ認証が成功したことを示す情報である。ここでは，クライアント装置１に対する認証キー（ukey）として，“xxxx”が発行されたものとする。プロキシ２は，発行された認証キーを含む，ユーザ認証の結果の情報であるユーザ認証情報を，プロキシ２が備える記憶装置に記憶される認証情報テーブルに記録する（ステップＳ２０８）。
【００２７】
プロキシ２は，クライアント装置１から受けたリクエストのＵＲＬ“http://test.example.com/menu”に認証キーの情報“ukey=xxxx ”を付加し，その認証キーの情報を含むＵＲＬ“http://test.example.com/menu?ukey=xxxx”をクライアント装置１に返却する（ステップＳ２０９）。
【００２８】
クライアント装置１は，プロキシ２から取得した，認証キーの情報を含むＵＲＬ“http://test.example.com/menu?ukey=xxxx”の指定を受け付ける（ステップＳ２１０）。このＵＲＬの指定の受け付けは，画面上に表示したアクセス指示ボタンの選択などのユーザ入力による指定の受け付けであってもよいし，リダイレクトによるプロキシ２から取得したＵＲＬの自動的指定の受け付けであってもよい。クライアント装置１は，プロキシ２に対して，認証キーの情報を含むＵＲＬ“http://test.example.com/menu?ukey=xxxx”を指定したリクエストを送信する（ステップＳ２１１）。そして，クライアント装置１は，端子Ａを介して図３のＳ２１８へ進む。
【００２９】
プロキシ２は，ＵＲＬ“http://test.example.com/menu?ukey=xxxx”を指定したリクエストを受けることで，クライアント装置１によるＷＥＢサーバ３へのアクセスを検知する（ステップＳ２１２）。そして，プロキシ２は，端子Ｂを介して図３のＳ２１３へ進む。そして，プロキシ２は，クライアント装置１からのリクエストのＵＲＬに認証キーの情報が含まれているかを確認する（ステップＳ２１３）。
【００３０】
具体的には，プロキシ２は，認証情報テーブルに記録された認証キーが，クライアント装置１からのリクエストのＵＲＬに含まれているかを確認する。ＵＲＬ“http://test.example.com/menu?ukey=xxxx”には，認証情報テーブルに記録された認証キー“xxxx”の情報“ukey=xxxx ”が含まれているので，クライアント装置１からＷＥＢサーバ３へのアクセスが，許可される。
【００３１】
プロキシ２は，クライアント装置１からのリクエストを，ＷＥＢサーバ３に送信する（ステップＳ２１４）。このとき，プロキシ２は，リクエストのＵＲＬから認証キーの情報を削除した後のＵＲＬをリクエストとしてＷＥＢサーバ３へ送信する。すなわち，プロキシ２からＷＥＢサーバ３に送信されるリクエストのＵＲＬは，“http://test.example.com/menu”となる。
【００３２】
ＷＥＢサーバ３は，クライアント装置１からの，ＵＲＬ“http://test.example.com/menu”が指定されたリクエストに対して，自身が提供するサービスのメニュー画面を表示するためのファイルを，プロキシ２に返却する（ステップＳ２１５）。ここで返却されるファイルは，テキストファイルのＨＴＭＬファイルであり，そのＨＴＭＬファイルには，リンクを示すＵＲＬを含む部分の記述として，
<html>
<A Href="http://test.example.com/menuA">menuA</A><BR> 
<A Href="http://test.example.com/menuB">menuB</A><BR> 
</html> 
が含まれているものとする。
【００３３】
プロキシ２は，クライアント装置１が認証済みであるので，ＷＥＢサーバ３からクライアント装置１へのファイル内のリンクを示すＵＲＬに，認証キーの情報“ukey=xxxx ”を設定する（ステップＳ２１６）。このとき，ファイル内の上記のリンクを示すＵＲＬを含む部分の記述は，
<html>
<A Href="http://test.example.com/menuA?ukey=xxxx">menuA</A><BR> 
<A Href="http://test.example.com/menuB?ukey=xxxx">menuB</A><BR> 
</html> 
と書き換えられる。プロキシ２は，リンクを示すＵＲＬに認証キーの情報“ukey=xxxx ”が設定されたファイルを，クライアント装置１に返却する（ステップＳ２１７）。
【００３４】
ユーザは，クライアント装置１のブラウザで，ＷＥＢサーバ３からプロキシ２経由で取得したファイルにより提供されるメニュー画面の情報を閲覧する。
【００３５】
ここで，ユーザがメニュー画面上のメニューＡのリンクを選択したものとする。クライアント装置１は，ユーザによるリンクの選択を受け付ける（ステップＳ２１８）。クライアント装置１は，プロキシ２に対して，選択されたリンクに関連付けられたＵＲＬを指定したリクエストを送信する（ステップＳ２１９）。ここでは，選択されたメニューＡのリンクに関連付けられたＵＲＬは，ＷＥＢサーバ３からプロキシ２経由で取得されたファイル内の“http://test.example.com/menuA?ukey=xxxx ”であるものとする。すなわち，クライアント装置１からプロキシ２には，ＵＲＬ“http://test.example.com/menuA?ukey=xxxx ”を指定したリクエストが送信される。
【００３６】
プロキシ２は，ＵＲＬ“http://test.example.com/menuA?ukey=xxxx ”を指定したリクエストを受けることで，クライアント装置１によるＷＥＢサーバ３へのアクセスを検知する（ステップＳ２２０）。このとき，プロキシ２は，クライアント装置１からのリクエストのＵＲＬに認証キーの情報が含まれているかを確認する（ステップＳ２２１）。ＵＲＬ“http://test.example.com/menuA?ukey=xxxx ”には，認証情報テーブルに記録された認証キー“xxxx”の情報“ukey=xxxx ”が含まれているので，クライアント装置１からＷＥＢサーバ３へのアクセスが，許可される。
【００３７】
プロキシ２は，クライアント装置１からのリクエストを，ＷＥＢサーバ３に送信する（ステップＳ２２２）。このとき，プロキシ２は，リクエストのＵＲＬから認証キーの情報を削除する。すなわち，プロキシ２からＷＥＢサーバ３に送信されるリクエストのＵＲＬは，“http://test.example.com/menuA ”となる。
【００３８】
以下，ステップＳ２１５〜と同様に，ＷＥＢサーバ３からプロキシ２を経由したファイルの返却等が行われる。
【００３９】
このように，ＷＥＢサーバ３からプロキシ２を経由して返却されるファイルが，ＨＴＭＬファイル等の書き換えが可能なファイルである場合には，プロキシ２で，ファイルに含まれるリンクを示すＵＲＬに認証キーの情報を設定することができる。
【００４０】
図４は，ＷＥＢサーバからクライアント装置に返されるファイルがプロキシによる，リンク先となるＵＲＬの書き換えが不能なファイルである場合の流れの例を示すシーケンス図である。書き換えが不能なファイルの一例として，バイナリファイルであるＳＷＦファイルを用いて，以下説明を行う。
【００４１】
ＳＷＦファイルは，Adobe Flash （登録商標）で作成された再生用のムービーファイルである。以下では，図４を用いて，ＷＥＢサーバ３からクライアント装置１に返却されるファイルがＳＷＦファイルである場合の流れの例を説明する。なお，ＷＥＢサーバ３からプロキシ２へのファイルの返却（ステップＳ２１５）までの流れは，図２，図３に示すＳ２００からＳ２１５までの上述のＨＴＭＬファイルの場合と同様であるので，説明を省略する。
【００４２】
ＷＥＢサーバ３は，クライアント装置１からの，ＵＲＬ“http://test.example.com/menu”が指定されたリクエストに対して，自身が提供するサービスのメニュー画面を表示するためのファイルを，プロキシ２に返却する（ステップＳ２１５）。ここで返却されるファイルは，バイナリファイルのＳＷＦファイルであり，そのＳＷＦファイルには，リンクを示すＵＲＬの内容として，
on(press) ｛getURL("http://test.example.com/menuA");｝
on(press) ｛getURL("http://test.example.com/menuB");｝
が含まれているものとする。
【００４３】
ここで，クライアント装置１が認証済みであるが，ＷＥＢサーバ３からクライアント装置１へのファイルがＳＷＦファイルであるので，プロキシ２は，ファイル内のリンクを示すＵＲＬの内容に，認証キーの情報“ukey=xxxx ”を設定することができない。プロキシ２は，ＷＥＢサーバ３から受けたファイルを，そのままクライアント装置１に返却する（ステップＳ２３０）。
【００４４】
ユーザは，クライアント装置１のブラウザで，ＷＥＢサーバ３からプロキシ２経由で取得したファイルにより提供されるメニュー画面の情報を閲覧する。
【００４５】
ここで，ユーザがメニュー画面上のメニューＡのリンクを選択したものとする。クライアント装置１は，ユーザによるリンクの選択を受け付ける（ステップＳ２３１）。クライアント装置１は，プロキシ２に対して，選択されたリンクに関連付けられたＵＲＬを指定したリクエストを送信する（ステップＳ２３２）。ここでは，選択されたメニューＡのリンクに関連付けられたＵＲＬは，ＷＥＢサーバ３からプロキシ２経由で取得されたファイル内の“http://test.example.com/menuA ”であるものとする。すなわち，クライアント装置１からプロキシ２には，ＵＲＬ“http://test.example.com/menuA ”を指定したリクエストが送信される。
【００４６】
プロキシ２は，ＵＲＬ“http://test.example.com/menuA ”を指定したリクエストを受けることで，クライアント装置１によるＷＥＢサーバ３へのアクセスを検知する（ステップＳ２３３）。このとき，プロキシ２は，クライアント装置１からのリクエストのＵＲＬに認証キーの情報が含まれているかを確認する（ステップＳ２３４）。ＵＲＬ“http://test.example.com/menuA ”には，認証情報テーブルに記録された認証キーの情報が含まれていないので，クライアント装置１からＷＥＢサーバ３へのアクセスは許可されない。
【００４７】
ここでは，クライアント装置１からのリクエストに含まれるＵＲＬ“http://test.example.com/menuA ”は，ユーザ認証を行う特定のＵＲＬではないので，プロキシ２は，エラー画面を提示するためのファイルを，クライアント装置１に返却する（ステップＳ２３５）。なお，ユーザ認証を行う特定のＵＲＬを設定せずに，認証キーの情報を含まないＵＲＬが指定されたリクエストがクライアント装置１から受信されたすべての場合に，プロキシ２がクライアント装置１に対するユーザ認証を行うようにしてもよい。
【００４８】
このように，ＷＥＢサーバ３からプロキシ２を経由して返却されるファイルが，ＳＷＦファイル等の書き換えが困難なバイナリファイルである場合には，プロキシ２で，ファイルに含まれるリンクを示すＵＲＬに認証キーの情報を設定することができない。このとき，ユーザによりファイルに含まれるリンクが指定されると，一度ユーザ認証を実行しているにも関らず，クライアント装置１からＷＥＢサーバ３へのアクセスが遮断されたり，煩わしいユーザ認証を再実行しなければならないといった問題が発生する。
【００４９】
なお，プロキシ２での書き換えが困難なバイナリファイルとしては，ＳＷＦファイル以外にも，ＰＤＦファイル，ＤＯＣファイル，ＸＬＳファイル，ＰＰＴファイル等，様々なファイルが考えられる。
【００５０】
ここで，プロキシ２が有する認証情報テーブルの例を説明する。
【００５１】
図５は，認証情報テーブルの例を示す図である。
【００５２】
図５に示す認証情報テーブル２０は，ユーザ名，認証キー（ukey），アクセス時間等の情報を持つ。さらには，認証キーを発行した際に，ユーザが使用しているクライアント装置１に割り当てられたＩＰアドレスを有していても良い。ユーザ名は，ユーザ認証時のユーザ情報に含まれるユーザ名である。認証キー（ukey）は，ユーザ認証の成功によって発行された認証済みを示す認証キー（ukey）である。アクセス時間は，ユーザ認証が行われた時間である。
【００５３】
以下では，ＷＥＢサーバ３から取得した，プロキシ２で書き換えができないファイルに含まれるリンクのＵＲＬが指定された場合に，指定されたＵＲＬに認証キーの情報を自動的に付加する機能を有する，本実施の形態のクライアント装置１について説明する。
【００５４】
図６は，本実施の形態によるクライアント装置が備えるサーバアクセス処理部の機能図である。
【００５５】
本実施の形態によるクライアント装置１は，ＵＲＬで指定されたＷＥＢサーバ３へのアクセス処理を行うサーバアクセス処理部１０を備える。本実施の形態のサーバアクセス処理部１０は，認証を行うプロキシ２を経由してＷＥＢサーバ３から取得した，プロキシ２で書き換えができないファイルに含まれるリンクのＵＲＬが指定された場合に，指定されたＵＲＬに認証キーの情報を自動的に付加する機能を有する。
【００５６】
サーバアクセス処理部１０は，ＵＲＬ指定受付部１１，ＵＲＬ情報記憶部１２，差分抽出部１３，差分情報記憶部１４，差分付加部１５，リクエスト出力部１６，ファイル取得部１７を備える。サーバアクセス処理部１０およびサーバアクセス処理部１０の各機能部は，クライアント装置１のコンピュータが備えるＣＰＵ，メモリ等のハードウェアとソフトウェアプログラムとにより実現される。
【００５７】
ＵＲＬ指定受付部１１は，アクセス先のＷＥＢサーバ３を特定するＵＲＬの指定を受け付ける。ＵＲＬの指定は，例えば，ユーザによるショートカットやリンクの選択，ＵＲＬの文字入力などである。ＵＲＬ指定受付部１１は，ＵＲＬを指定したＷＥＢサーバ３へのアクセスがあった場合に，その指定されたＵＲＬをＵＲＬ情報記憶部１２に記憶する。ＵＲＬ情報記憶部１２は，ＷＥＢサーバ３へのアクセスで指定されたＵＲＬの履歴情報を記憶する，コンピュータがアクセス可能な記憶装置である。
【００５８】
差分抽出部１３は，プロキシ２によるユーザ認証が行われた場合に，ＵＲＬ情報記憶部１２に記憶された，ユーザ認証前のリクエストで指定されたＵＲＬと，ユーザ認証後にプロキシ２から取得されたＵＲＬとの差分を抽出する。
【００５９】
ユーザ認証前のリクエストで指定されたＵＲＬは，認証キーの情報を含まないＵＲＬである。ユーザ認証後にプロキシ２から取得されたＵＲＬは，ユーザ認証後に，プロキシ２がユーザ認証前のリクエストのＵＲＬに認証キーの情報を付加した，認証キーの情報を含むＵＲＬである。すなわち，ユーザ認証前のリクエストで指定されたＵＲＬと，ユーザ認証後にプロキシ２から取得されたＵＲＬとの差分は，認証キーの情報である。なお，ここでは，ユーザ認証後にプロキシ２から取得されたＵＲＬは，リダイレクトで指定され，ＵＲＬ指定受付部１１により，ＵＲＬ情報記憶部１２に記憶されるものとする。
【００６０】
差分抽出部１３は，抽出された差分を，差分情報記憶部１４に記憶する。差分情報記憶部１４は，ユーザ認証前のリクエストで指定されたＵＲＬと，ユーザ認証後にプロキシ２から取得されたＵＲＬとの差分の情報を記憶する，コンピュータがアクセス可能な記憶装置である。
【００６１】
差分付加部１５は，認証を行うプロキシ２を経由してＷＥＢサーバ３から取得したファイルに含まれるＵＲＬに関連付けられたリンクが指定された場合に，そのリンクに関係付けられたＵＲＬに対して，差分情報記憶部１４に記憶された差分を付加する。ここでは，ＷＥＢサーバ３から取得したファイルは，プロキシ２での書き換えができないバイナリファイルなどのファイルであり，そのファイル内部に含まれるＵＲＬは，認証キーの情報を含まないＵＲＬである。すなわち，差分付加部１５は，認証キーの情報を含まないＵＲＬに，認証キーの情報を付加する。
【００６２】
リクエスト出力部１６は，ＵＲＬを指定したリクエストを送信する。ＵＲＬ指定受付部１１で受け付けたＵＲＬに対して差分付加部１５で差分が付加された場合には，リクエスト出力部１６は，差分が付加されたＵＲＬを指定したリクエストをプロキシ２に送信する。すなわち，認証を行うプロキシ２を経由してＷＥＢサーバ３から取得した，プロキシ２で書き換えができないファイルに含まれるＵＲＬが指定された場合には，リクエスト出力部１６は，差分が付加されたＵＲＬを指定したリクエストをプロキシ２に送信する。また，ＵＲＬ指定受付部１１で受け付けたＵＲＬに対して差分付加部１５で差分が付加されない場合には，リクエスト出力部１６は，ＵＲＬ指定受付部１１で受け付けたＵＲＬを指定したリクエストを出力する。
【００６３】
ファイル取得部１７は，ＵＲＬを指定されたリクエストに対して，ＷＥＢサーバ３から返されたファイルを取得する。
【００６４】
図７は，本実施の形態によるＵＲＬ情報記憶部に格納されているデータテーブルの例を示す図である。
【００６５】
図７に示すＵＲＬ情報テーブル１２０は，ＵＲＬ情報記憶部１２に記憶された，ＷＥＢサーバ３へのアクセスで指定されたＵＲＬの履歴情報が記録されたデータの例である。図７に示すＵＲＬ情報テーブル１２０は，指定ＵＲＬ，日時，認証チェック等の情報を持つ。指定ＵＲＬは，ＷＥＢサーバ３へのアクセスで指定されたＵＲＬを示す。日時は，指定ＵＲＬを含むリクエストが送信された日時を示す。認証チェックは，指定ＵＲＬが，プロキシ２によるユーザ認証後にプロキシ２から返却されたＵＲＬであるかを示す。例えば，図７に示すＵＲＬ情報テーブル１２０において，認証チェックが“認証”となっているレコードが，ユーザ認証後に返却されたＵＲＬを指定したリクエストが行われたことを示している。
【００６６】
図８は，本実施の形態による差分情報記憶部に格納されているデータの例を示す図である。
【００６７】
図８に示す差分データ１４０は，差分情報記憶部１４に記憶された，ユーザ認証前のリクエストで指定されたＵＲＬと，ユーザ認証後にプロキシ２から取得されたＵＲＬとの差分データの例である。図８に示す差分データ１４０は，図７に示すＵＲＬ情報テーブル１２０において，ユーザ認証前のリクエストで指定されたＵＲＬ“http://test.example.com/menu”と，ユーザ認証後にプロキシ２から取得されたＵＲＬ“http://test.example.com/menu?ukey=xxxx”との差分である。
【００６８】
図９は，本実施の形態のサーバアクセス処理部によるサーバアクセス処理フローチャートである。
【００６９】
図９に示すフローチャートの例は，ユーザが，ＷＥＢサーバ３から取得したファイルにより提示されるブラウザの画面上でリンクを選択した場合の，サーバアクセス処理部１０による処理の一例である。なお，ここでＷＥＢサーバ３から取得したファイルは，ＷＥＢサーバ３から認証を行うプロキシ２を経由してクライアント装置１に返されたファイルであり，プロキシ２で書き換えができないバイナリファイルであるものとする。
【００７０】
ユーザがファイルにより提示されるブラウザの画面上でリンクを選択すると，ＵＲＬ指定受付部１１は，そのファイル内部にある，該当リンクに関連付けられたＵＲＬの指定を受け付ける（ステップＳ１０）。
【００７１】
ＵＲＬ指定受付部１１は，指定されたＵＲＬのホスト部が，ＵＲＬ情報記憶部１２に記憶された，ユーザ認証後にプロキシ２から取得されたＵＲＬのホスト部と一致するかを判定する（ステップＳ１１）。
【００７２】
双方のホスト部が一致しなければ（ステップＳ１１のＮＯ），ＵＲＬ指定受付部１１は，指定されたＵＲＬを含むリクエストは，ユーザ認証を行ったプロキシ２を経由したＷＥＢサーバ３に対するリクエストではないと判断する。このとき，リクエスト出力部１６は，指定されたＵＲＬを含むリクエストの送信を行う（ステップＳ１４）。
【００７３】
双方のホスト部が一致すれば（ステップＳ１１のＹＥＳ），ＵＲＬ指定受付部１１は，指定されたＵＲＬを含むリクエストは，ユーザ認証を行ったプロキシ２を経由したＷＥＢサーバ３に対するリクエストである判断する。このとき，差分抽出部１３は，ＵＲＬ情報記憶部１２に記憶された，プロキシ２によるユーザ認証前のリクエストで指定されたＵＲＬと，ユーザ認証後にプロキシ２から取得されたＵＲＬとの差分を抽出する（ステップＳ１２）。抽出された差分は，差分情報記憶部１４に記憶される。差分付加部１５は，該当リンクに関連付けられたＵＲＬに，差分情報記憶部１４に記憶された差分を付加する（ステップＳ１３）。リクエスト出力部１６は，差分が付加されたＵＲＬを指定したリクエストを，プロキシ２に送信する（ステップＳ１４）。
【００７４】
図１０，図１１は，本実施の形態によるＷＥＢサーバからクライアント装置に返されるファイルがＳＷＦファイルである場合の流れの例を示すシーケンス図である。
【００７５】
ユーザは，クライアント装置１のブラウザで，ＷＥＢサーバ３が提供するサービスのメニュー画面を表示するためのＵＲＬを指定する。クライアント装置１のＵＲＬ指定受付部１１は，ユーザによるＵＲＬの指定を受け付ける（ステップＳ１００）。ここでは，ＵＲＬとして，“http://test.example.com/menu”が指定されたものとする。このＵＲＬ“http://test.example.com/menu”は，プロキシ２によるユーザ認証前の，認証キーの情報を含まないＵＲＬである。
【００７６】
クライアント装置１のＵＲＬ指定受付部１１は，指定された，認証キーの情報を含まないＵＲＬ“http://test.example.com/menu”を，ＵＲＬ情報記憶部１２に記憶する（ステップ１０１）。例えば，このとき記憶されたＵＲＬが，図７に示すＵＲＬ情報テーブル１２０における指定ＵＲＬ“http://test.example.com/menu”である。クライアント装置１のリクエスト出力部１６は，プロキシ２に対して，ＵＲＬ“http://test.example.com/menu”を指定したリクエストを送信する（ステップＳ１０２）。
【００７７】
プロキシ２は，ＵＲＬ“http://test.example.com/menu”を指定したリクエストを受けることで，クライアント装置１によるＷＥＢサーバ３へのアクセスを検知する（ステップＳ１０３）。このとき，プロキシ２は，クライアント装置１からのリクエストのＵＲＬに認証キーの情報が含まれているかを確認する（ステップＳ１０４）。ＵＲＬ“http://test.example.com/menu”は，ユーザ認証前のクライアント装置１から送信されたリクエストのＵＲＬであるので，認証キーの情報は含まれていない。プロキシ２は，ユーザ認証画面を提示するためのファイルを，クライアント装置１に返却する（ステップＳ１０５）。
【００７８】
クライアント装置１ではユーザ認証画面が表示され，ユーザは，ユーザ認証画面の入力欄にユーザ情報を入力する。クライアント装置１は，ユーザによるユーザ情報の入力を受け付けると（ステップＳ１０６），そのユーザ情報をプロキシ２に送信する（ステップＳ１０７）。
【００７９】
プロキシ２は，クライアント装置１から受けたユーザ情報で，クライアント装置１に対するユーザ認証を実行する（ステップＳ１０８）。プロキシ２は，クライアント装置１に対するユーザ認証が成功した場合に，認証キーを発行する。ここでは，クライアント装置１に対する認証キー（ukey）として，“xxxx”が発行されたものとする。プロキシ２は，発行された認証キーを含む，ユーザ認証の結果の情報であるユーザ認証情報を，プロキシ２が備える記憶装置に記憶される認証情報テーブル２０に記録する（ステップＳ１０９）。
【００８０】
プロキシ２は，クライアント装置１から受けたリクエストのＵＲＬ“http://test.example.com/menu”に認証キーの情報“ukey=xxxx ”を付加し，その認証キーの情報を含むＵＲＬ“http://test.example.com/menu?ukey=xxxx”をクライアント装置１に返却する（ステップＳ１１０）。そして，プロキシ２は，端子Ｅを介して図１１のＳ１１４へ処理を進める。なお，プロキシ２の処理Ｓ１０３，Ｓ１０４，Ｓ１０５，Ｓ１０８，Ｓ１０９は，図２におけるＳ２０２，Ｓ２０３，Ｓ２０４，Ｓ２０７，Ｓ２０８に各々対応する。プロキシ２は従来の処理と同様の処理を行う。つまり，従来どおり，リクエストのＵＲＬはプロキシ２にて書き換えられる。
【００８１】
クライアント装置１のＵＲＬ指定受付部１１は，プロキシ２から返却された，認証キーの情報を含むＵＲＬ“http://test.example.com/menu?ukey=xxxx”の指定を受け付ける（ステップＳ１１１）。このＵＲＬの指定の受け付けは，画面上に表示したアクセス指示ボタンの選択などのユーザ入力による指定の受け付けであってもよいし，リダイレクトによるプロキシ２から取得したＵＲＬの自動的指定の受け付けであってもよい。
【００８２】
クライアント装置１のＵＲＬ指定受付部１１は，指定された，認証キーの情報を含むＵＲＬ“http://test.example.com/menu?ukey=xxxx”を，ＵＲＬ情報記憶部１２に記憶する（ステップ１１２）。例えば，このとき記憶されたＵＲＬが，図７に示すＵＲＬ情報テーブル１２０における，ユーザ認証後の指定ＵＲＬ“http://test.example.com/menu?ukey=xxxx”である。そして，クライアント装置１は，端子Ｄを介して図１１のＳ１１３へ処理を進める。クライアント装置１のリクエスト出力部１６は，プロキシ２に対して，認証キーの情報を含むＵＲＬ“http://test.example.com/menu?ukey=xxxx”を指定したリクエストを送信する（ステップＳ１１３）。
【００８３】
プロキシ２は，ＵＲＬ“http://test.example.com/menu?ukey=xxxx”を指定したリクエストを受けることで，クライアント装置１によるＷＥＢサーバ３へのアクセスを検知する（ステップＳ１１４）。このとき，プロキシ２は，クライアント装置１からのリクエストのＵＲＬに認証キーの情報が含まれているかを確認する（ステップＳ１１５）。具体的には，プロキシ２は，認証情報テーブル２０に記録された認証キーが，クライアント装置１からのリクエストのＵＲＬに含まれているかを確認する。ＵＲＬ“http://test.example.com/menu?ukey=xxxx”には，認証情報テーブル２０に記録された認証キー“xxxx”の情報“ukey=xxxx ”が含まれているので，クライアント装置１からＷＥＢサーバ３へのアクセスが，許可される。
【００８４】
プロキシ２は，クライアント装置１からのリクエストを，ＷＥＢサーバ３に送信する（ステップＳ１１６）。このとき，プロキシ２は，リクエストのＵＲＬから認証キーの情報を削除する。すなわち，プロキシ２からＷＥＢサーバ３に送信されるリクエストのＵＲＬは，“http://test.example.com/menu”となる。
【００８５】
ＷＥＢサーバ３は，クライアント装置１からの，ＵＲＬ“http://test.example.com/menu”が指定されたリクエストに対して，自身が提供するサービスのメニュー画面を表示するためのファイルを，プロキシ２に返却する（ステップＳ１１７）。ここで返却されるファイルは，バイナリファイルのＳＷＦファイルであり，そのＳＷＦファイルには，リンクを示すＵＲＬの内容として，
on(press) ｛getURL("http://test.example.com/menuA");｝
on(press) ｛getURL("http://test.example.com/menuB");｝
が含まれているものとする。
【００８６】
ここで，クライアント装置１が認証済みであるが，ＷＥＢサーバ３からクライアント装置１へのファイルがＳＷＦファイルであるので，プロキシ２は，ファイル内のリンクを示すＵＲＬの内容に，認証キーの情報“ukey=xxxx ”を設定することができない。プロキシ２は，ＷＥＢサーバ３から受けたファイルを，そのままクライアント装置１に返却する（ステップＳ１１８）。
【００８７】
クライアント装置１のファイル取得部１７は，ＷＥＢサーバ３からプロキシ２経由で返されたファイルを取得する。ユーザは，クライアント装置１のブラウザで，ＷＥＢサーバ３からプロキシ２経由で取得したファイルにより提供されるメニュー画面の情報を閲覧する。
【００８８】
ここで，ユーザがメニュー画面上のメニューＡのリンクを選択したものとする。クライアント装置１は，ユーザによるリンクの選択を受け付ける（ステップＳ１１９）。このとき，クライアント装置１のＵＲＬ指定受付部１１は，選択されたリンクに関連付けられた，ＷＥＢサーバ３から取得されたファイル内部のＵＲＬの指定を受け付ける。ここでは，選択されたメニューＡのリンクに関連付けられた，ＷＥＢサーバ３から取得されたファイル内部のＵＲＬは，“http://test.example.com/menuA ”であるものとする。
【００８９】
クライアント装置１の差分抽出部１３は，リンク先として選択されたＵＲＬが，ファイル内部のＵＲＬであって，さらに過去にプロキシ２にてユーザ認証を行ったＷＥＢサーバ３に対するアクセスであるかを判定する。例えば，差分抽出部１３は，ＵＲＬ情報記憶部１２を参照し，Ｓ１１９で選択されたＵＲＬが，過去にユーザ認証を行なった際のリクエストに含まれるＵＲＬとホスト部が同一であるかを判定する。同一であれば，過去にユーザ認証を行ったプロキシ２を経由したＷＥＢサーバ３に対するアクセスであることが判定できる。
【００９０】
このとき，クライアント装置１の差分抽出部１３は，ＵＲＬ情報記憶部１２に記憶された，認証キーの情報を含まないＵＲＬ“http://test.example.com/menu”と，認証キーの情報を含むＵＲＬ“http://test.example.com/menu?ukey=xxxx”との差分“?ukey=xxxx”を抽出する（ステップＳ１２０）。クライアント装置１の差分抽出部１３は，抽出された差分“?ukey=xxxx”を差分情報記憶部１４に記憶する。
【００９１】
クライアント装置１の差分付加部１５は，選択されたリンクに関連付けられたＵＲＬ“http://test.example.com/menuA ”に対して，差分情報記憶部１４に記憶された差分“?ukey=xxxx”を付加する（ステップＳ１２１）。差分を付加したＵＲＬは，“http://test.example.com/menuA?ukey=xxxx ”となる。
【００９２】
クライアント装置１のリクエスト出力部１６は，プロキシ２に対して，差分を付加したＵＲＬ“http://test.example.com/menuA?ukey=xxxx ”を指定したリクエストを送信する（ステップＳ１２２）。
【００９３】
プロキシ２は，ＵＲＬ“http://test.example.com/menuA?ukey=xxxx ”を指定したリクエストを受けることで，クライアント装置１によるＷＥＢサーバ３へのアクセスを検知する（ステップＳ１２３）。このとき，プロキシ２は，クライアント装置１からのリクエストのＵＲＬに認証キーの情報が含まれているかを確認する（ステップＳ１２４）。ＵＲＬ“http://test.example.com/menuA?ukey=xxxx ”には，認証情報テーブル２０に記録された認証キー“xxxx”の情報“ukey=xxxx ”が含まれているので，クライアント装置１からＷＥＢサーバ３へのアクセスが，許可される。
【００９４】
以下，ステップＳ１１７〜と同様に，ＷＥＢサーバ３からプロキシ２を経由したファイルの返却等が行われる。
【００９５】
このように，本実施の形態のサーバアクセス処理部１０は，プロキシ２での認証後に，プロキシ２で書き換えができないファイル内部のリンクのＵＲＬが指定された場合に，自動的に認証キーの情報を付加してリクエストを出力する。これにより，プロキシ２によるユーザ認証後であれば，プロキシ２で書き換えができないファイル内部のリンクのＵＲＬが指定されたリクエストでも，プロキシ２によって遮断されなくなる。
【００９６】
以上説明した本実施の形態のサーバアクセス処理部１０による処理は，コンピュータが備えるＣＰＵ，メモリ等のハードウェアとソフトウェアプログラムとにより実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも，ネットワークを通して提供することも可能である。
【００９７】
図１２は，本実施の形態によるクライアント装置のハードウェア構成例を示す図である。
【００９８】
クライアント装置１は，ＣＰＵ１００１，ＲＯＭ（Read Only Memory）１００２，ＲＡＭ（Random Access Memory）１００３，通信部１００４，ＨＤＤ（Hard Disk Drive ）１００５，入力部１００６，媒体読取部１００７，表示部１００８を有しており，各部はバス１００９を介して相互に接続されている。各部は，ＣＰＵ１００１による管理下で，相互にデータの送受を行うことができる。
【００９９】
ＣＰＵ１００１は，クライアント装置１全体の動作制御を司る中央処理装置である。通信部１００４は，他のコンピュータからの信号を受信し，その信号の内容をＣＰＵ１００１に渡す。さらに，通信部１００４は，ＣＰＵ１００１からの指示に応じて，他のコンピュータに信号を送信する。
【０１００】
ＨＤＤ１００５には，上述の本実施の形態に示したサーバアクセス処理部１０と同様の機能をコンピュータに発揮させるプログラムとして，例えば図９のフローチャートに示す各処理をコンピュータに実行させるプログラムが記憶されている。ＣＰＵ１００１がこのプログラムをＨＤＤ１００５から読み出して実行することで，図６に示すＵＲＬ指定受付部１１，差分抽出部１３，差分付加部１５，リクエスト出力部１６，ファイル取得部１７として，コンピュータが機能するようになる。このプログラムは，ＣＰＵ１００１がアクセス可能なＲＯＭ１００２またはＲＡＭ１００３に格納されていても良い。
【０１０１】
さらに，ＨＤＤ１００５は，ＣＰＵ１００１の管理下で，例えば図６に示すＵＲＬ情報記憶部１２や差分情報記憶部１４などの記憶部として，指定されたＵＲＬの情報やユーザ認証前後に指定されたＵＲＬ間の差分情報などを記憶する。プログラムと同様に，各情報は，ＣＰＵ１００１がアクセス可能なＲＯＭ１００２またはＲＡＭ１００３に格納されても良い。入力部１００６は，ＣＰＵ１００１の管理下で，データの入力を受付ける。
【０１０２】
例えば図９のフローチャートに示した処理内容を記述したプログラムは，コンピュータが読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体には，磁気記録装置，光ディスク，光磁気記録媒体，半導体メモリなどがある。磁気記録装置には，ＨＤＤ，フレキシブルディスク（ＦＤ（Flexible Disk ）），磁気テープ（ＭＴ（Magnetic Tape ））などがある。光ディスクには，ＤＶＤ（Digital Versatile Disc），ＤＶＤ−ＲＡＭ，ＣＤ（Compact Disc）−ＲＯＭ，ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には，ＭＯ（Magneto-Optical disk）などがある。このプログラムを流通させる場合には，例えば，そのプログラムが記録されたＤＶＤ，ＣＤ−ＲＯＭなどの可搬型記録媒体が販売されることが考えられる。
【０１０３】
プログラムを実行するコンピュータでは，媒体読取部１００７が，例えば図９のフローチャートに示した処理内容を記述したプログラムを記録した記録媒体から，該プログラムを読み出す。ＣＰＵ１００１は，読み出されたプログラムを，ＨＤＤ１００５，ＲＯＭ１００２またはＲＡＭ１００３に格納する。コンピュータは，自己の記憶装置であるＨＤＤ１００５，ＲＯＭ１００２またはＲＡＭ１００３からプログラムを読み取り，プログラムに従った処理を実行する。
【０１０４】
以上，本実施の形態について説明したが，本発明はその主旨の範囲において種々の変形が可能であることは当然である。
【０１０５】
例えば，本実施の形態のサーバアクセス処理部１０では，ＳＷＦファイルなどのプロキシ２で書き換えできないファイル内部のリンクのＵＲＬが指定された場合にのみ，ＵＲＬの差分から得られた認証キーの情報を付加する処理を行っている。プロキシ２がテキストファイルを含めたすべてのファイルの書き換えを行わないことが前提であれば，サーバアクセス処理部１０が，ファイル内部のリンクのＵＲＬが指定されたすべてのケースで，ＵＲＬの差分から得られた認証キーの情報を付加する処理を行ってもよい。
【０１０６】
また，本実施の形態では，サーバアクセス処理部１０は，ファイル内部のリンクのＵＲＬが指定されたタイミングで，ユーザ認証前後のＵＲＬの差分抽出を行っているが，必ずしもそのタイミングでＵＲＬの差分抽出を行う必要はない。例えば，サーバアクセス処理部１０が，プロキシ２によるユーザ認証後に，プロキシ２から認証キーの情報を含むＵＲＬを受け取ったタイミングで，ユーザ認証前後のＵＲＬの差分抽出を行うようにしても良い。
【符号の説明】
【０１０７】
１  クライアント装置
１０  サーバアクセス処理部
１１  ＵＲＬ指定受付部
１２  ＵＲＬ情報記憶部
１３  差分抽出部
１４  差分情報記憶部
１５  差分付加部
１６  リクエスト出力部
１７  ファイル取得部
２  プロキシ
３  ＷＥＢサーバ
【図１】
0005402666.tif 000002
【図２】
0005402666.tif 000003
【図３】
0005402666.tif 000004
【図４】
0005402666.tif 000005
【図５】
0005402666.tif 000006
【図６】
0005402666.tif 000007
【図７】
0005402666.tif 000008
【図８】
0005402666.tif 000009
【図９】
0005402666.tif 000010
【図１０】
0005402666.tif 000011
【図１１】
0005402666.tif 000012
【図１２】
0005402666.tif 000013