(58)【調査した分野】(Int.Cl.,DB名)
サーバはクライアントと通信可能であり、前記サーバには、命令対象システムを指定する指定情報と、前記命令対象システムに対する命令を含む登録情報の登録を受け付ける登録受付手段と、登録された前記指定情報にて指定され前記サーバが直接制御が不可能な接続環境下にある前記命令対象システムに対して前記命令を送信する処理命令が含まれたコンテンツデータを生成するコンテンツデータ生成手段とが備わっており、前記クライアントには、前記サーバ及び前記指定情報にて指定された命令対象システムにアクセス可能なWebブラウザが備わっており、前記コンテンツデータが前記Webブラウザに所定の処理を実行させる命令が記述されたプログラムファイルとなっている構成とされ、前記クライアントが前記サーバから前記コンテンツデータを受信すると、前記プログラムファイル内のHTML文書からなるプログラムによって、当該プログラム内の前記コンテンツデータが解析され、前記命令対象システムにアクセスしてコンテンツを読込む処理としての前記処理命令が前記Webブラウザ上にて実行され、前記命令の実行結果が前記HTML文書からなるプログラムが処理可能なデータとして前記命令対象システムから返信されることを特徴とするWebシステム。
【発明を実施するための形態】
【0020】
以下、本願発明の実施の形態を図面に基づいて説明する。
【0021】
(第1の実施の形態)
図1は、本発明の第一の実施を説明する機能構成図であり、
図2は、本実施の形態の動作を説明するフローチャートである。WebシステムA1は、ネットワークNET1を介してネットワークNET2と接続されており、ネットワークNET2にはクライアントB1と命令対象システムC1に接続されている。ネットワークNET1は例えばインターネット等のグローバルエリアネットワークであり、ネットワークNET2は社内LAN等のローカルエリアネットワークであり、NAT(Network Address Translation)等の一方向通信環境の関係等から、クライアントB1からWebシステムA1や命令対象システムC1への処理要求は可能であるが、WebシステムA1から命令対象システムC1への直接制御は不可能となっている。
【0022】
WebシステムA1は、Webサーバ100とWebサーバ100に接続されるコンテンツデータ記憶部D10とを備える。
コンテンツデータ記憶部D10は、ハードディスク等の記憶装置により実現されており、複数のコンテンツデータd11,d12,,,d1xが記憶されている。コンテンツデータは、Webブラウザに受信されたときに、そのWebブラウザに所定の処理を実行させる命令が記述されたプログラムファイルであり、例えば、HTMLファイルである。各コンテンツデータd11,,,d1xは、クライアントからの各処理要求Y1,,,Yxに対応付け可能となっている。例えば、各処理要求がURLにて指定されるコンテンツデータの要求として受信される場合は、そのURLにて指定されるコンテンツデータとして対応付けされている。
【0023】
Webサーバ100は、CPU・メモリ・ハードディスク・ネットワークI/O等の通信機能などを備えるコンピュータシステムにより実現されており、クライアントB1のWebブラウザ200からの処理要求に対して処理結果を応答する機能を有し、受信手段110と、取得手段111と、編集手段112と、送信手段113とを備える。なお、Webブラウザ200からの処理要求は、ユーザの入力等によって発生するものでも良いし、Webブラウザ200がバックグラウンドで発生させるものでも良い。
【0024】
受信手段110は、Webブラウザ200から指定情報Xxを受信する機能、及び、そのWebブラウザ200から処理要求Yxを受信する機能を備える。
指定情報Xxとしては、例えば、命令対象システムを直接的又は間接的に指定可能な情報である。直接的に指定可能な情報としては、例えば、IPアドレスやサーバ名(ローカルホスト名やFQDN等)である。間接的に指定可能な情報としては、IPアドレスやサーバ名と関連付けて記憶されている識別子であり、例えばユーザ識別子である。前処理としてユーザ識別子と命令対象システムのIPアドレス若しくはサーバ名(ローカルホスト名やFQDN等)が事前登録される場合、WebシステムA1の記憶部には、ユーザ識別子と命令対象システムのIPアドレスやサーバ名とが対応付けて記憶されている。Webサーバ100はユーザ識別子を受信すると、そのユーザ識別子に対応付けて記憶されているIPアドレスやサーバ名を特定できる。なお、IPアドレスやサーバ名は、プライベートIPアドレスやローカルホスト名等のように、少なくともクライアントB1から命令対象システムC1を特定可能な情報であれば良い。
【0025】
処理要求Yxは、Webブラウザ200からWebサーバ100に対して処理を要求する命令である。処理要求Yxとしては、ユーザがWebブラウザ200に入力するものでも良いし、Webブラウザ200がバックグラウンドにて自動生成するものでも良い。前者としては、例えば、指定ディレクトリのファイル一覧の取得や、指定ファイルの指定先への転送などを命令対象システムに実行させる命令などであり、後者としては、例えば、所定の記憶装置に更新ファイルや新規ファイルが存在する場合は、それを所定の保存先にバックアップさせる命令などである。
処理要求Yxは、例えば、処理要求に対応するファイルを指定するURLなど、WebシステムA1に記憶されているコンテンツデータd1xを選択的に要求する命令にて実現され、必要に応じて付加情報Zが付加される。付加情報Zとしては、例えば、ファイル一覧取得の場合はディレクトリを指定する情報、ファイル転送の場合はファイルを指定する情報、バックアップ要求の場合は保存先を指定する情報等である。各付加情報は、クライアントB1のWebブラウザ200にてユーザにより入力されたり、所定の規則に従って生成される。
取得手段111は、受信手段110により受信した処理要求Yxに対応するコンテンツデータd1xをコンテンツデータ記憶部D10から取得する機能を備える。
編集手段112は、取得手段111にて取得されたコンテンツデータ(以下、編集前コンテンツデータd1xという)を、命令p1xを指定情報Xxにて指定される命令対象システムに送信する処理命令Pxが含まれるコンテンツデータ(以下、編集後コンテンツデータd2xという)に編集する機能を備える。
【0026】
図3は、取得手段111と編集手段112とコンテンツデータ記憶部D10の一例を説明する機能説明図である。たとえば、編集前コンテンツデータd1xに、所定の命令p1xを任意の指定情報Xにて指定される命令対象システムに送信する処理命令Pxが含まれる。取得手段111は、受信した処理要求Yxに対応する編集前コンテンツデータd1xを取得する。編集手段112は、任意の指定情報Xにて指定される命令対象システムが、受信した指定情報Xxにて指定される命令対象システムC1となるように変換する。処理要求Yxに付加情報Zが含まれている場合は、規則に基づいて、その付加情報Zを命令p1xに付加する。
【0027】
更に詳細には、例えば、編集前コンテンツデータd1xに、処理命令Pxとして、所定のプログラムを起動する命令p1xと、任意の命令対象システムを示す指定情報Xと、命令p1xを指定情報Xにて指定される命令対象システムに送信する命令が記述されている場合、編集手段112は、任意の命令対象システムを示す指定情報Xを、受信した指定情報Xxに基づいて変換し、付加情報Zをそのプログラムへの引数として命令p1xに付加し、編集後コンテンツデータd2xとする。
【0028】
このとき、指定情報Xxが命令対象システムのIPアドレス若しくはサーバ名である場合は、処理命令Px中の任意の指定情報XをそのIPアドレス若しくはサーバ名に変換する。また、指定情報XxがIPアドレスやサーバ名と対応付けて記憶されている識別子(例えばユーザ識別子)である場合は、その識別子とそれに対応する命令対象システムのIPアドレス又はサーバ名が記憶部に事前登録されており、受信した識別子に対応するIPアドレス若しくはサーバ名を記憶部から取得し、処理命令Px中の任意の指定情報XをそのIPアドレス若しくはサーバ名に変換する。
【0029】
なお、編集手段112はこれに限られるものではなく、例えば、編集前コンテンツデータに任意の命令pと任意の指定情報Xとが含まれ、記憶領域に各処理要求Yxに対応付けて命令p1xが記憶されている場合、編集手段112は、指定情報Xを受信した指定情報Xxに基づいて変換するとともに、受信した処理要求Yxに対応する命令p1xを記憶領域から取得し、編集前コンテンツデータの任意の命令pを取得した命令p1xに変換しても良い。
【0030】
送信手段113は、編集手段112にて編集した編集後コンテンツデータd2xをWebブラウザ200に送信する機能を備える。
【0031】
クライアントB1は、CPU・メモリ・ハードディスク・通信機能・ディスプレイ・キーボード・マウス等を備えるパーソナルコンピュータなどであり、Webブラウザ200を備える。Webブラウザ200は、Webサーバ100から編集後コンテンツデータ(HTMLファイル等)d2xを受信すると、その編集後コンテンツデータd2xに記述されている命令(プログラム)に従って処理を行う。処理としては、命令対象システムC1に対する処理命令,ディスプレイへの画像表示,他サーバへの処理要求,その他、Webブラウザとしての一般的な処理である。
【0032】
命令対象システムC1は、クライアントB1から制御可能な形態で接続されるハードウェアある。命令対象システムC1は、CPUや記憶領域等を備えるコンピュータシステムを備える。この命令対象システムC1は、更に、プリンタ,スキャナ,FAX等のハードウェアに接続したり、これらをハードウェア資源として内蔵していても良い。
【0033】
命令対象システムC1は、Webブラウザ200から受信した命令p1xを実行する命令実行手段310を備える。
図4は、命令実行手段310を機能的に説明する説明図である。命令対象システムC1は、ハードディスク等の記憶領域に命令記憶部D30を備える。命令記憶部D30には、Webブラウザ200から受信する命令p11,,,p1xと対応付け可能な命令p21,,,p2xが記憶されている。命令実行手段310は、受信した命令p1xに対応する命令p2xを命令記憶部D30から取得して実行する。受信した命令p1xに付加情報Zが付加されている場合は、予め定められた規則に従って付加情報Zを命令p2xに組み込んで実行する。
【0034】
たとえば、命令記憶部D30に、命令p21,,,p2xとしてプログラムp21,,,p2xが記憶されている。命令実行手段310は、Webブラウザ200から命令p1xを受信すると、その命令p1xにて指定されるプログラムp2xを命令記憶部D30から選択し、受信した命令p1xに付加されている付加情報Zを引数として組み込んで、プログラムp2xを実行する。プログラムp21,,,p2xは、命令対象システムC1に関数や手続きやAPI等として記憶されている。なお、命令実行手段310はこれに限られるものではなく、受信した命令を実行可能であれば良い。
【0035】
(動作説明)
以下、動作説明を行う。ユーザは、WebシステムA1からクライアントB1のWebブラウザ200に入力用画面を受信し、指定情報Xxを入力してWebシステムA1に送信し、又、所望の処理要求Yxを入力してWebシステムA1に送信する。Webブラウザ200からはWebシステムA1に指定情報Xxが送信され(B−1)、処理要求Yxが送信される(B−2)。なお、指定情報Xxと処理要求Yxとは、同時に送信されても良いし、異なるタイミングで送信されても良い。異なるタイミングで送信される場合、指定情報Xxと要求処理YxとはクライアントB1とWebシステムA1のセッションに一意に生成されるセッション識別子等により関連付けがなされる。
【0036】
WebシステムA1のWebサーバ100は、受信手段110により指定情報Xxを受信し(A−1)、処理要求Yxを受信する(A−2)。取得手段111はコンテンツデータ記憶部D10から処理要求Yxに対応する編集前コンテンツデータd1xを取得する(A−3)。編集手段112は、その編集前コンテンツデータd1xを編集後コンテンツデータd2xに編集する(A−4)。編集後コンテンツデータd2xには、処理要求Yxに対応する命令p1xを指定情報Xxにより指定される命令対象システムC1に送信する処理命令Pxが含まれることになる。付加情報Zがある場合は、規則に基づいて付加情報Zが命令p1xに付加される。この編集後コンテンツデータd2xは、送信手段113によりWebブラウザ200に送信される(A−5)。
【0037】
ここで、編集手段112による処理(A−4)の例を示す。編集前コンテンツデータd1xには所定の命令p1xを任意の指定情報Xにて指定される命令対象システムに送信する処理命令Pxが含まれている。編集手段112は、この任意の指定情報Xを、受信した指定情報Xxに基づいて編集する。指定情報XxがIPアドレス若しくはサーバ名である場合は、任意の指定情報XをそのIPアドレス若しくはサーバ名に変換し、指定情報Xxが事前登録された識別子である場合は、識別子に対応付けて記憶されているIPアドレス若しくはサーバ名に変換する。
【0038】
Webブラウザ200は、編集後コンテンツデータd2xを受信すると(B−3)、そこに含まれる処理命令Pxを実行し、指定情報Xxにて特定される命令対象システムC1に対して命令p1xを送信する(B−4)。
【0039】
命令対象システムC1は、Webブラウザ200から命令p1xを受信すると(C−1)、命令実行手段310が命令記憶部D30から命令p1xに対応する命令p2xを取得し(C−2)、その命令p2xを実行する(C−3)。命令p1xに付加情報Zが付加されている場合、命令実行手段310は、予め定められている規則に従い、命令p2xにその付加情報Zを組み込んで実行する。
【0040】
実行される命令は、命令対象システムC1が実行可能なものであれば良く、限定されるものではない。たとえば、命令対象システムC1にのみ処理を行わせるものでも良いし、命令対象システムC1に接続される他の機器を制御させるものでも良い。また、Webブラウザ200に対して処理結果を返信するものでも良いし、指定された送信先に処理結果を送信するものでも良いし、いずれにも処理結果を返信しないものでも良い。以下に、その具体例を説明する。
【0041】
(例1:ファイル一覧要求)
図5(a)はファイル一覧要求を説明する説明図である。ユーザがWebブラウザ200に指定情報Xxを入力すると、指定情報XxがWebシステムA1に送信される。また、ユーザは、処理要求Y1として参照先のディレクトリを指定し、そのディレクトリのファイル一覧を要求すると、Webブラウザ200からその処理要求Y1が送信される(図中(1))。それを受信したWebサーバ100は、ファイル一覧の処理要求Y1に対応する編集前コンテンツデータd11を取得する。編集前コンテンツデータd11には、ファイル一覧を要求する命令p11を任意の指定情報Xにて指定される命令対象システムに送信する処理命令P1が含まれている。編集手段112は、任意の指定情報Xを指定情報Xxに基づいて変換し、命令p11に付加情報Z1を付加する。編集後コンテンツデータd21は送信手段113により送信される(図中(2))。付加情報としては、参照先のディレクトリを指定する情報Z1である。Webブラウザ200は、編集後コンテンツデータd21を受信すると、処理命令P1を実行する。これにより、付加情報Z1が付された命令p11が指定情報Xxにて指定される命令対象システムC1に送信される(図中(3))。命令対象システムC1では、命令実行手段310が、命令p11に対応する命令p21を選択し、命令p21に付加情報Z1を組み込んで実行する。命令p21は、付加情報Z1にて指定されるディレクトリのファイル一覧を作成し、Webブラウザに返信する命令である。その結果、命令対象システムC1にてファイル一覧が作成され、Webブラウザ200に返信される(図中(4))。
【0042】
(例2:ファイル転送要求)
図5(b)はファイル転送要求を説明する説明図である。ユーザは、指定情報Xxを入力すると、Webブラウザにより指定情報XxがWebサーバ100に送信される。また、ユーザは、ファイルと転送先を指定する情報を入力し、その転送先システムEへのそのファイルの転送要求をする処理要求Y2を入力すると、Webブラウザ200はWebサーバ100にその処理要求Y2を送信する(図中(1))。それを受信したWebサーバ100は、ファイル転送の処理要求Y2に対応する編集前コンテンツデータd12を取得する。編集前コンテンツデータd12には、ファイル転送を要求する命令p12を任意の指定情報Xにより指定される命令対象システムに送信する処理命令P2が含まれている。編集手段112は、編集前コンテンツデータd12の任意の指定情報Xを指定情報Xxに基づいて変換し、付加情報Z2,Z3を付加する。付加情報Z2はファイルを指定する情報であり、付加情報Z3は転送先を指定する情報であり、これらは受信した処理要求Y2から取得される。編集後コンテンツデータd22は送信手段113により送信される(図中(2))。Webブラウザ200は、送信手段113から編集後コンテンツデータd22を受信すると、それに従って処理を実行し、命令p12に付加情報Z2,Z3を付加し、指定情報Xxにて指定される命令対象システムC1に送信する(図中(3))。命令対象システムC1では、命令実行手段310が、命令p12に対応する命令p22を命令記憶部D30から選択し、命令p22に付加情報Z2,Z3を組み込んで実行する。命令p22は、命令対象システムC1に、付加情報Z2にて指定されるファイルを付加情報Z3にて指定される転送先システムEに転送させ、その結果値をWebブラウザに返信させる命令である。その結果、命令対象システムC1にて転送先システムへのファイル転送が行われ(図中(4))、結果値として転送成功/不成功がWebブラウザ200に送信される(図中(5))。
【0043】
(例3:バックアップ要求)
図5(c)はバックアップ要求を説明する説明図である。ユーザがWebブラウザ200に指定情報Xxを入力すると、Webブラウザ200により指定情報XxがWebサーバ100に送信される(図中(1))。また、Webブラウザ200は、バックグラウンドにて定期的に生成されるトリガに基づき、所定の記憶装置Fに更新又は追加されたファイルが存在するかを確認するファイル確認の処理要求Y3をWebサーバ100に送信する。なお、所定の記憶装置Fは、予めユーザにより指定され、Webブラウザ200に記憶されている。Webサーバ100は、それを受信すると、所定の記憶装置Fに更新又は追加されたファイルが存在するかを確認し、存在する場合は、取得手段111により処理要求Y3に対応する編集前コンテンツデータd13を取得する。編集前コンテンツデータd13には、保存先へのファイルの保存を要求する命令p13を任意の指定情報Xにて指定される命令対象システムに送信する処理命令P3が含まれている。編集手段112は、任意の指定情報Xを指定情報Xxに基づいて変換し、付加情報Z4,Z5を付加して編集コンテンツデータd23とする。付加情報Z4は保存先(例えばバックアップ用ディレクトリ)を指定する情報であり、付加情報Z5は保存対象のファイル又はそのファイルを特定する情報である。なお、付加情報Z4である保存先はユーザにより予め指定されているか、又は、編集手段112若しくは命令対象システムC1が所定の規則に従って決定する。編集後コンテンツデータd23は送信手段113により送信される(図中(2))。Webブラウザ200は、送信手段113から編集後コンテンツデータd23を受信すると、それに従って処理を実行し、指定情報Xxにて指定される命令対象システムC1に対して、保存命令p13に付加情報Z4,Z5を付加して送信する(図中(3))。命令対象システムC1では、命令実行手段310が、命令p13に対応する命令p23を命令記憶部D30から選択し、命令p23に付加情報Z4,Z5を組み込んで実行する。命令p23は、付加情報Z4にて指定される保存先システムGに、付加情報Z5にて指定されるファイルを保存し、その結果値をWebブラウザ200に返信する命令である。その結果、記憶装置Fにて更新又は追加されたファイルが保存先システムGに保存され、ファイルがバックアップされる(図中(4))。また、結果値としてバックアップ成功/不成功がWebブラウザ200に送信される(図中(5))。
【0044】
(例4:プリントアウト要求)
図5(d)はプリントアウト要求を説明する説明図である。ユーザは、指定情報Xxを入力すると、Webブラウザにより指定情報XxがWebサーバ100に送信される。また、ユーザは、指定するファイルのプリントアウトの要求をWebブラウザ200に入力すると、Webブラウザ200は、その処理要求Y4を送信する(図中(1))。Webサーバ100は、処理要求Y4を受信すると、処理要求Y4に対応する編集前コンテンツデータd14を取得する。編集前コンテンツデータd14には、ファイルのプリントアウトを要求する命令p14を任意の指定情報Xにて指定される命令対象システムに送信する処理命令P4が含まれている。編集手段112は、指定情報Xを指定情報Xxに基づいて変換し、命令p14に付加情報Z6を付加する。付加情報Z6はユーザにて指定されたファイル又はファイルを特定する情報である。編集後コンテンツデータd24は送信手段113により送信される(図中(2))。Webブラウザ200は、送信手段113から編集後コンテンツデータd24を受信すると、それに従って処理を実行し、命令p14に付加情報Z6を付加し、指定情報Xxにて指定される命令対象システムC1に送信する(図中(3))。命令対象システムC1は、命令実行手段310が、命令p14に対応する命令p24を命令記憶部D30から選択し、命令p24に付加情報Z6を組み込んで実行する。命令p24は、命令対象システムC1に対して、付加情報Z6にて指定されるファイルをプリンタにてプリントアウトし、その結果値をWebブラウザ200に返信する処理を実行させる命令である。その結果、命令対象システムC1にてファイルがプリントアウトされ(図中(4))、結果値としてプリントアウト成功/不成功がWebブラウザ200に送信される(図中(5))。
【0045】
(例5:外部機器への制御)
図5(e)は外部機器への制御を説明する説明図である。外部機器は命令対象システムC1に接続されており、命令対象システムC1からの命令により制御可能となっている。ユーザは、指定情報Xxを入力すると、Webブラウザにより指定情報XxがWebサーバ100に送信される。また、ユーザは、処理要求Y5として指定する外部機器Hへの制御を入力すると、Webブラウザ200はその処理要求Y5を送信する(図中(1))。Webサーバ100は、処理要求Y5を受信すると、処理要求Y5に対応する編集前コンテンツデータd15を取得する。編集前コンテンツデータd15には、任意の外部装置に対する所定の制御命令p15を任意の指定情報Xにて指定される命令対象システムに送信する処理命令が含まれている。編集手段112は、編集前コンテンツデータd15の任意の指定情報Xを指定情報Xxに基づいて変換し、制御命令p15に付加情報Z7を付加する。編集後コンテンツデータd25は送信手段により送信される(図中(2))。付加情報Z7は、ユーザにより入力された外部装置Hを指定する情報である。Webブラウザ200は、編集後コンテンツデータd25を受信すると、それに従って処理を実行し、指定情報Xxにて指定される命令対象システムC1に対して、制御命令p15に付加情報Z7を付して送信する(図中(3))。命令対象システムC1は、命令実行手段310が、制御命令p15に対応する命令p25を命令記憶部D30から選択し、命令p25に付加情報Z7を組み込んで実行する。命令p25は、指定された外部機器Hへの所定の制御命令である。その結果、指定された外部装置Hが制御命令p15に基づいて制御される(図中(4))。
【0046】
なお、コンテンツデータd1x,d2xの処理命令は、javascript(登録商標)やFlash(登録商標)の規格で記述されていても良いし、HTMLの規格で記述されていても良いし、その他の規格でもよい。
【0047】
WebシステムA1によれば、Webサーバ100からのコンテンツデータd2xに、所望の命令対象システムC1に対する所望の処理命令Pxが含まれているため、Webブラウザ100は、このコンテンツデータd2xを受信するだけで、命令対象システムC1に対して所望の命令を送信することができる。したがって、Webサーバ100から命令対象システムC1への直接制御が不可能な環境下においても、Webサーバ100からWebブラウザ200を介して命令対象システムC1の制御が可能となり、このような接続環境下においてもクライアントB1にて命令対象システムC1用のアプリケーションを不要とすることができる。
【0048】
また、命令対象システムC1から所望の転送先に所望のファイルを転送する場合においても、それに対応する転送命令がコンテンツデータd2xに含まれており、Webブラウザがコンテンツデータd2xを受信すると命令対象システムC1に転送命令が送信される。これにより、命令対象システムC1から所望の転送先にファイルが直接転送され、ユーザが命令対象システムC1からクライアントB1にファイルを移動させた後に、クライアントB1から更に転送先に転送するといった作業が不要となり、転送の操作が容易となる。
【0049】
(第2の実施の形態)
本実施の形態は、上記実施の形態に加えて、命令対象システムに認証機能を備えるものである。なお、同様の構成要素については、同じ符号を付して説明を省略する。
図6は、本実施の形態を説明する機能構成図であり、
図7は、動作を説明するフローチャートである。
【0050】
WebシステムA2は、Webサーバ100と接続されるライセンス情報記憶部RD11を備え、受信手段110と編集手段112は上記機能とは異なる機能を備える。
【0051】
ライセンス情報記憶部RD11は、ユーザのライセンス情報が蓄積記憶されたデータベースであり、ユーザ識別子a1,,,axと指定情報X1,,,,Xxと認証用識別子b1,,,bxとが対応付けて記憶されている(
図7参照)。ユーザ識別子axはユーザを識別する識別子であり、認証用識別子bxは命令対象システムC2ごとに一意に定められる識別子である。
【0052】
受信手段110は、Webブラウザ200からユーザ識別子axを受信する機能と、Webブラウザ200から認証要求Y9を受信する機能を備える。ユーザ識別子と認証要求とは、同時に受信しても、異なるタイミングで受信しても良い。
【0053】
取得手段111は、Webブラウザ200から、認証要求Y9に対応するコンテンツデータd19をコンテンツデータ記憶部D10から取得する機能を備える。
【0054】
編集手段112は、受信手段110が認証要求Y9を受信すると、ライセンス情報記憶部RD11からユーザ識別子axに対応する指定情報Xxと認証用識別子bxとを取得し、取得手段111で取得した編集前コンテンツデータd19を、認証用識別子bxを用いた認証命令p19を指定情報Xxにて指定される命令対象システムC2に送信する処理命令P9が含まれるコンテンツデータd29に編集する機能を備える。
【0055】
たとえば、認証要求Y9に対応する編集前コンテンツデータd19には、任意の認証用識別子bを用いた認証命令p19を任意の指定情報Xにて指定される命令対象システムに送信する処理命令P9が含まれている。認証命令p19は、命令対象システムC2の認証命令(認証用プログラム)p29を起動する命令である。編集手段112は、受信手段110が認証要求P9を受信すると、任意の指定情報Xをライセンス情報記憶部RD11から取得した指定情報Xxに基づいて変換し、任意の認証用識別子bをライセンス情報記憶部RD11から取得した認証用識別子bxに基づいて変換し、編集後コンテンツデータd29とする。なお、変換に際しては、認証用識別子bxをそのまま用いても良いし、認証用識別子bxを暗号化したものを用いても良い。
【0056】
クライアントB2は、Webブラウザ200に編集後コンテンツデータd29を受信すると、編集後コンテンツデータd29に従って処理を行う。その結果、命令対象システムC2に対して、認証用識別子bxを用いた認証命令p19が送信される。
【0057】
命令対象システムC2は、認証用識別子bが記憶されている認証用識別子記憶部D31を備える。認証用識別子bは命令対象システムC2に一意に定められる識別子であり、予め命令対象システムC2に設定されている。
【0058】
命令記憶部D30には、Webブラウザ200からの認証命令p19に対応する命令として、受信した認証用識別子bxと認証用識別子記憶部D31に記憶されている認証用識別子bとを照合する命令p29が記憶されている。
【0059】
命令対象システムC2の命令実行手段310は、Webブラウザ200から認証用識別子bxを用いた認証命令p19を受信すると、命令記憶部D30から認証命令p19に対応する命令p29を選択し、命令p29に認証用識別子bxを組み込んで実行する。
【0060】
(動作説明)
ユーザがクライアントB2にユーザ識別子axと認証要求Y9を入力すると、Webブラウザ200はそのユーザ識別子axと認証要求Y9をWebサーバ100に送信する(B2−1)。なお、ユーザ識別子axと認証要求Y9は同時に送信されても、異なるタイミングで送信されても良い。
【0061】
WebシステムA2は受信手段110にてユーザ識別子axと認証要求Y9を受信すると(A2−1)、取得手段111は、コンテンツデータ記憶部D10から認証用の編集前コンテンツデータd19を取得する(A2−2)。次に、編集手段112は、ライセンス情報記憶部RD11からユーザ識別子axに対応する指定情報Xxと認証用識別子bxを取得し、編集前コンテンツデータd19にそれらを組み込んで編集後コンテンツデータd29に編集する(A2−3)。編集後のコンテンツデータd29には、認証用識別子bxを用いた認証命令p19を指定情報Xxにて指定される命令対象システムC2に送信する処理命令P9が含まれる。編集後コンテンツデータd29は送信手段113によりWebブラウザ200に送信される(A2−4)。
【0062】
Webブラウザ200は、編集後コンテンツデータd29を受信すると(B2−3)、処理命令P9を実行し(B2−4)、認証用識別子bxを用いた認証命令p19を指定情報Xxにて特定される命令対象システムC2に送信する(B2−5)。
【0063】
命令対象システムC2は、これらを受信すると(C2−1)、命令実行手段310が認証命令p19に対応する命令p29を命令記憶部D30から取得する(C2−2)。そして、命令実行手段310が命令p29を実行することにより、認証用識別子bxと認証用識別子記憶部D31に記憶されている認証用識別子bとを照合し、一致した場合は認証成功としてその後の通信を許可し、不一致の場合は認証不成功としてその後の通信を不許可とする。これにより、クライアントB2を介したWebサーバ100からの通信の信頼性を命令対象システムC2にて確認し、通信の許可・不許可を行うことができる。なお、認証の結果は、必要に応じてクライアントB2に通知しても良い。
【0064】
(第3の実施の形態)
本実施の形態は、第2の実施の形態に加えて、Webシステムに認証機能を備えるものである。なお、上記実施の形態と同一の部分については、同一の符号を用いて説明を省略する。
図8は、本実施の形態を説明する機能構成図であり、
図9は、動作を説明するフローチャートである。
【0065】
WebシステムA3のWebサーバ200は、セッション識別子生成記憶手段114と照合手段115とを備え、編集手段112は上記と異なる機能を備える。
【0066】
セッション識別子生成記憶手段114は、クライアントB3のWebブラウザ200から接続要求を受信すると、そのWebブラウザ200とのセッションに対して一意に定められるセッション識別子cxを生成し、それをセッション識別子記憶部D12に記憶する機能を備える。セッション識別子cxはクライアントB3のWebブラウザ200と対応付けて記憶されており、その後のWebブラウザ200との通信は、このセッション識別子cxを用いて行われる。
【0067】
照合手段115は、命令対象システムC3からセッション識別子cxを受信すると、受信したセッション識別子cxをセッション識別子記憶部D12に記憶されているセッション識別子c1,,,cxと照合する機能を備える。
【0068】
編集手段112は、受信手段110がユーザ識別子axと認証要求Y9を受信すると、ライセンス情報記憶部RD11からユーザ識別子axに対応する指定情報Xxを取得し、取得手段111により取得したコンテンツデータd110を、処理命令P10が含まれた編集後コンテンツデータd210に編集する機能を備える。処理命令P10は、セッション識別子cxをWebサーバ100へ返送させる返送命令p110を指定情報Xxにて指定される命令対象システムC3に送信する命令である。たとえば、編集前コンテンツデータd110に、任意のセッション識別子cをWebサーバ100へ返送させる返送命令p110を任意の指定情報Xにて指定される命令対象システムに送信する処理命令P10が含まれている場合は、任意のセッション識別子cをセッション識別子cxに基づいて変換し、任意の指定情報Xを指定情報Xxに基づいて変換する。なお、任意のセッション識別子cは、生成したセッション識別子cxで置換しても良いし、セッション識別子cxを暗号化したもので置換しても良い。
【0069】
命令対象システムC3は、命令実行手段310に次の機能を備える。命令実行手段310は、Webブラウザ200からセッション識別子cxと返送命令p110を受信すると、命令実行手段310は、命令記憶部D30から返送命令p110対応する命令p210を選択し、受信したセッション識別子cxをそれに組み込んで実行する。命令p210は、受信したセッション識別子cxをWebサーバ100に返送する命令である。
【0070】
(動作説明)
Webブラウザ200がWebサーバ100に対して最初の接続要求を行う(B3−0)。Webサーバ100は、Webブラウザ200から最初の接続要求を受信すると、セッション識別子生成記憶手段114によりセッション識別子cxを生成してセッション識別子記憶部D12に記憶する(A3−0)。セッション識別子cxはWebブラウザ200と対応付けて記憶されている。このセッション識別子cxはWebブラウザ200にも引き渡され、その後のWebサーバ100とWebブラウザ200との通信は、互いにこのセッション識別子cxを付加することにより、通信先と通信元が特定可能となる。
【0071】
Webブラウザ200は、ユーザによりユーザ識別子axと認証要求Y9が入力されると、それをWebサーバ100に送信する(B3−1)。Webサーバ100はこれを受信すると(A3−1)、取得手段111によりその認証要求Y9に対応する編集前コンテンツデータd110をコンテンツデータ記憶部D10から取得する(A3−2)。編集手段112は、ライセンス情報記憶部RD11からユーザ識別子axに対応する指定情報Xxを取得し、編集前コンテンツデータd110を処理命令P10が含まれた編集後コンテンツデータd210に編集する(A3−3)。処理命令P10は、ユーザ識別子axをWebサーバ100に返送する返送命令p110を指定情報Xxにて指定される命令対象システムC3に送信する命令である。たとえば、編集前コンテンツデータd110に任意のセッション識別子bと返送命令p110を任意の指定情報Xにて指定される命令対象システムに送信する処理命令P10が含まれる場合は、任意のセッション識別子bをセッション識別子cxに基づいて変換し、任意の指定情報Xを取得した指定情報Xxに基づいて変換する。編集後コンテンツデータd210は送信手段113によりWebブラウザ200に送信される(A3−4)。
【0072】
Webブラウザ200は、編集後コンテンツデータd210を受信すると(B3−2)、そのコンテンツデータd210に従って処理を行う。その結果、セッション識別子cxと、そのセッション識別子cxをWebサーバA3へ返送させる返送命令p110が、指定情報Xxにて指定される命令対象システムC3に送信される(B3−3)。
【0073】
命令対象システムC3は、これらを受信すると(C3−1)、命令実行手段310が返送命令p110に対応する命令p210を命令記憶部D30から取得し(C3−2)、返送命令p110に含まれる返送先を命令p210に組み込んで実行する。これにより、セッション識別子cxがWebサーバ100に送信される(C3−3)。
【0074】
Webサーバ100は、命令対象システムC3からセッション識別子cxを受信すると(A3−5)、セッション識別子cxをセッション識別子記憶部D12に記憶されているセッション識別子c1,,,cxと照合する(A3−6)。その結果、一致するセッション識別子cxが存在した場合は、命令対象システムC3を介したクライアントB3からの通信は信頼できるため、Webサーバ100はセッション識別子cxを用いたその後の通信を許可する。
【0075】
すなわち、命令対象システムC3にてWebサーバ100からWebブラウザ200を介した通信の信頼性が確認され(第2の実施の形態参照)、WebシステムA3にてクライアントB3から命令対象システムC3を介した通信の信頼性が確認され(本実施の形態参照)、これにより、すべての通信の信頼性を確認可能となる。なお、命令対象システムC3にて認証が成功した場合のみ、命令対象システムC3がセッション識別子cxを返送するようにしても良い。これにより、命令対象システムC3にて認証が不成功の場合は、Webサーバ100における認証が行われず、結果として、すべての通信を不許可とすることができる。
【0076】
(実施例)
以下、具体的な実施例を説明する。本実施例は、上記各実施の形態のすべての機能を備える。なお、本発明はこの実施例に限定されるものではなく、本発明の範囲内で適宜変更可能である。
図10は、本実施例のネットワーク接続状態を説明する説明図である。WebシステムAと公開WebシステムJはグローバルエリアネットワークNET1を介して接続されている。クライアントBと命令対象システムCはローカルエリアネットワークNET2を介してグローバルエリアネットワークNET1に接続されている。WebシステムAのWebサーバ100と公開WebシステムJのWebサーバ400は、グローバルエリアネットワークNET1とローカルエリアネットワークNET2を介してクライアントBのWebブラウザ200からの要求に応答可能となっている。命令対象システムCはWebサーバ300を備え、ローカルエリアネットワークNET2を介してクライアントBのWebブラウザ200からの要求に応答可能となっている。WebシステムAと公開WebシステムJは、クライアントBと命令対象システムCからの要求に応答可能であるが、クライアントBと命令対象システムCに対する制御は不可能となっている。なお、公開WebシステムJは、公開用のファイルを公開WebシステムJ内の記憶装置に保存し、そのWebページをグローバルネットワークNET1を介して公開する機能を有するものである。
【0077】
<初期登録>
図11は、初期登録を説明するフローチャートである。ユーザからの入力に基づき、クライアントBのWebブラウザ200が命令対象システムCに対して登録要求を行うと(1−1)、命令対象システムCのWebサーバ300はそれを受信し(1−2)、登録画面用コンテンツデータを送信する(1−3)。Webブラウザ200はそれを受信して登録画面を表示する(1−4)。ユーザにより登録画面にユーザIDと送信要求が入力されると、Webブラウザ200はそのユーザIDを命令対象システムCのWebサーバ300に送信する(1−5)。Webサーバ300は、ユーザIDを受信すると(1−6)、認証キー記憶部に記憶されている認証キーを取得し(1−7)、認証キーとユーザIDと自己のIPアドレスをWebサーバ100に送信する(1−8)。なお、認証キーは命令対象システムCに一意に定められる識別子であり、予め命令対象システムCに設定されている。また、IPアドレスは、予め命令対象システムCに記憶されているか、又は、DHCPにより自動設定される。WebシステムAのWebサーバ100は、ユーザIDと認証キーとIPアドレスを受信すると(1−9)、これらを対応付けてライセンス情報データベースに記憶する(1−10)。これにより、初期登録が完了する。
【0078】
<認証処理>
図12と
図13は、認証処理を説明するフローチャートである。なお、
図12の後続処理として
図13が続く。ユーザはクライアントBのWebブラウザ200からログイン要求を入力すると、Webブラウザ200はWebシステムAのWebサーバ100に対してログイン要求を送信する(2−1)。Webサーバ100は、それを受信すると(2−2)、セッションIDを生成記憶し(2−3)、セッションIDをCookie情報として付帯しログイン用コンテンツデータを送信する(2−4)。Webブラウザ200は、それを受信して、ログイン用画面を表示すると共にセッションIDをCookie情報として記憶する(2−5)。ユーザがログイン用画面にユーザIDと認証要求を入力すると、Webブラウザ200はそれをCookie情報に記憶されたセッションIDと共にWebサーバ100に送信する(2−6)。以降のWebブラウザ200からWebサーバ100に対する通信においては、随時セッションIDをCookie情報として付帯し送信する事でWebサーバ100の記憶領域内の位置を特定可能とする。
【0079】
Webサーバ100は、受信手段110にてそれを受信すると(2−7)、ライセンス情報DBを参照し、受信したユーザIDに対応する認証キーとIPアドレスを取得する(2−8)。また、API認証ID(ワンタイムキー)を生成し、そのAPI認証IDと認証キーとを組み合わせて暗号化したAPI認証キーを生成し、セッションキー(ワンタイムキー)を生成し、生成したAPI認証ID・API認証キーをユーザIDと対応付けて記憶領域に記憶し、又、セッションキーをセッションIDと対応付けて記憶領域に記憶する(2−9)。Webサーバ100の取得手段111は、認証要求に対応するコンテンツデータを取得し(2−10)、編集手段112によりそれを編集する(2−11)。編集後のコンテンツデータには、第1の処理命令P9と第2の処理命令P10が含まれている(2−11)。第1の処理命令P9は、API認証IDとAPI認証キーを用いた認証命令p19を取得したIPアドレスにより指定される命令対象システムCに送信する命令であり、第2の処理命令P10は、セッションキーと返送命令p110を取得したIPアドレスにより指定される命令対象システムCに送信する命令である。ここで、返送命令p110は、セッションキーをWebサーバ100へ返送させる命令である。この編集後コンテンツデータは送信手段113によりWebブラウザ200に送信される(2−12)。
【0080】
クライアントBのWebブラウザ200は編集後コンテンツデータを受信すると(2−13)、処理命令P9を実行し、命令対象システムCに対してAPI認証ID・API認証キーを用いた認証命令p19の送信を行い、且つ、処理命令P10を実行し、セッションキーと返送命令p110を送命令対象システムCに送信する(2−14)。
【0081】
命令対象システムCは、それを受信すると(2−15)、認証命令p19と返送命令p110に対応する命令を命令記憶部から選択する(2−16)。認証命令に対応する命令の実行により、認証キーを認証キー記憶部から取得し、その認証キーをAPI認証IDと組み合わせて上記(2−9)と同様の暗号化を行い(2−17)、その暗号化した値とAPI認証キーとを照合し(2−18)、一致と判断された場合は認証成功とする(2−19)。認証命令p19の処理結果が認証成功である場合は、返送命令p110に対応する命令p210の実行により、セッションキーをWebサーバ100に送信する(2−20−1)。認証不成功の場合はここで認証処理を終了し、認証不成功の結果値をWebブラウザ200に送信する。Webブラウザ200はその結果値を受信する(2−20−2)。
【0082】
Webサーバ100はセッションキーを受信すると(2−21)、記憶領域を参照して、受信したセッションキーと一致するするセッションキーが存在するかを照合し(2−22)、一致した場合は認証成功と判断し(2−23)、セッションキーに対応付けられているセッションIDを命令対象システムCに返送する(2−24−1)。一致するセッションキーが存在しない場合は、認証不成功と判断し、その後の通信を不許可とするとともに、Webブラウザ200に認証不成功の結果値を送信する。Webブラウザ200はその結果値を受信し、認証不成功の表示等を行う(2−24−2)。
【0083】
命令対象システムCのWebサーバ300は、セッションIDを受信すると(2−25)、命令対象システムCのWebサーバ300とクライアントBのWebブラウザ200のセッションに一意に対応付けられるハンドラ(ワンタイムキー)を生成記憶し(2−26)、Webブラウザ200に送信する(2−27)。Webブラウザ200はハンドラを受信し(2−28)、それを記憶する(2−29)。その後の処理では、Webブラウザ200と命令対象システムCのWebサーバ300との通信においてこのハンドラを用いることにより、クライアントBと命令対象システムCとの通信が許可される。以上の一連の処理により、WebシステムAのWebサーバ100とクライアントBのWebブラウザ200と命令対象システムCのWebサーバ300の各間の通信の信頼性が確認される。
【0084】
<ファイル一覧取得>
ファイル一覧の取得は、ファイル転送の過程にて実施される。
図14はファイル一覧取得の処理を説明するフローチャートである。ユーザは、上記認証が終了した後、ファイル一覧操作画面を要求する入力を行う。Webブラウザ200はその要求をWebサーバ100に送信する(3−1)。Webサーバ100は、それを受信すると(3−2)、ファイル一覧操作画面を表示するコンテンツデータを送信する(3−3)。Webブラウザ200は、そのコンテンツデータを受信すると、それに従ってファイル一覧操作画面を表示する(3−4)。ユーザはその画面にて、初期登録にて登録した命令対象システムを指定し、その命令対象システム内の所望のディレクトリを指定する情報(ディレクトリパス)を入力し、そのディレクトリのファイル一覧の取得の処理要求を行う。Webブラウザ200は、その処理要求をWebサーバ100に送信する(3−5)。
【0085】
Webサーバ100は、受信手段110にて処理要求を受信すると(3−6)、取得手段111にてその処理要求に対応するファイル一覧用のコンテンツデータを取得する(3−7)。Webサーバ100は、Webブラウザ200とのセッションに用いられているセッションIDに基づいて、そのセッションIDで受信したユーザID((2−6)(2−7)参照)を取得し、ライセンス情報データベースを参照して、そのユーザIDに対応付けられる対象命令システムCのIPアドレスを取得する。すなわち、本実施例では認証時に受信したユーザIDが命令対象システムを指定する指定情報としての役割を果たし、その後の処理にはこのユーザIDにて特定されるIPアドレスが指定情報として用いられる。編集手段112は、そのコンテンツデータを、指定されたディレクトリのファイル一覧を要求する命令を上記IPアドレスにて指定される命令対象システムCに送信する処理命令を含むコンテンツデータに編集する(3−8)。
【0086】
図15は、編集前コンテンツデータであるHTMLファイルと編集後コンテンツデータであるHTMLファイルの例を示す図である。本実施例では、各処理要求に対応付けて「getlist」「sendfile」等の命令が記憶領域に記憶されている。編集手段112は、ファイル一覧取得の処理要求に対応する命令「getlist」を取得し、編集前コンテンツデータに含まれる処理命令「src=http://targetserver/command.php?cmd=xxx&data=yyy」の「targetserver」を取得したIPアドレスに置換し、プログラムファイル「command.php」への引数である「xxx」を「getlist」に置換し、「yyy」をWebブラウザ200から受信した「ディレクトリパス」に置換する。なお、「command.php」は命令対象システムの命令記憶部D30に記憶されているプログラムファイル名であり、「getlist」は指定されたディレクトリのファイル一覧を要求する命令である。
図16は「command.php」のプログラムである。このプログラムは引数「yyy」にて引き渡されるディレクトリパスやファイル名を処理対象として引数「xxx」にて引き渡される命令を実行するものである。編集後のコンテンツデータは、送信手段113によりWebブラウザ200に送信される(3−9)。
【0087】
Webブラウザ200は、編集後コンテンツデータを受信すると(3−10)、それを実行する。これにより、編集後の処理命令「<script type=”text/javascript”
src=http://IPアドレス/command.php?cmd=getlist&data=ディレクトリパス></script>」がJavascript(登録商標)コンテンツの読込処理として解析実行され、「command.php」を起動する命令及びそのプログラムに対する引数「cmd=getlist&data=ディレクトリパス」がIPアドレス先の命令対象システムCに送信される(3−11)。
【0088】
命令対象システムCは、その命令を受信すると(3−12)、命令記憶部から「command.php」により指定される命令(プログラムファイル)を選択し(3−13)、そのプログラムに引数「cmd=getlist&data=ディレクトリパス」を組み込んで実行する(3−14)。
図16は、選択された命令の一例を示す図である。これにより、指定されたディレクトリのファイル一覧がJavascript(登録商標)コンテンツとして作成され、Webブラウザ200に送信される(3−15)。それを受信したWebブラウザ200では(3−16)、受信したJavascript(登録商標)コンテンツを実行しファイル一覧を組み込んだ表示画面を表示する(3−17)。
【0089】
<ファイル転送>
図17はファイル転送の処理を説明するフローチャートである。ユーザは、表示画面に表示されたファイル一覧の中から、所望のファイルを指定し、指定転送先へのファイル転送の処理要求を入力すると、Webブラウザ200はその処理要求を送信する(4−1)。なお、本実施例において、ファイルの転送先は、予め命令対象システムC内に設定されている。Webサーバ100は、その処理要求を受信すると(4−2)、取得手段111によりコンテンツデータ記憶部からファイル転送用のコンテンツデータを取得する(4−3)。なお、Webサーバ100は、上記と同様に、Webブラウザ200とのセッションに用いられているセッションIDに基づいてユーザIDを特定し、そのユーザIDに対応付けられる対象命令システムCのIPアドレスを取得する。その後の処理にはこのIPアドレスが指定情報として用いられる。編集手段112は、取得したコンテンツデータを、指定したファイルの転送命令を上記IPアドレス先の命令対象システムCに送信する処理命令が含まれるコンテンツデータに編集する(4−4)。
【0090】
図18は、編集前コンテンツデータと編集後コンテンツデータの例を示す図である。編集手段112は、ファイル転送の処理要求に対応する命令「sendfile」を取得し、編集前コンテンツデータに含まれる処理命令「src=http://targetserver/command.php?cmd=xxx&data=yyy」の「targetserver」を取得した「IPアドレス」に置換し、プログラムファイル「command.php」への引数である「xxx」を「sendfile」に置換し、「yyy」をWebブラウザ200から受信した「ディレクトリパス/ファイル名」に置換する。編集後のコンテンツデータは送信手段113によりWebブラウザ200に送信される(4−5)。
【0091】
Webブラウザ200は、編集後コンテンツデータを受信すると(4−6)、それを実行する。これにより、編集後の処理命令「<script type=”text/javascript”
src=http://IPアドレス /command.php?cmd=sendfile&data=ディレクトリパス/ファイル名></script>」がJavascript(登録商標)コンテンツの読込処理として解析実行され、ファイル転送用のプログラム「command.php」を起動する命令及びそのプログラムに対する引数「yyy=sendfile&data=ディレクトリパス/ファイル名」がIPアドレス先の命令対象システムCに送信される(4−7)。
【0092】
命令対象システムCは、その命令を受信すると(4−8)、「command.php」により指定される命令(プログラムファイル)を選択し(4−9)、そのプログラムに引数「cmd=sendfile&data=ディレクトリパス/ファイル名」を組み込んで実行する(4−10)。これにより、指定された保存先のURLに指定されたファイルが転送される。なお、保存先のURLは、予め命令対象システムCに規則が設定されており、命令の実行に際しては、その規則に基づいて保存先のURLが決定される。その規則としては、例えば、「data」にて引き渡される「ディレクトリパス/ファイル名」に予め設定されているホスト名を付加し「サーバ名/ディレクトリパス/ファイル名」に変換し、これを保存先のURLとする。また、転送成功/不成功の結果値はWebブラウザ200に返送される。URLにて特定される公開WebシステムJの公開Webサーバ400では、そのファイルを受信し、URLにて特定されるディレクトリにそのファイルを保存する(4−11)。これにより、命令対象システムCに保存されているファイルを公開WebシステムJにアップロードすることができる。ユーザは、アップロードするファイルを命令対象システムCから公開WebシステムJに直接アップロードすることが可能となり、従来のように、ファイルを一旦クライアントBに移動させ、その後に公開Webサーバにアップロードするといった煩雑な操作が不要となる。
【0093】
なお、ここで、ユーザIDはユーザ識別子に対応し、認証キーとAPI認証IDとAPI認証キーは認証識別子に対応し、ユーザ識別子とIPアドレスは指定情報に対応し、セッションIDとセッションキーはセッション識別子に対応する。
【0094】
以上のように、本発明によれば、Webサーバから命令対象システムへの直接制御が不可能な接続環境下においても、WebサーバからWebブラウザを介して命令対象システムの制御が可能となり、この接続環境下においてもクライアントにて命令対象システム用のアプリケーションを不要とすることができる。また、ファイル転送に際しては、転送元から保存先へファイルを直接転送することが可能となり、従来のようにユーザが命令対象システムからクライアントにファイルを移動させ、その後にクライアントから転送先に移動させるといった煩雑な作業が不要となり、操作が非常に容易となる。
【0095】
(第4の実施の形態)
図19は、本発明の第4の実施を説明する機能構成図であり、
図20は、本実施の形態の動作を説明するフローチャートである。WebシステムSA1は、第一のサーバS1と第二のサーバS2とを備え、ネットワークNET1を介して通信可能となっている。クライアントB1と命令対象システムC1はネットワークNET2に接続されており、ネットワークNET2はネットワークNET1に接続可能となっている。第二のサーバS2はネットワークNET1とネットワークNET2を介してクライアントB1と通信可能となっている。ネットワークNET1は例えばインターネット等のグローバルエリアネットワークであり、ネットワークNET2は社内LAN等のローカルエリアネットワークである。NAT(Network Address Translation)等の一方向通信環境の関係等から、クライアントB1から第一のサーバS1や第二のサーバS2や命令対象システムC1に対する処理要求は可能であるが、WebシステムSA1から命令対象システムC1への直接制御は不可能となっている。
【0096】
第一のサーバS1は登録情報記憶部D11に接続可能であり、第二のサーバS2はコンテンツデータ記憶部D20に接続可能となっている。コンテンツデータ記憶部D10,D20は、ハードディスク等の記憶装置により実現されており、複数のコンテンツデータd1,d2,,,dxが記憶される。コンテンツデータは、Webブラウザに受信されたときに、そのWebブラウザに所定の処理を実行させる命令が記述されたプログラムファイルであり、例えば、HTMLファイルである。各コンテンツデータd1,,,dxは、クライアントB1からの各処理要求Y1,,,Yxに対応付け可能となっている。例えば、各処理要求がURLにて指定されるコンテンツデータの要求として受信される場合は、そのURLにて指定されるコンテンツデータとして対応付けされている。
【0097】
第一のサーバS1及び第二のサーバS2は、CPU・メモリ・ハードディスク・ネットワークI/O等の通信機能などを備えるコンピュータシステムにより実現されている。第一のサーバS1は、登録受付手段10とコンテンツデータ生成手段11と送信手段12とを備える。
【0098】
登録受付手段10は、命令対象システムC1を指定する指定情報Xxを含む登録情報Rxの登録を受け付ける機能を備える。受け付けられた登録情報Rxはコンテンツデータ記憶部D10に蓄積記憶される。ここで、指定情報Xxとは、例えば、命令対象システムを直接的又は間接的に指定可能な情報である。直接的に指定可能な情報としては、例えば、IPアドレスやサーバ名(ローカルホスト名やFQDN等)である。間接的に指定可能な情報としては、IPアドレスやサーバ名と関連付けて記憶されている識別子であり、例えばユーザ識別子である。前処理としてユーザ識別子と命令対象システムのIPアドレス若しくはサーバ名(ローカルホスト名やFQDN等)が事前登録される場合、WebシステムSA1の記憶部には、ユーザ識別子と命令対象システムのIPアドレスやサーバ名とが対応付けて記憶されている。第一のサーバS1はユーザ識別子を受信すると、そのユーザ識別子に対応付けて記憶されているIPアドレスやサーバ名を特定できる。なお、IPアドレスやサーバ名は、プライベートIPアドレスやローカルホスト名等のように、少なくともクライアントB1から命令対象システムC1を特定可能な情報であれば良い。
【0099】
コンテンツデータ生成手段11は、登録情報Rxに含まれる指定情報Xxにて指定される命令対象システムC1に対して命令を送信する処理命令が含まれたコンテンツデータを生成する機能を備える。
【0100】
(例1)
図21は、コンテンツデータ生成手段11の例1を説明する説明図である。コンテンツデータ生成手段11は、受け付けた登録情報Rxに含まれる指定情報Xxを取得し、又、命令が記憶されている命令記憶部D30から命令p1xを取得し、予め記憶されている編集前のコンテンツデータ内の処理命令Pxの所定箇所を指定情報Xxと命令p1xに変換することによりコンテンツデータdxを生成する。なお、命令記憶部D30に複数の命令が記憶されている場合は、各命令についてコンテンツデータを生成する。
【0101】
(例2)
図22はコンテンツデータ生成手段11の例2を説明する説明図であり、登録情報Rxに指定情報Xx及び命令p1xが含まれている場合の例である。コンテンツデータ生成手段11は、受け付けた登録情報Rxに含まれる指定情報Xxと命令p1xを取得し、予め記憶されている編集前のコンテンツデータ内の処理命令Pxの所定箇所を指定情報Xxと命令p1xに変換することによりコンテンツデータdxを生成する。
【0102】
このとき、指定情報Xxが命令対象システムのIPアドレス若しくはサーバ名である場合は、処理命令Px中の任意の指定情報をそのIPアドレス若しくはサーバ名に変換する。また、指定情報XxがIPアドレスやサーバ名と対応付けて記憶されている識別子(例えばユーザ識別子)である場合は、その識別子とそれに対応する命令対象システムのIPアドレス又はサーバ名が記憶部に事前登録されており、受信した識別子に対応するIPアドレス若しくはサーバ名を記憶部から取得し、処理命令Px中の任意の指定情報をそのIPアドレス若しくはサーバ名に変換する。
【0103】
送信手段12は、コンテンツデータ生成手段11にて生成されたコンテンツデータdxを第二のサーバS2に送信する機能を備える。
【0104】
第二のサーバS2は、受信手段20と記憶手段21と送信手段22とを備える。受信手段20は、第一のサーバS1から送信されたコンテンツデータdxを受信する機能を備え、記憶手段21はコンテンツデータ記憶部D20にコンテンツデータdxを記憶させる機能を備える。送信手段22は、クライアントB1からの要求に応じてコンテンツデータをクライアントB1に送信する機能を備える。詳細には、クライアントB1から処理要求Yxを受信すると、コンテンツデータ記憶部D20から、処理要求Yxに対応するコンテンツデータdxを取得し、そのコンテンツデータdxをクライアントB1に送信する。なお、クライアントB1からの処理要求は、ユーザの入力等によって発生するものでも良いし、クライアントB1がバックグラウンドで自動生成するものでも良い。前者としては、例えば、指定ディレクトリのファイル一覧の取得や、指定ファイルの指定先への転送などを命令対象システムに実行させる命令などであり、後者としては、例えば、所定の記憶装置に更新ファイルや新規ファイルが存在する場合は、それを所定の保存先にバックアップさせる命令などである。
【0105】
処理要求Yxは、例えば、その処理要求に対応するファイルを指定するURLなど、コンテンツデータ記憶部D20に記憶されているコンテンツデータd1xを選択的に要求する命令にて実現され、必要に応じて付加情報Zが付加される。付加情報Zとしては、例えば、ファイル一覧取得の場合はディレクトリを指定する情報、ファイル転送の場合はファイルを指定する情報、バックアップ要求の場合は保存先を指定する情報等である。各付加情報は、クライアントB1のWebブラウザ200にてユーザにより入力されたり、所定の規則に従って生成される。送信手段22は、処理要求Yxに付加情報Zが付加されている場合、所定の規則に従ってコンテンツデータdxに組み込む。
【0106】
クライアントB1は、CPU・メモリ・ハードディスク・通信機能・ディスプレイ・キーボード・マウス等を備えるパーソナルコンピュータなどであり、Webブラウザ200を備える。Webブラウザ200は、第二のサーバS2からコンテンツデータ(HTMLファイル等)dxを受信すると、そのコンテンツデータdxに記述されている命令(プログラム)に従って処理を行う。処理としては、命令対象システムC1に対する処理命令,ディスプレイへの画像表示,他サーバへの処理要求,その他、Webブラウザとしての一般的な処理である。
【0107】
命令対象システムC1は、クライアントB1から制御可能な形態で接続されるハードウェアある。命令対象システムC1は、CPUや記憶領域等を備えるコンピュータシステムを備える。この命令対象システムC1は、更に、プリンタ,スキャナ,FAX等のハードウェアに接続したり、これらをハードウェア資源として内蔵していても良い。
【0108】
命令対象システムC1は、Webブラウザ200から受信した命令p1xを実行する命令実行手段310を備える。
図23は、命令実行手段310を機能的に説明する説明図である。命令対象システムC1は、ハードディスク等の記憶領域に命令記憶部D30を備える。命令記憶部D30には、Webブラウザ200から受信する命令p11,,,p1xと対応付け可能な命令p21,,,p2xが記憶されている。命令実行手段310は、受信した命令p1xに対応する命令p2xを命令記憶部D30から取得して実行する。受信した命令p1xに付加情報Zが付加されている場合は、予め定められた規則に従って付加情報Zを命令p2xに組み込んで実行する。
【0109】
たとえば、命令記憶部D30に、命令p21,,,p2xとしてプログラムp21,,,p2xが記憶されている。命令実行手段310は、Webブラウザ200から命令p1xを受信すると、その命令p1xにて指定されるプログラムp2xを命令記憶部D30から選択して実行する。プログラムp21,,,p2xは、命令対象システムC1に関数や手続きやAPI等として記憶されている。なお、命令実行手段310はこれに限られるものではなく、受信した命令を実行可能であれば良い。
【0110】
(動作説明)
以下、動作説明を行う。ユーザは、予め登録情報Rxの登録を行う。具体的には、ユーザは任意のクライアントから第一のサーバS1にアクセスし、登録情報Rxを送信する。第一のサーバS1は登録情報Rxを受け付け、コンテンツデータ記憶部D10に記憶するとともに、コンテンツデータdxを生成する。生成されたコンテンツデータdxは第二のサーバS2に送信される。なお、登録情報Rxの登録は、クライアントB1から行われても良いし、他のクライアントから行われても良い。
【0111】
第二のサーバS2は、コンテンツデータdxを受信し、コンテンツデータ記憶部D20に記憶する。
【0112】
登録情報Rxの登録が完了すると、ユーザは第二のサーバS2にアクセスして命令対象システムC1に所望の命令を行うことができる。具体的には、ユーザは、第二のサーバS2からクライアントB1のWebブラウザ200に入力用画面を受信し、処理要求Yxを入力して第二のサーバS2に送信する。
【0113】
第二のサーバS2は、処理要求Yxを受信すると、処理要求Yxに対応するコンテンツデータdxをコンテンツデータ記憶部D20から選択的に取得し、クライアントB1に送信する。
【0114】
クライアントB1は、コンテンツデータdxを受信すると、Webブラウザ200にて、そこに含まれる処理命令Pxを実行し、指定情報Xxにて特定される命令対象システムC1に対して命令p1xを送信する。コンテンツデータdxはWebブラウザ200に所定の処理を実行させる命令が記述されたプログラムファイルであり、コンテンツデータdxに含まれる処理命令Pxは、命令対象システムC1にアクセスしてコンテンツを読込む処理としてWebブラウザ200上にて実行される。
【0115】
命令対象システムC1は、Webブラウザ200から命令p1xを受信すると、命令実行手段310が命令記憶部D30から命令p1xに対応する命令p2xを取得し、その命令p2xを実行する。
【0116】
実行される命令は、命令対象システムC1が実行可能なものであれば良く、限定されるものではない。たとえば、命令対象システムC1にのみ処理を行わせるものでも良いし、命令対象システムC1に接続される他の機器を制御させるものでも良い。また、Webブラウザ200に対して処理結果を返信するものでも良いし、指定された送信先に処理結果を送信するものでも良いし、いずれにも処理結果を返信しないものでも良い。以下に、その具体例を説明する。
【0117】
(例1:ファイル一覧要求)
図24(a)はファイル一覧要求を説明する説明図である。ユーザが処理要求Y1として指定情報Xxと参照先のディレクトリを指定し、そのディレクトリのファイル一覧を要求すると、Webブラウザ200からその処理要求Y1が送信される(図中(1))。それを受信した第二サーバS2は、ファイル一覧の処理要求Y1に対応するコンテンツデータd1を取得する。コンテンツデータd1には、ファイル一覧を要求する命令p11を指定情報Xxにて指定される命令対象システムに送信する処理命令P1が含まれている。更に、第二のサーバS2は命令p11に付加情報Z1を付加する。コンテンツデータd1は送信手段113により送信される(図中(2))。付加情報としては、参照先のディレクトリを指定する情報Z1である。Webブラウザ200は、コンテンツデータd1を受信すると、処理命令P1を実行する。これにより、付加情報Z1が付された命令p11が指定情報Xxにて指定される命令対象システムC1に送信される(図中(3))。命令対象システムC1では、命令実行手段310が、命令p11に対応する命令p21を選択し、命令p21に付加情報Z1を組み込んで実行する。命令p21は、付加情報Z1にて指定されるディレクトリのファイル一覧を作成し、Webブラウザに返信する命令である。その結果、命令対象システムC1にてファイル一覧が作成され、Webブラウザ200に返信される(図中(4))。
【0118】
(例2:ファイル転送要求)
図24(b)はファイル転送要求を説明する説明図である。ユーザは、指定情報Xx、及び、ファイルと転送先を指定する情報を入力し、その転送先システムEへのそのファイルの転送要求をする処理要求Y2を入力すると、Webブラウザ200から処理要求Y2が送信される(図中(1))。それを受信した第二のサーバS2は、ファイル転送の処理要求Y2に対応するコンテンツデータd2を取得する。コンテンツデータd2には、ファイル転送を要求する命令p12を指定情報Xxにより指定される命令対象システムに送信する処理命令P2が含まれている。第二のサーバS2は、コンテンツデータd2に付加情報Z2,Z3を付加する。付加情報Z2はファイルを指定する情報であり、付加情報Z3は転送先を指定する情報であり、これらは受信した処理要求Y2から取得される。コンテンツデータd2は送信手段113により送信される(図中(2))。Webブラウザ200は、コンテンツデータd2を受信すると、それに従って処理を実行し、命令p12に付加情報Z2,Z3を付加し、指定情報Xxにて指定される命令対象システムC1に送信する(図中(3))。命令対象システムC1では、命令実行手段310が、命令p12に対応する命令p22を命令記憶部D30から選択し、命令p22に付加情報Z2,Z3を組み込んで実行する。命令p22は、命令対象システムC1に、付加情報Z2にて指定されるファイルを付加情報Z3にて指定される転送先システムEに転送させ、その結果値をWebブラウザに返信させる命令である。その結果、命令対象システムC1にて転送先システムへのファイル転送が行われ(図中(4))、結果値として転送成功/不成功がWebブラウザ200に送信される(図中(5))。
【0119】
(例3:バックアップ要求)
図24(c)はバックアップ要求を説明する説明図である。Webブラウザ200が、バックグラウンドにて定期的に生成されるトリガに基づき、指定情報Xx、及び、所定の記憶装置Fに更新又は追加されたファイルが存在するかを確認するファイル確認の処理要求Y3を第二のサーバS2に送信する。なお、所定の記憶装置Fは、予めユーザにより指定され、Webブラウザ200に記憶されている。第二のサーバS2はそれを受信すると、所定の記憶装置Fに更新又は追加されたファイルが存在するかを確認し、存在する場合は、処理要求Y3に対応するコンテンツデータd3を取得する。編集前コンテンツデータd3には、保存先へのファイルの保存を要求する命令p13を指定情報Xxにて指定される命令対象システムに送信する処理命令P3が含まれている。第二のサーバS2は、コンテンツデータd3に付加情報Z4,Z5を付加する。付加情報Z4は保存先(例えばバックアップ用ディレクトリ)を指定する情報であり、付加情報Z5は保存対象のファイル又はそのファイルを特定する情報である。なお、付加情報Z4である保存先はユーザにより予め指定されているか、又は、予め設定されている所定の規則に従って決定する。コンテンツデータd3はクライアントB1に送信される(図中(2))。Webブラウザ200は、コンテンツデータd3を受信すると、それに従って処理を実行し、指定情報Xxにて指定される命令対象システムC1に対して、保存命令p13に付加情報Z4,Z5を付加して送信する(図中(3))。命令対象システムC1では、命令実行手段310が、命令p13に対応する命令p23を命令記憶部D30から選択し、命令p23に付加情報Z4,Z5を組み込んで実行する。命令p23は、付加情報Z4にて指定される保存先システムGに、付加情報Z5にて指定されるファイルを保存し、その結果値をWebブラウザ200に返信する命令である。その結果、記憶装置Fにて更新又は追加されたファイルが保存先システムGに保存され、ファイルがバックアップされる(図中(4))。また、結果値としてバックアップ成功/不成功がWebブラウザ200に送信される(図中(5))。
【0120】
(例4:プリントアウト要求)
図24(d)はプリントアウト要求を説明する説明図である。ユーザは、指定情報Xx、及び、指定するファイルのプリントアウトの要求をWebブラウザ200に入力すると、Webブラウザ200は、その処理要求Y4を送信する(図中(1))。Webサーバ100は、処理要求Y4を受信すると、処理要求Y4に対応するコンテンツデータd4を取得する。コンテンツデータd4には、ファイルのプリントアウトを要求する命令p14を指定情報Xxにて指定される命令対象システムに送信する処理命令P4が含まれている。第二のサーバS2は、命令p14に付加情報Z6を付加する。付加情報Z6はユーザにて指定されたファイル又はファイルを特定する情報である。編集後コンテンツデータd4はクライアントB1に送信される(図中(2))。Webブラウザ200は、コンテンツデータd4を受信すると、それに従って処理を実行し、命令p14に付加情報Z6を付加し、指定情報Xxにて指定される命令対象システムC1に送信する(図中(3))。命令対象システムC1は、命令実行手段310が、命令p14に対応する命令p24を命令記憶部D30から選択し、命令p24に付加情報Z6を組み込んで実行する。命令p24は、命令対象システムC1に対して、付加情報Z6にて指定されるファイルをプリンタにてプリントアウトし、その結果値をWebブラウザ200に返信する処理を実行させる命令である。その結果、命令対象システムC1にてファイルがプリントアウトされ(図中(4))、結果値としてプリントアウト成功/不成功がWebブラウザ200に送信される(図中(5))。
【0121】
(例5:外部機器への制御)
図24(e)は外部機器への制御を説明する説明図である。外部機器は命令対象システムC1に接続されており、命令対象システムC1からの命令により制御可能となっている。ユーザは、指定情報Xx、及び、外部機器Hへの制御命令15を入力すると、Webブラウザ200はその処理要求Y5を送信する(図中(1))。第二のサーバS2は、処理要求Y5を受信すると、処理要求Y5に対応するコンテンツデータd5を取得する。コンテンツデータd5には、外部装置Hに対する所定の制御命令p15を任意の指定情報Xにて指定される命令対象システムに送信する処理命令が含まれている。第二のサーバS2は、制御命令p15に付加情報Z7を付加する。コンテンツデータd5はクライアントB1に送信される(図中(2))。付加情報Z7は、ユーザにより入力された外部装置Hを指定する情報である。Webブラウザ200は、コンテンツデータd5を受信すると、それに従って処理を実行し、指定情報Xxにて指定される命令対象システムC1に対して、制御命令p15に付加情報Z7を付して送信する(図中(3))。命令対象システムC1は、命令実行手段310が、制御命令p15に対応する命令p25を命令記憶部D30から選択し、命令p25に付加情報Z7を組み込んで実行する。命令p25は、指定された外部機器Hへの所定の制御命令である。その結果、指定された外部装置Hが制御命令p15に基づいて制御される(図中(4))。
【0122】
なお、コンテンツデータdxの処理命令は、javascript(登録商標)やFlash(登録商標)の規格で記述されていても良いし、HTMLの規格で記述されていても良いし、その他の規格でもよい。
【0123】
WebシステムSA1によれば、第二のサーバS2からのコンテンツデータdxに、所望の命令対象システムC1に対する所望の処理命令Pxが含まれているため、クライアントB1は、このコンテンツデータd2xを受信するだけで、命令対象システムC1に対して所望の命令を送信することができる。したがって、第二のサーバS2から命令対象システムC1への直接制御が不可能な環境下においても、第二のサーバS2からWebブラウザ200を介して命令対象システムC1の制御が可能となり、このような接続環境下においてもクライアントB1にて命令対象システムC1用のアプリケーションを不要とすることができる。
【0124】
そして、コンテンツデータdxは、Webブラウザ200に所定の処理を実行させる命令が記述されたプログラムファイルであり、コンテンツデータdxに含まれる処理命令Pxは、命令対象システムにアクセスしてコンテンツを読込む処理としてWebブラウザ200上にて実行されるものである。すなわち、クライアントB1は、Webブラウザ200を搭載していれば、Webブラウザ200にてコンテンツデータdxを解析し、命令対象システム内のコンテンツを二次要求することとなり、実質的に当該コンテンツ要求処理が命令対象システムに対するコマンド送信として伝達されることとなる。つまり、Webブラウザ本来のブラウジング処理におけるコンテンツ解析・要求といった機能を備えるだけで命令対象システムC1にコマンドを送信することが可能となるものである。これにより、クライアントB1は専用のアプリケーションが不要となり、Webブラウザが搭載されている様々な電子機器からサーバに接続するだけで、命令対象システムC1に対して処理命令を行うことが可能となる。
【0125】
また、命令対象システムC1から所望の転送先に所望のファイルを転送する場合においても、それに対応する転送命令がコンテンツデータdxに含まれており、Webブラウザがコンテンツデータdxを受信すると命令対象システムC1に転送命令が送信される。これにより、命令対象システムC1から所望の転送先にファイルが直接転送され、ユーザが命令対象システムC1からクライアントB1にファイルを移動させた後に、クライアントB1から更に転送先に転送するといった作業が不要となり、転送の操作が容易となる。
【0126】
(第5の実施の形態)
図25は、本発明の第5の実施を説明する機能構成図であり、
図26は、本実施の形態の動作を説明するフローチャートである。第4の実施の形態と同一要素については同一の符号を用いて説明を省略し、以下に相違点のみについて説明する。
【0127】
WebシステムSA2は、第一のサーバS1と第二のサーバS2を備え、第二のサーバS2がコンテンツデータを生成する。第一のサーバS1は受信した登録情報Rxを送信手段101により第二のサーバS2に送信する。第二のサーバS2は、その登録情報Rxを受信手段201により受信すると、記憶手段202により登録情報記憶部D21に記憶するとともに、コンテンツデータ生成手段203によりコンテンツデータdxを生成する。
【0128】
なお、上記例では、第二のサーバS2にて、登録情報Rxの受信ごとにコンテンツデータdxを生成しているが、これに限られるものではない。他の例としては、処理要求Yxを受信するごとに、コンテンツデータdxを生成しても良い。すなわち、処理要求Yxを受信すると、その処理要求Yxに対応する登録情報Rxを登録情報記憶部D21から取得し、その登録情報Rxを用いてコンテンツデータdxを生成し、クライアントB1に送信しても良い。
【0129】
なお、上記第4の実施の形態、及び、第5の実施の形態において、第二のサーバS2はネットワークNET1に接続可能となっているが、ネットワークNET2のDMZ領域に接続可能となっていても良い。このような場合でも、第二のサーバS2から直接制御が不可能な命令対象システムC1を操作可能となり、又、専用のアプリケーションが不要となる。
【0130】
さらに、第二のサーバS2がネットワークNET2に接続可能となっており、命令対象システムC1を直接制御可能な環境下に置かれていても良い。このような場合でも、クライアントB1では専用のアプリケーションが不要となる点で有効である。
【0131】
(第6の実施の形態)
図27は、本発明の第6の実施を説明する機能構成図であり、
図28は、本実施の形態の動作を説明するフローチャートである。第4の実施の形態と同一要素については同一の符号を用いて説明を省略し、以下に相違点のみについて説明する。
【0132】
WebシステムSA3は、サーバS3とクライアントB1とを備える。サーバS3にて生成されたコンテンツデータdxは、クライアントB1からの要求に応じて、送信手段112によりクライアントB1に送信される。クライアントB1は、受信手段201によりコンテンツデータdxを受信すると、記憶手段202によりコンテンツデータ記憶部D200にコンテンツデータdxを記憶させる。
【0133】
Webブラウザ200がユーザから処理要求Yxを受け付けると、Webブラウザ200は処理要求Yxに対応するコンテンツデータRxを取得し、処理命令Pxを実行する。なお、ここで処理要求Yxは、コンテンツデータdxを指定するURL等である。
【0134】
(第7の実施の形態)
図29は、本発明の第7の実施を説明する機能構成図であり、
図30は、本実施の形態の動作を説明するフローチャートである。WebシステムS4は第1のサーバS4を備える。
【0135】
第1のサーバS4は、登録情報Rxの受付から、クライアントB1に対するコンテンツデータdxの送信までの全ての機能を備えるものである。第1のサーバS4は、登録情報Rxを受信すると、登録情報記憶部D11に登録情報Rxを記憶し、コンテンツデータ生成手段11によりコンテンツデータdxを生成する。生成されたコンテンツデータdxはコンテンツデータ記憶部D10に記憶され、クライアントB1からの処理要求Yxに応じてクライアントB1に送信される。これにより、クライアントB1にて命令対象システムC1に専用のアプリケーションが不要となる。なお、クライアントB1からの処理要求Yxごとにコンテンツデータdxを生成しても良い点は、上記第6の実施の形態と同様である。
【0136】
(実施例1)
本実施例1は、命令対象システムC1がグラフ表示用データを有しており、命令p1xがグラフ表示用データの読み出し要求であり、コンテンツデータdxがグラフ表示用データをグラフ表示するアプリケーションを含む場合を例に説明する。
【0137】
図31は、本発明の実施例1を説明するデータ例及びプログラム実装例である。
図31(a)は、命令対象システムC1のサーバ名(ホスト名)にあたる指定情報Xxであり、
図31(b)は命令対象システムC1に送信される処理命令p1xであり、
図31(c)はXxとp1xの情報を内包する登録情報Rxである。
【0138】
登録情報Rxは前記第4、第5の実施形態ではS1に、第6の実施形態ではS3に、第7の実施形態ではS4に登録蓄積される。
【0139】
図31(d)は、前記コンテンツ生成の手段において生成前のコンテンツであり、生成前コンテンツDxの特定箇所に登録情報Rxを差し込むことにより、
図31(e)の生成後コンテツdxが生成される。
【0140】
図31(f)は、
図31(e)の生成後コンテンツdxをクライアントB1からのコンテンツ要求Yxに対して応答する際に付帯するFlashアプリケーションファイル内のスクリプトである。具体的には、サーバがコンテンツ要求Yxを受信後、生成後コンテンツdxをクライアントB1に対して応答送信し、クライアントB1は受信した生成後コンテンツdx内の<embed>タグのsrc属性”graph.swf?data_url=http://targetserver/getdata.php/(Zx)”を解釈し二次要求としてFlashアプリケーションファイル”graph.swf”がサーバに要求される。また、上記src属性内の(Zx)は前記付加情報Z1〜Z7に該当し、前記コンテンツ要求YxにおいてGETやPOST等で指定されたパラメータ値を挿入し応答することで、クライアントB1から指定されたパラメータをdx内の登録情報Rxに内包する。本実施例ではZxとして日付を指定する。クライアントB1のブラウザ上で受信されたFlashファイル”graph.swf”は、ブラウザのプラグインとして動作するFlashPlayerによって実行される。FlashPlayerは、”graph.swf”を実行すると同時に、前記src属性内に記載された登録情報Rx”data_url=http://targetserver/getdata.php/(Zx)”を取得し、内部変数”_root.data_url”に格納する。
【0141】
_root.data_urlに格納されたRx情報を元に命令対象システムC1に対して、グラフデータ取得命令p1xを送信する。この際、登録情報Rxには前記の通り付加情報Zxを含むことからp1xとして付加情報Zxも同時に送信することで、命令対象システムC1は、処理命令p1xとパラメータ値としてのZxを受信する。
【0142】
図31(g)は、クライアントB1から送信される命令処理p1xを受信した際に実行される命令対象システムC1内のphpスクリプトである。本スクリプトは付加情報Zxの値を日付パラメータとして取得し、該当のデータを応答する。
【0143】
処理命令p1xの結果値を受信後、
図31(f)のスクリプトにおいて受信データをブラウザ上にグラフ表示する為の処理を実行する。
【0144】
以上の処理手順により、クライアントB1のブラウザ上から指定された日付のデータを、公開サーバ上のグラフ表示アプリケーションによって表示することが可能となる。また、表示するデータは公開サーバ上からは直接アクセスできない環境下に存在する命令対象システムC1から受信するといった本発明特有の効果が発揮される。
【0145】
(実施例2)
本実施例2は、命令対象システムが掲示板表示データを有しており、命令p1xが掲示板表示用データの読み出し要求であり、前記コンテンツデータが当該掲示板表示用データを掲示板表示するアプリケーションを含む場合を例に説明する。
【0146】
(実施例2)
本実施例2は、命令対象システムが掲示板表示データを有しており、命令p1xが掲示板表示用データの読み出し要求であり、前記コンテンツデータが当該掲示板表示用データを掲示板表示するアプリケーションを含む場合を例に説明する。
【0147】
図32は、実施例2を説明するデータ例及びプログラム実装例である。
【0148】
図32(a)〜(c)は、実施例1と同様の為、説明を省略する。
図32(d)は実施例1と同様に生成前コンテンツであるが、生成時に差し替えする箇所が<embed>タグではなく<script>タグである。<script>タグのsrc属性を登録情報(Rx)に差し替えることにより、
図32(e)の生成後コンテンツdxとなる。
【0149】
クライアントB1からのコンテンツ要求Yxに対して、
図32(e)の生成後コンテンツdxを応答送信すると、クライアントB1のブラウザがdx内の<script>タグを解釈し、src属性内の登録情報(Rx)http://targetserver/getdata.php?date=(Zx)に対して二次要求を行う。これにより、命令対象システムC1に登録情報(Rx)内の処理命令p1xが送信される。
【0150】
処理命令p1xを受信した命令対象システムC1は、
図32(f)のデータ出力スクリプトが実行され、付加情報Zxで指定された日付に対応するデータを抽出し、JavaScript(登録商標)形式で応答する。
【0151】
クライアントB1は、命令対象システムC1の応答結果を受信し、表示領域へ受信データを書き込むことで、掲示板情報がブラウザ上に表示される。
【0152】
以上の処理手順により、ブラウザB1から指定された日付(Zx)に該当する掲示板情報を、公開サーバから受信したコンテンツ上に表示することが可能となる。また、表示するデータは公開サーバ上からは直接アクセスできない環境下に存在する命令対象システムC1から受信するといった本発明特有の効果が発揮される。
【0153】
なお、実施例1、実施例2では生成後コンテンツdxの生成方法として、<embed>タグや<script>タグの差し替えによって命令対象システムC1にp1xを送信しているが、これに限定されるものではなく、<img><iframe><object><style>等のタグでも良いし、html以外のデータとして登録情報RxをJavascriptファイル、Flash(swf)ファイル、XMLファイル、テキストファイル等に差し込み生成後コンテンツdxとしても良い。
【0154】
なお、本発明は上記実施の形態や実施例に限定されるものではなく、発明の範囲内において適宜変更可能である。命令対象システムはWebサーバを備えるWebシステムに限定されるものではなく、例えば、プリンタやファックスやスキャナや記憶装置等、コンピュータシステムを備えてクライアントからの命令を実行可能なものであれば良い。上記実施の形態では、命令対象システムはローカルネットワークを介して接続されているが、例えばUSBやシリアルケーブル等によりクライアントと直接接続されても良い。Webシステムとクライアントと命令対象システムの接続は上記実施の形態に限られるものではなく、例えば、すべてがローカルエリアネットワークで接続されたり、すべてがグローバルネットワークで接続されたり、全てが別のネットワークセグメント帯に接続されたり、どのような接続でも良い。ただし、クライアントから命令対象システムへの直接制御が可能な接続環境に限る。更に、Webシステムから命令対象システムを直接制御することが不可能な接続環境下においては、Webシステムからクライアントを介して命令対象システムを制御するという本発明の効果が特に発揮される。また、クライアントから送信される処理要求は、HTMLやJavascript(登録商標)といったブラウザ自体の機能によって送信されても良いし、Flash(登録商標)やJavaアプレット(登録商標)、Silverlight(登録商標)といったプラグイン等ブラウザ上で動作可能なプラグラムや、ブラウザから起動される外部プログラム、ブラウザを監視するプログラム等、ブラウザと連携可能なものであればどのような機能で送信しても良い。処理要求の内容は命令対象システムに対して処理を要求するものでも良いし、Webシステムに対して処理を要求するものでも良いし、その他のシステムに対するものでも良く、その処理内容も限定されない。