(57)【要約】【課題】外部システムへのデータ送信の安定性を向上させる。【解決手段】トークンをその有効状態と共に複数個記憶する記憶部と、外部システムと前記トークン又はデータの送受信を行う通信部と、前記外部システムへの前記トークンの更新の依頼と前記トークンを用いた前記データの送受信を制御する制御部と、を備え、前記制御部は、前記記憶部に予め有効な前記トークンを複数記憶させ、前記依頼に基づく前記トークンの更新が失敗した場合に、前記更新を行ったトークンとは異なる有効な前記トークンを用いて前記外部システムへ前記データを送信するように通信部を制御することを特徴とする情報処理装置が提供される。【選択図】図３
2017151859.tif 000002
【特許請求の範囲】
【請求項１】
トークンをその有効状態と共に複数個記憶する記憶部と、
外部システムと前記トークン又はデータの送受信を行う通信部と、
前記外部システムへの前記トークンの更新の依頼と前記トークンを用いた前記データの送受信を制御する制御部と、を備え、
前記制御部は、前記記憶部に予め有効な前記トークンを複数記憶させ、前記依頼に基づく前記トークンの更新が失敗した場合に、前記更新を行ったトークンとは異なる有効な前記トークンを用いて前記外部システムへ前記データを送信するように通信部を制御することを特徴とする情報処理装置。              
【請求項２】
前記制御部は、前記トークンの各更新時期が相違するように前記依頼を行う、請求項１に記載の情報処理装置。
【請求項３】
前記制御部は、各トークンが有効になってからの経過時間又は各トークンが失効するまでの時間に基づいて、前記トークンの更新の依頼を行う、請求項１又は２に記載の情報処理装置。
【請求項４】
前記制御部は、一定の間隔でトークンの更新の依頼を制御する、請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記制御部は、前記トークンの更新又は前記データの送信が失敗した場合に、前記トークンの更新の依頼又は前記データの送信をリトライする、請求項１から４のいずれか１項に記載の情報処理装置。
【請求項６】
前記記憶部が記憶する前記トークンの更新の状態を表示し、前記トークンの更新の依頼、前記トークンの新規追加又は前記トークンの削除を制御する表示制御部をさらに備えた、請求項１から５のいずれか１項に記載の情報処理装置。
【請求項７】
トークンを複数個記憶する機能と、
外部システムと前記トークン又はデータの送受信を行う機能と、
前記外部システムへの前記トークンの更新の依頼と前記データの送受信を制御する機能と、
前記依頼に基づく前記トークンの更新が失敗した場合に、有効なトークンを用いて前記外部システムへ前記データを送信する機能と、
をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
近日、スマートフォン等の普及と共に、ユーザ間で手軽にコミュニケーションを行うことができる対話型コミュニケーションサービスが人々の生活に浸透している。対話型コミュニケーションサービス上では、テキストメッセージだけでなく、スタンプ、音声通話、画像、動画等を用いた様々なコミュニケーションをとることが可能である。このような様々なコンテンツの中には、個人情報等が含まれる場合があるため、対話型コミュニケーションサービスは、安全性の高い環境を用いて提供されることが必要である。
【０００３】
ここで、サーバアクセスの安全性を高める技術の一つに、トークンを用いた認証技術がある。トークンというキー情報を用いてサーバへのアクセスを認証することで、サーバへの不正アクセスを防ぐことができる。
【０００４】
しかし、トークンを用いた認証が完全に安全というわけではない。仮に、トークンが何等かの理由で流出し、第三者に不正に取得された場合、当該トークンを用いて第三者がサーバへ不正にアクセスする可能性がある。トークンが流出した場合に、サーバが第三者に不正にアクセスされないように、トークンには有効期限を設定することが推奨されている。その場合、有効期限が過ぎる前にトークンを更新することが必要となる。
【０００５】
トークンやトークンの更新に関する先行技術として、非特許文献１には、トークンを自動更新する技術が、特許文献１には、メモリアクセスの際にトークンを変更する技術が、特許文献２には、トークンが不正である場合にトークンを再発行する技術が、特許文献３には、トークンを更新するための技術が開示されている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】“ログインとアクセストークン”、［ｏｎｌｉｎｅ］、Ｋｉｉ株式会社、［平成２８年２月１日検索］、インターネット〈URL: http://documentation.kii.com/ja/starts/cloudsdk/managing-users/accesstoken/〉
【特許文献】
【０００７】
【特許文献１】特開２０１３−１４０４４６号公報
【特許文献２】特開２０１３−８１０６号公報
【特許文献３】特開２０１３−２４６６５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
万が一、トークンの更新が失敗した場合、アクセス先の外部システムにてトークンの認証ができないため、当該外部システムへのアクセスが失敗し、データ送信も失敗する。
【０００９】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、外部システムへのデータ送信の安定性を向上させることが可能な、新規かつ改良された情報処理装置、プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明のある観点によれば、トークンをその有効状態と共に複数個記憶する記憶部と、外部システムと前記トークン又はデータの送受信を行う通信部と、前記外部システムへの前記トークンの更新の依頼と前記トークンを用いた前記データの送受信を制御する制御部と、を備え、前記制御部は、前記記憶部に予め有効な前記トークンを複数記憶させ、前記依頼に基づく前記トークンの更新が失敗した場合に、前記更新を行ったトークンとは異なる有効な前記トークンを用いて前記外部システムへ前記データを送信するように通信部を制御することを特徴とする情報処理装置が提供される。
【００１１】
前記制御部は、前記トークンの各更新時期が相違するように前記依頼を行ってもよい。
【００１２】
前記制御部は、各トークンが有効になってからの経過時間又は各トークンが失効するまでの時間に基づいて、前記トークンの更新の依頼を行ってもよい。
【００１３】
前記制御部は、一定の間隔でトークンの更新の依頼を制御してもよい。
【００１４】
前記制御部は、前記トークンの更新又は前記データの送信が失敗した場合に、前記トークンの更新の依頼又は前記データの送信をリトライしてもよい。
【００１５】
前記記憶部が記憶する前記トークンの更新の状態を表示し、前記トークンの更新の依頼、前記トークンの新規追加又は前記トークンの削除を制御する表示制御部をさらに備えてもよい。
【００１６】
また、上記課題を解決するために、本発明の別の観点によれば、トークンを複数個記憶する機能と、外部システムと前記トークン又はデータの送受信を行う機能と、前記外部システムへの前記トークンの更新の依頼と前記データの送受信を制御する機能と、前記依頼に基づく前記トークンの更新が失敗した場合に、有効なトークンを用いて前記外部システムへ前記データを送信する機能と、をコンピュータに実現させるためのプログラムが提供される。
【発明の効果】
【００１７】
以上説明したように本発明によれば、外部システムへのデータ送信の安定性を向上させることが可能である。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態による情報処理システムの構成を示す説明図である。
【図２】携帯端末を操作するユーザと銀行サーバを有する金融機関との対話画面の具体例を示す説明図である。
【図３】本実施形態による中継サーバの構成を示す説明図である。
【図４】本実施形態による中継サーバのトークン記憶部が記憶するトークンのデータを示す説明図である。
【図５】本実施形態によるトークンの更新の態様を示す説明図である。
【図６】本実施形態による対話型コミュニケーションサービスサーバの構成を示す説明図である。
【図７】本実施形態による銀行サーバの構成を示す説明図である。
【図８】本実施形態による携帯端末の構成を示す説明図である。
【図９】情報処理システムの第１の動作を示す説明図である。
【図１０】情報処理システムの第１の動作を示す説明図である。
【図１１】情報処理システムの第２の動作を示す説明図である。
【図１２】比較例の中継サーバのトークン記憶部が１個のトークンを記憶している場合に、トークンの更新が失敗した時の動作の説明図である。
【図１３】本実施形態によるトークン更新時の動作を示す説明図である。
【図１４】本実施形態において、トークン管理画面でトークンの更新依頼を行う際の画面遷移図である。
【図１５】本実施形態において、トークン管理画面でトークンの新規登録を行う際の画面遷移図である。
【図１６】本実施形態において、トークン管理画面でトークンの削除を行う際の画面遷移図である。
【図１７】中継サーバを実現し得る情報処理装置のハードウェア構成を示したブロック図である。
【発明を実施するための形態】
【００１９】
以降では、添付図面を参照しながら、本発明の実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００２０】
また、本明細書および図面において、実質的に同一の機能構成を有する複数の構成要素を、同一の符号の後に異なるアルファベットを付して区別する場合もある。ただし、実質的に同一の機能構成を有する複数の構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。
【００２１】
＜１．情報処理システムの概要＞
対話型コミュニケーションサービスは、ユーザ間だけでなく、企業間およびユーザと企業間で様々なコミュニケーションをとることを可能にする。本明細書では、本発明の実施形態として、金融機関がユーザへ提供する口座情報照会サービスを説明する。このサービスは、ユーザが金融機関の口座残高や入出金明細等の口座情報を確認したい場合に、ユーザが金融機関に対して所定のスタンプ又はメッセージ等を送ることによって、金融機関から連携された口座情報を確認できる、というサービスである。
【００２２】
まず、図１を参照し、本発明の実施形態における情報処理システムの概要を説明する。図１は、本発明の実施形態における情報処理システムの構成を示す説明図である。図１に示したように、本発明の実施形態による情報処理システムは、中継サーバ１００と、対話型コミュニケーションサービスサーバ２００と、銀行サーバ３００と、携帯端末４００と、を備える。中継サーバ１００、対話型コミュニケーションサービスサーバ２００、銀行サーバ３００および携帯端末４００は、ネットワーク５１０、５２０、５３０により接続される。
【００２３】
ネットワーク５１０、５２０、５３０（以下、単にネットワーク５００と総称する場合もある）は、ネットワーク５００に接続されている装置から送信される情報のための有線、又は無線の伝送路である。例えば、ネットワーク５００は、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ｅｔｈｅｒｎｅｔ（登録商標）を含む各種のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などを含んでもよい。また、ネットワーク５００は、ＩＰ−ＶＰＮ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ−Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）などの専用回線網を含んでもよい。
【００２４】
携帯端末４００は、金融機関の顧客であるユーザにより利用されるユーザ機器の一例である。携帯端末４００は、対話型コミュニケーションサービスサーバ２００を介して、携帯端末４００のユーザについての情報を取得することが可能である。
【００２５】
なお、本実施形態においては、携帯端末４００のユーザについての情報の一例として、口座残高および入出金明細などの口座情報を主に説明するが、ユーザについての情報は口座情報に限定されない。例えば、本発明が証券取引サービスに適用される場合、ユーザについての情報は証券の保有状況であってもよい。また、本発明がホテルや映画などの予約照会サービスに適用される場合、ユーザについての情報は、ホテルや映画などの予約状況を示す情報であってもよい。また、図１においては、携帯端末４００の一例として携帯端末４００を示しているが、ユーザ機器は、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）およびウェアラブル機器などの情報処理装置であってもよい。ユーザは、ユーザ機器に専用のアプリケーションをインストールするだけで、当該サービスを利用できる。
【００２６】
対話型コミュニケーションサービスサーバ２００は、対話型コミュニケーションサービスを提供するサーバである。対話型コミュニケーションサービスサーバ２００は、携帯端末４００に、通信相手との対話画面を提供し、携帯端末４００から送信された情報および通信相手から送信された情報を上記対話画面に逐次追加する。以下、図２を参照し、本実施形態による対話型コミュニケーションサービスサーバ２００が提供する通信相手との対話画面の具体例を説明する。
【００２７】
図２は、携帯端末４００を操作するユーザと銀行サーバ３００を有する金融機関との対話画面の具体例を示す説明図である。図２に示したように、対話画面において携帯端末４００が口座情報要求を意味する画像４２３（いわゆる、スタンプ）を送信すると、対話型コミュニケーションサービスサーバ２００は、中継サーバ１００を介して銀行サーバ３００から携帯端末４００のユーザの口座情報を取得し、当該口座情報を示す口座情報メッセージ４２４を対話画面に追加する。その結果、携帯端末４００のユーザは、直接銀行サーバ３００にアクセスすることなく、簡易に自身の口座情報を把握することができる。
【００２８】
中継サーバ１００は、対話型コミュニケーションサービスサーバ２００と銀行サーバ３００との間のデータ連携を行うための中継用の情報処理装置である。具体的には、中継サーバ１００は、携帯端末４００のユーザのログイン情報を記憶し、当該ログイン情報を用いて銀行サーバ３００にログインし、銀行サーバ３００から携帯端末４００のユーザの口座情報を取得し、口座情報を対話型コミュニケーションサービスサーバ２００に送信する。中継サーバ１００が対話型コミュニケーションサービスサーバ２００へアクセスする場合、中継サーバ１００が対話型コミュニケーションサービスサーバ２００へトークンを送信し、対話型コミュニケーションサービスサーバ２００がトークンの認証を行うことにより、サーバ間のアクセスが確立される。中継サーバ１００は、例えば金融機関やシステムベンダのデータセンタに設置される。
【００２９】
銀行サーバ３００は、ネットワーク５００を介して口座情報照会および入出金明細照会等のインターネットバンキングサービスを提供することが可能な金融機関のサーバである。ユーザのログイン情報を用いて銀行サーバ３００へログインすることが可能である。ユーザのログイン情報は、例えば、金融機関の店番、口座の科目、口座番号、およびログインパスワード等である。本実施形態の場合、ログイン情報は中継サーバ１００に保存されており、中継サーバ１００は当該ログイン情報を用いることで銀行サーバ３００へアクセスを行う。
【００３０】
＜２．各情報処理装置の構成＞
（中継サーバの構成）
図３は、本実施形態による中継サーバ１００の構成を示す説明図である。図３に示したように、中継サーバ１００は、通信部１１０と、制御部１２０と、記憶部１３０と、表示制御部１４０と、を備える。
【００３１】
通信部１１０は、対話型コミュニケーションサービスサーバ２００および銀行サーバ３００向けのインタフェースであり、対話型コミュニケーションサービスサーバ２００および銀行サーバ３００との間でトークンおよび口座情報のデータの送受信を行う。例えば、通信部１１０は、対話型コミュニケーションサービスサーバ２００から口座情報要求を受信し、口座情報要求を銀行サーバ３００へ送信する。また、通信部１１０は、銀行サーバ３００からユーザの口座情報を受信し、ユーザの口座情報およびトークンを対話型コミュニケーションサービスサーバ２００に送信する。また、トークンの更新の際は、通信部１１０は、対話型コミュニケーションサービスサーバ２００へトークン更新のリクエストを送信し、更新されたトークンを、レスポンスとして対話型コミュニケーションサービスサーバ２００から受信する。
【００３２】
制御部１２０は、トークン制御部１２１およびデータ制御部１２２を備える。
【００３３】
トークン制御部１２１は、通信部１１０に、対話型コミュニケーションサービスサーバ２００へトークンの更新を依頼させる。また、トークン制御部１２１は、通信部１１０が更新されたトークンを受信した際、更新されたトークンをトークン記憶部１３１へ保存させる。
【００３４】
データ制御部１２２は、通信部１１０に、対話型コミュニケーションサービスサーバ２００および銀行サーバ３００と口座情報のデータを送受信させる。データ制御部１２２が通信部１１０に対話型コミュニケーションサービスサーバ２００へデータを送信させる場合は、アクセス認証のために通信部１１０にトークンを対話型コミュニケーションサービスサーバ２００へ送信させる。データ制御部１２２が通信部１１０にトークンを送信させるタイミングは、データ送信前、又は、データ送信時等があり、そのタイミングはアクセス先のサーバの設定に応じて変更され得る。
【００３５】
記憶部１３０は、トークン記憶部１３１およびユーザ情報記憶部１３２を備える。
【００３６】
トークン記憶部１３１は、中継サーバ１００が対話型コミュニケーションサービスサーバ２００へアクセスする際に使用するトークンを記憶する。図４に示すように、本実施形態によるトークン記憶部１３１は、トークンを複数個記憶する。本実施形態では、一例として４個のトークン（トークンＡ〜Ｄ）を記憶しているが、複数個であれば何個でもよい。この時、トークン記憶部１３１は、有効な状態のトークンを複数個記憶するものとする。
【００３７】
図５は、本実施形態によるトークンの更新の態様を示す説明図である。図５に示すように、トークン記憶部１３１が記憶している複数のトークンの各更新時期は相違するよう設定される。また、少なくとも１つのトークンの更新時期が、その他のトークンの更新時期と相違するように設定されてもよい。つまり、全てのトークンの更新時期が同一にならなければ良い。これにより、トークンの更新が失敗して、有効なトークンが枯渇することを防ぐことが可能となる。
【００３８】
また、トークン記憶部１３１は、トークンの各種情報を記憶する。トークンの各種情報は、例えば、トークンＩＤ、トークンの状態、有効期限である。トークンの状態は、例えば、有効、無効、更新中等のように、データ送信のためのトークンの利用可否に関わる情報である。トークンの状態が有効である場合は、当該トークンはデータ送信に利用可能であり、トークンの状態が無効である場合は、トークンの有効期限が過ぎているため当該トークンはデータ送信に利用不可である。トークンの状態が更新中である場合は、トークンの更新のリクエストが対話型コミュニケーションサービスサーバ２００へ送信され、更新後のトークンを含むレスポンスが中継サーバ１００に未着であるため、当該トークンはデータ送信に利用不可である。
【００３９】
ユーザ情報記憶部１３２は、銀行サーバ３００へアクセスして口座情報を取得するためのログイン情報を記憶する。さらに、ユーザ情報記憶部１３２は、対話型コミュニケーションサービスサーバ２００が口座情報要求を行う時に中継サーバ１００へ送信する、ユーザに関するユーザ情報と、前述のログイン情報を紐づけて記憶している。これにより、対話型コミュニケーションサービスサーバ２００から口座情報要求とユーザ情報が送信されると、中継サーバ１００は、ユーザ情報に基づいて、ユーザ情報記憶部１３２から銀行サーバ３００へのログイン情報を取得し、当該ログイン情報と口座情報要求を銀行サーバ３００へ送信することで、銀行サーバ３００へアクセスし、口座情報を取得する。
【００４０】
表示制御部１４０は、本実施形態における様々な管理作業をＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）で行うことを可能にする。具体的には、表示制御部１４０は、トークンの管理、スタンプの管理、利用者データの管理、サービスの停止等をＧＵＩで行うことを可能にする。その詳細は、「７．第３の処理例」へ記載する。
【００４１】
（対話型コミュニケーションサービスサーバの構成）
図６は、本実施形態による対話型コミュニケーションサービスサーバ２００の構成を示す説明図である。図６に示したように、対話型コミュニケーションサービスサーバ２００は、通信部２１０と、制御部２２０と、記憶部２３０と、を備える。
【００４２】
通信部２１０は、中継サーバ１００および携帯端末４００向けのインタフェースであり、中継サーバ１００および携帯端末４００との間でトークン、口座情報およびユーザ情報のデータの送受信を行う。例えば、通信部２１０は、携帯端末４００から口座情報要求を受信し、当該口座情報要求とユーザ情報を中継サーバ１００へ送信する。また、通信部２１０は、中継サーバ１００からトークンとユーザの口座情報を受信し、トークン認証が成功した場合に、ユーザの口座情報を携帯端末４００に送信する。また、通信部２１０は、中継サーバ１００からトークン更新のリクエストを受信し、更新したトークンをレスポンスとして中継サーバ１００へ送信する。
【００４３】
制御部２２０は、トークン制御部２２１およびデータ制御部２２２を備える。
【００４４】
トークン制御部２２１は、通信部２１０が中継サーバ１００からトークン更新のリクエストを受信した後に、トークンを更新する。さらに、トークン制御部２２１は、更新したトークンをトークン記憶部２３１へ記憶させ、通信部２１０に更新されたトークンを含むレスポンスを中継サーバ１００へ送信させる。
【００４５】
データ制御部２２２は、通信部２１０が携帯端末４００から口座情報要求を受信した後に、通信部２１０に中継サーバ１００へ口座情報要求とユーザ情報を送信させる。また、通信部２１０が中継サーバ１００からトークンおよび口座情報を受信すると、データ制御部２２２は、トークン記憶部２３１に記憶されているトークンに基づいて、トークンの認証を行う。トークンの認証に成功した場合は、データ制御部２２２は、通信部２１０に口座情報を携帯端末４００へ送信させる。トークンの認証に失敗した場合は、データ制御部２２２は、通信部２１０に中継サーバ１００へ認証失敗通知を送信させる。
【００４６】
記憶部２３０は、トークン記憶部２３１およびユーザ情報記憶部２３２を備える。
【００４７】
トークン記憶部２３１は、中継サーバ１００が対話型コミュニケーションサービスサーバ２００へアクセスする際に認証を行うためのトークンを記憶する。対話型コミュニケーションサービスサーバ２００へアクセスする情報処理装置が、本実施形態における中継サーバ１００以外にも存在する場合は、トークン記憶部２３１は、それらの情報処理装置を認証するためのトークンも記憶する。
【００４８】
ユーザ情報記憶部２３２は、口座情報を取得する対象ユーザを指定するためのユーザ情報を記憶する。通信部２１０が、口座情報要求と共にユーザ情報を中継サーバ１００へ送信することで、口座情報を必要としているユーザを指定する。
【００４９】
（銀行サーバの構成）
図７は、本実施形態による銀行サーバ３００の構成を示す説明図である。図７に示したように、銀行サーバ３００は、通信部３１０と、制御部３２０と、ユーザ情報記憶部３３０と、入力部３４０と、を備える。
【００５０】
通信部３１０は、中継サーバ１００向けのインタフェースであり、中継サーバ１００との間でログイン情報や口座情報等の送受信を行う。具体的には、通信部３１０は、中継サーバ１００からログイン情報と口座情報要求を受信し、ログイン認証が成功した場合は、通信部３１０は、制御部３２０が取得した口座情報を中継サーバ１００に送信する。
【００５１】
制御部３２０は、通信部３１０が中継サーバ１００から受信したログイン情報に基づいてログイン認証を行う。具体的には、通信部３１０が中継サーバ１００から金融機関の店番、口座の科目、口座番号およびログインパスワード等のログイン情報を受信すると、制御部３２０は、ユーザ情報記憶部３３０が記憶している情報と当該ログイン情報を比較することで認証を行う。制御部３２０は、認証が失敗した場合に、通信部３１０に認証失敗通知を中継サーバ１００へ送信させる。一方、制御部３２０は、認証が成功した場合には、通信部３１０にユーザ情報記憶部３３０から取得した口座情報を中継サーバ１００へ送信させる。また、制御部３２０は、ユーザへ向けたメッセージ情報が入力部３４０から入力された場合、通信部３１０に当該メッセージを中継サーバ１００へ送信させる。
【００５２】
入力部３４０は、銀行サーバ３００の金融機関が携帯端末４００のユーザ等に対して送信したいメッセージを入力するためのインタフェースである。具体的には、金融機関は、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を利用して、メッセージの内容および宛先を指定することができる。また、金融機関は、メッセージ以外にも画像、動画又はスタンプ等の対話型コミュニケーションサービス上で扱えるオブジェクトを指定することができる。
【００５３】
（携帯端末の構成）
図８は、本実施形態による携帯端末４００の構成を示す説明図である。図８に示したように、携帯端末４００は、通信部４１０、対話型コミュニケーションサービスアプリケーション４２０、操作部４３０と、表示部４４０と、を備える。
【００５４】
操作部４３０は、携帯端末４００のユーザによる操作を検出する。例えば、ユーザは、この操作部４３０への操作により、口座情報要求をするためのスタンプ等を入力することが可能である。なお、操作部４３０の具体例には、タッチパネル、タッチパッド、キーボード、マウス又はボタン等が挙げられる。
【００５５】
表示部４４０は、対話型コミュニケーションサービスアプリケーション４２０が表示部４４０を制御することにより、多様な画面を表示する。例えば、本実施形態による表示部４４０は、対話型コミュニケーションサービスのための対話画面を表示する。なお、表示部４４０は、液晶ディスプレイやＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）等の、オブジェクトを表示できるものであればよい。
【００５６】
通信部４１０は、対話型コミュニケーションサービスサーバ２００向けのインタフェースであり、対話型コミュニケーションサービスサーバ２００との間で口座情報等のデータの送受信を行う。例えば、通信部４１０は、操作部４３０への操作により口座情報要求をするためのスタンプ等が入力された場合に、対話型コミュニケーションサービスサーバ２００へ口座情報要求を送信する。また、通信部４１０は、対話型コミュニケーションサービスサーバ２００から口座情報を受信する。
【００５７】
対話型アプリケーション４２０は、操作部４３０への操作により口座情報要求をするためのスタンプ等が入力された場合、通信部４１０に口座情報要求を対話型コミュニケーションサービスサーバ２００に送信させる。また、対話型アプリケーション４２０は、通信部４１０が対話型コミュニケーションサービスサーバ２００から口座情報を受信した場合に、表示部４４０に口座情報を表示させる。
【００５８】
＜３．情報処理システムの動作＞
以上では、本実施形態による情報処理システムの構成を説明した。続いて、図９〜１１を参照し、サービス利用時の情報処理システムの動作を説明する。
【００５９】
（情報処理システムの第１の動作）
図９、１０は、情報処理システムの第１の動作を示す説明図である。具体的には、図９、１０は前述の口座情報照会サービスの動作を表している。図９、１０に示したように、携帯端末４００の対話型コミュニケーションサービスアプリケーション４２０が起動し（Ｓ１０１）、対話画面においてユーザにより口座情報を要求する操作が行われると、携帯端末４００の通信部４１０が口座情報要求を対話型コミュニケーションサービスサーバ２００に送信する（Ｓ１０２）。
【００６０】
対話型コミュニケーションサービスサーバ２００のデータ制御部２２２は、通信部２１０が携帯端末４００から口座情報要求を受信すると、ユーザ情報記憶部２３２から携帯端末４００のユーザを特定するためのユーザ情報を取得し、通信部２１０に当該ユーザ情報および口座情報要求を中継サーバ１００へ送信させる（Ｓ１０３）。
【００６１】
続いて、中継サーバ１００のデータ制御部１２２は、通信部１１０がユーザ情報および口座情報要求を受信すると、ユーザ情報に基づいて、ユーザ情報記憶部１３２から銀行サーバ３００にログインするためのログイン情報を取得する。そして、データ制御部１２２は、通信部１１０にログイン情報および口座情報要求を銀行サーバ３００へ送信させる（Ｓ１０４）。
【００６２】
銀行サーバ３００の制御部３２０は、通信部３１０がログイン情報および口座情報要求を受信すると、ユーザ情報記憶部３３０に記憶されているユーザの情報と、通信部３１０が受信したログイン情報に基づいてユーザ認証を行う（Ｓ１０５）。そして、ユーザ認証が失敗した場合（Ｓ１０５／ＮＯ）、制御部３２０は、通信部３１０に認証失敗通知を中継サーバ１００へ送信させる（Ｓ１０６）。
【００６３】
中継サーバ１００の通信部１１０が、銀行サーバ３００から認証失敗通知を受信すると、中継サーバ１００のデータ制御部１２２が、認証失敗メッセージを生成する（Ｓ１０７）。さらに、データ制御部１２２は、トークン記憶部１３１から有効なトークンを取得し、通信部１１０に対話型コミュニケーションサービスサーバ２００へトークンと認証失敗メッセージを送信させる（Ｓ１０８）。
【００６４】
続いて、対話型コミュニケーションサービスサーバ２００の通信部２１０が中継サーバ１００からトークンと認証失敗メッセージを受信すると、データ制御部２２２が、トークン記憶部２３１に記憶されているトークンに基づいて、通信部２１０が受信したトークンを認証する。認証が失敗した場合（Ｓ１０９／ＮＯ）、通信部２１０が認証失敗通知を中継サーバ１００へ送信する（Ｓ１１０）。認証が成功した場合（Ｓ１０９／ＹＥＳ）、通信部２１０が中継サーバ１００から受信した認証失敗メッセージを携帯端末４００に中継する（Ｓ１１１）。
【００６５】
携帯端末４００の通信部４１０が認証失敗メッセージを受信すると、表示部４４０は当該認証失敗メッセージを表示する（Ｓ１１２）。
【００６６】
一方、Ｓ１０５において銀行サーバ３００による認証が成功した場合（Ｓ１０５／ＹＥＳ）、銀行サーバ３００の制御部３２０は、ユーザ情報記憶部３３０からユーザの口座情報を取得し、通信部３１０に当該口座情報を中継サーバ１００へ送信させる（Ｓ１１３）。その後、制御部３２０はログアウト処理を行う（Ｓ１１４）。
【００６７】
その後、中継サーバ１００のデータ制御部１２２は、通信部１１０が銀行サーバ３００から口座情報を受信すると、口座情報メッセージを生成する（Ｓ１１５）。さらに、データ制御部１２２は、トークン記憶部１３１から有効なトークンを取得し、通信部１１０にトークンと口座情報メッセージを対話型コミュニケーションサービスサーバ２００へ送信させる（Ｓ１１６）。
【００６８】
対話型コミュニケーションサービスサーバ２００のデータ制御部２２２は、通信部２１０が中継サーバ１００からトークンと口座情報メッセージを受信すると、トークン記憶部２３１に記憶されているトークンに基づいて、トークンを認証する。認証が失敗した場合（Ｓ１１７／ＮＯ）、通信部２１０が認証失敗通知を中継サーバ１００へ送信する（Ｓ１１８）。認証が成功した場合（Ｓ１１７／ＹＥＳ）、通信部２１０が中継サーバ１００から受信した口座情報メッセージを携帯端末４００に中継する（Ｓ１１９）。
【００６９】
携帯端末４００の通信部４１０が口座情報メッセージを受信すると、表示部４４０は当該口座情報メッセージを表示する（Ｓ１２０）。
【００７０】
（情報処理システムの第２の動作）
図１１は、情報処理システムの第２の動作を示す説明図である。具体的には、図１１は、銀行サーバ３００の金融機関が携帯端末４００のユーザに対してメッセージを送信する動作を説明した図である。前述の通り、送信するオブジェクトはメッセージ以外でもよい。具体的には、送信するオブジェクトは、画像、動画又はスタンプ等の対話型コミュニケーションサービス上で扱えるオブジェクトであればよい。ここでは、一例として、メッセージを送信する場合について記載する。
【００７１】
銀行サーバ３００の金融機関は、銀行サーバ３００の入力部３４０から、携帯端末４００のユーザへ送信したいメッセージを入力する（Ｓ２０１）。この時、金融機関は、メッセージの送信先のユーザを指定するための宛先情報をメッセージと併せて入力部３４０に入力できてもよい。その後、銀行サーバ３００の制御部３２０は、通信部３１０にメッセージを中継サーバ１００へ送信させる（Ｓ２０２）。
【００７２】
中継サーバ１００のデータ制御部１２２は、通信部１１０が銀行サーバ３００からメッセージを受信すると（Ｓ２０３）、トークン記憶部１３１から有効なトークンを取得し、通信部１１０にトークンとメッセージを対話型コミュニケーションサービスサーバ２００へ送信させる（Ｓ２０４）。
【００７３】
対話型コミュニケーションサービスサーバ２００の通信部２１０が中継サーバ１００からトークンとメッセージを受信すると（Ｓ２０５）、データ制御部２２２が、トークン記憶部２３１が記憶しているトークンに基づいて、通信部２１０が中継サーバ１００から受信したトークンを認証する。認証が失敗した場合（Ｓ２０６／ＮＯ）、通信部２１０が認証失敗通知を中継サーバ１００へ送信する（Ｓ２０７）。認証が成功した場合（Ｓ２０６／ＹＥＳ）、通信部２１０が中継サーバ１００から受信したメッセージを携帯端末４００へ中継する（Ｓ２０８）。
【００７４】
携帯端末４００の通信部４１０がメッセージを受信すると（Ｓ２０９）、表示部４４０は当該メッセージを表示する（Ｓ２１０）。
【００７５】
＜４．第１の処理例＞
ここで、図１２を用いて、比較例の中継サーバにおいて、トークンの更新が失敗した場合の動作を説明する。図１２は、比較例の中継サーバのトークン記憶部が１個のトークンを記憶している場合に、トークンの更新が失敗した時の動作の説明図である。図１２に示すように、比較例の中継サーバのトークン記憶部は１個のトークン（トークンＡ）のみを記憶しており、トークンＡの有効期間は４週間であるとする。この場合、最後の更新日から４週間が過ぎるまでに、トークンＡの更新依頼が行われる。具体的には、比較例の中継サーバの通信部が、トークンＡの更新依頼のリクエストを対話型コミュニケーションサービスサーバ２００へ送信する。
【００７６】
仮に、ネットワーク障害等により、トークンＡの更新依頼のリクエストが対話型コミュニケーションサービスサーバ２００に達しない場合は、トークンの更新が完了しないため、リカバリが行われるまで、比較例の中継サーバから対話型コミュニケーションサービスサーバ２００へのデータ送信が不可能になる。また、ネットワーク障害等により、対話型コミュニケーションサービスサーバ２００で更新されたトークンＡを含むレスポンスが比較例の中継サーバに達しない場合にも同様の事象が発生する。
【００７７】
一方、本実施形態おいては、前述の図４に示すように、本実施形態によるトークン記憶部１３１は、トークンを複数個記憶する。そして、トークン記憶部１３１は、有効な状態のトークンを複数個記憶する。これにより、トークンの更新が失敗した際に、中継サーバ１００が、対話型コミュニケーションサービスサーバ２００へのデータ送信に他の有効なトークンを使用することで、上記の問題は解消される。
【００７８】
次に、図１３を参照しながら、本実施形態によるトークン更新時の動作を説明する。図１３に示すように、中継サーバ１００のトークン制御部１２１が、トークン更新依頼を行う（Ｓ３０１）。具体的には、トークン制御部１２１は、トークン記憶部１３１が記憶しているトークンの中から更新対象であるトークンを検索し、更新対象のトークンが存在する場合には、トークン制御部１２１は、通信部１１０にトークンの更新依頼のリクエストを対話型コミュニケーションサービスサーバ２００へ送信させる。
【００７９】
更新対象のトークンを検索する方法としては、例えば、トークンが有効になってからの経過時間がもっとも長いトークンを検索する方法、トークンが失効するまでの時間が最も短いトークンを検索する方法、トークンが有効になってからの経過時間が所定の閾値を超えたトークンを検索する方法、トークンが失効するまでの時間が所定の閾値を下回ったトークンを検索する方法、状態が無効になっているトークンを検索する方法、又は、トークンの管理者の操作に基づいて検索する方法等が挙げられる。もしくは、更新対象のトークンを検索する方法は、単にトークン記憶部１３１に保存されているトークンの順番に従って検索する方法でもよい。上記の検索方法を適宜選択し、又は、組み合わせることで、その情報処理システムに合ったトークンの更新が可能になる。
【００８０】
また、トークンの更新依頼を行う方法としては、例えば、所定のＡＰＩ等を用いて構築された更新依頼用のアプリケーションを定期的に実行するバッチ処理によって行われる方法又はトークンの管理者の操作に基づいて行われる方法等が挙げられる。トークンの更新依頼がバッチ処理によって行われる場合は、トークン制御部１２１は、一定の間隔でトークンの更新依頼を行う。例えば、トークン制御部１２１は、１日に１回、１週間に１回又は１か月に１回等の間隔で更新依頼用のアプリケーションを実行する。これにより、トークン更新の作業の負担を軽減することができる。また、トークン記憶部１３１が記憶するトークンの個数やトークンの管理者の意図に応じて、上記の間隔を適宜選択することで、その情報処理システムに合ったトークンの更新が可能になる。
【００８１】
トークンの更新依頼がトークンの管理者の操作に基づいて行われる場合は、トークンの管理者は更新依頼用のアプリケーションの実行ファイルを直接実行する。これにより、トークンの管理者は、必要に応じてトークンの更新依頼を行うことができる。又は、「７．第３の処理例」へ記載するように、トークンの管理者は表示制御部１４０が提供する管理画面を用いて更新依頼を実行してもよい。これにより、トークンの管理者は、更新依頼用のアプリケーションの実行ファイルを直接実行する必要はないため、誤操作なく簡単にトークンの更新依頼を行うことができる。
【００８２】
対話型コミュニケーションサービスサーバ２００のトークン制御部２２１は、通信部２１０がトークンの更新依頼のリクエストを受信した場合、トークンの更新処理を行う（Ｓ３０２）。具体的には、トークン制御部２２１は、トークン更新用の関数を用いて、トークンの文字列を新しいものへ変更する。トークン制御部２２１は、更新済のトークンをトークン記憶部２３１に記憶させ、通信部２２０に更新済のトークンを含むレスポンスを中継サーバ１００へ送信させる（Ｓ３０３）。
【００８３】
中継サーバ１００の通信部１１０が、更新済のトークンを含むレスポンスを受信した場合（Ｓ３０４）、トークン制御部１２１は、更新済のトークンをトークン記憶部１３１に記憶させる。
【００８４】
中継サーバ１００の通信部１１０がトークンの更新依頼のリクエストを送信した後、単位時間が経過しても、通信部１１０が更新済のトークンを含むレスポンスを受信しない、又は、通信部１１０がトークン更新の失敗通知を受信した場合（Ｓ３０５／ＹＥＳ）、中継サーバ１００のデータ制御部１２２は、更新依頼を行ったトークン以外の有効なトークンを用いて、対話型コミュニケーションサービスサーバ２００へのデータ送信を行う（Ｓ３０６）。これにより、仮にトークンの更新が失敗した場合でも、データ制御部１２２は対話型コミュニケーションサービスサーバ２００へのデータ送信を行うことができる。
【００８５】
例えば、図５に示すように、第５週目にトークンＡの更新が失敗したとしても、その他トークンＢ〜Ｄは有効な状態であるため、中継サーバ１００のデータ制御部１２２は、トークンＢ〜Ｄのいずれかを用いることで、対話型コミュニケーションサービスサーバ２００へのデータ送信を行うことができる。
【００８６】
また、中継サーバ１００のデータ制御部１２２は、中継サーバ１００の通信部１１０がトークンの更新依頼のリクエストを送信した後は、所定の時間、この更新依頼を行ったトークンを使用せず、更新依頼を行ったトークン以外の有効なトークンを用いて、対話型コミュニケーションサービスサーバ２００へのデータ送信を行ってもよい。これにより、トークンの更新の成否に関わらず、データ制御部１２２は対話型コミュニケーションサービスサーバ２００へのデータ送信を行うことができる。
【００８７】
記憶部１３１が記憶する複数個のトークンの中から、データ送信に使用するトークンを選択する方法としては、例えば、トークンが有効になってからの経過時間がもっとも短いトークンを選択する方法、又は、トークンが失効するまでの時間が最も長いトークンを選択する方法等が挙げられる。これらの方法により、データ送信が、トークンの更新の成否に影響される可能性を下げることができる。又は、トークン記憶部１３１において、トークンの状態が有効なものを検索し、ヒットしたトークンを選択する方法でもよい。
【００８８】
＜５．小括＞
以上説明したように、本発明の実施形態によれば、トークンの更新が失敗した場合でも、中継サーバ１００が、対話型コミュニケーションサービスサーバ２００へデータ送信を継続的に行うことが可能である。したがって、本発明によれば、外部システムへのデータ送信の安定性を向上させることが可能である。
【００８９】
＜６．第２の処理例＞
以上では、トークンの更新が失敗した場合の動作について説明した。以下では、図９、１０を参照しながら、中継サーバ１００が対話型コミュニケーションサービスサーバ２００へデータ送信を行う時に、トークン認証が失敗した場合の動作について説明する。
【００９０】
中継サーバ１００が対話型コミュニケーションサービスサーバ２００へデータ送信を行う時に、トークン認証が失敗した場合（Ｓ１０９／ＮＯ又はＳ１１７／ＮＯ）、対話型コミュニケーションサービスサーバ２００の通信部２１０が、認証失敗通知を中継サーバ１００へ送信する（Ｓ１１０又はＳ１１８）。この場合、中継サーバ１００のデータ制御部１２２は、通信部１１０が認証失敗通知を受信した後、対話型コミュニケーションサービスサーバ２００へデータ送信を行う際に、認証に失敗したトークン以外の有効なトークンを利用する。これにより、トークン認証失敗後のデータ送信において、認証が失敗したトークンと同一のトークンをデータ送信に利用してしまうことで、再びトークン認証が失敗するという問題を回避することが可能となる。
【００９１】
また、データ制御部１２２は、トークン認証が失敗した場合、トークン記憶部１３１が記憶している当該トークンの状態を無効へ変更してもよい。例えば、データ制御部１２２は、トークン認証が失敗した回数の累計が所定の閾値を超えた場合やトークン認証が所定の時間内に複数回失敗した場合等に、トークン記憶部１３１が記憶している当該トークンの状態を無効へ変更してもよい。これにより、通信部１１０が認証失敗通知を受信した後のデータ送信が失敗する可能性を下げることが可能となる。
【００９２】
さらに、中継サーバ１００のデータ制御部１２２は、通信部１１０が認証失敗通知を受信した場合、認証に失敗したトークン以外の有効なトークンを利用して、失敗したデータ送信をリトライしてもよい。具体的には、データ制御部１２２は、通信部１１０が認証失敗通知を受信してから直ちに、又は、所定の時間が経過した後に、認証に失敗したトークン以外の有効なトークンを利用して、失敗したデータ送信と同一のデータ送信を所定の回数行ってもよい。これにより、仮に、ネットワーク障害が原因でトークンの認証が失敗した場合、ネットワーク障害が改善した後にデータ送信がリトライされることで、データ送信に成功する可能性がある。また、データ送信をリトライする際に、有効期限が無期限に設定されている特別なトークンが使用されてもよい。これにより、仮に、トークンの有効期限が経過したことが原因でトークンの認証が失敗した場合、データ送信がリトライされることで、データ送信が成功する。
【００９３】
トークンの更新が失敗した場合にも、上記のようなリトライ処理が適用され得る。具体的には、図１３において、中継サーバ１００の通信部１１０がトークンの更新依頼のリクエストを送信した後、単位時間が経過しても通信部１１０が更新済のトークンを含むレスポンスを受信しない、又は、通信部１１０がトークン更新の失敗通知を受信した場合（Ｓ３０５／ＹＥＳ）、直ちに、又は、所定の時間が経過した後に、トークン制御部１２１がトークンの更新依頼（Ｓ３０１）をリトライする。これにより、仮に、ネットワーク障害が原因でトークンの更新が失敗した場合、ネットワーク障害が改善した後にトークンの更新依頼（Ｓ３０１）がリトライされることで、トークンの更新に成功する可能性がある。
【００９４】
＜７．第３の処理例＞
以下では、図１４〜１６を参照しながら、中継サーバ１００の表示制御部１４０によって提供される管理画面を用いて、トークンの更新依頼、新規登録および削除を行う動作について説明する。以下に登場するトークン管理者とは、管理画面を操作するユーザを指すこととする。
【００９５】
図１４に示すように、中継サーバ１００の表示制御部１４０は、管理メニュー画面（Ｄ１０１）を表示する。管理メニュー画面（Ｄ１０１）には、トークン管理ボタン（Ｂ１０１）が含まれる。さらに、管理メニュー画面（Ｄ１０１）には、スタンプＩＤの追加・削除ボタン（Ｂ１０２）、利用者データ抽出ボタン（Ｂ１０３）、サービス個別停止ボタン（Ｂ１０４）等が含まれてもよい。スタンプＩＤの追加・削除ボタン（Ｂ１０２）を押下すると、表示画面が、対話型コミュニケーションサービス上で使用されるスタンプを登録および削除できる画面へ変わる。利用者データ抽出ボタン（Ｂ１０３）を押下すると、表示画面が、口座情報照会サービスの利用者データを検索し、ＣＳＶファイル等として出力できる画面へ変わる。サービス個別停止ボタン（Ｂ１０４）を押下すると、表示画面が、ユーザ単位で口座情報照会サービスを停止できる画面へ変わる。
【００９６】
管理メニュー画面（Ｄ１０１）にて、トークン管理ボタン（Ｂ１０１）を押下されると、表示画面がトークン管理画面（Ｄ１０２）へ変わる。トークン管理画面（Ｄ１０２）には、トークン記憶部１３１が記憶しているトークンの各種情報が一覧として表示される。トークンの各種情報は、例えば、トークンＩＤ、トークンの状態、有効期限等である。トークン管理者は、トークン管理画面（Ｄ１０２）によって、トークン記憶部１３１を直接確認することなく、トークン記憶部１３１が記憶しているトークンの内容を簡単に確認することができる。これにより、トークン管理者がトークン記憶部へ誤操作をするという危険性が軽減される。
【００９７】
図１４は、本実施形態において、トークン管理画面でトークンの更新依頼を行う際の画面遷移図である。トークン管理者は、トークン管理画面（Ｄ１０２）からトークンの更新依頼を行うことができる。具体的には、トークン管理者は、有効な状態のトークンに対して表示されている更新ボタン（Ｂ２０１）を押下することで、確認画面（Ｄ２０１）へ移動し、更新ボタン（Ｂ２０２）を押下することで、トークン制御部１２１にトークン更新依頼処理を行わせることができる。一方、無効の状態のトークンを用いて対話型コミュニケーションサービスサーバ２００へアクセスすることはできないため、無効の状態のトークンを更新することはできない。よって、無効の状態のトークンの更新ボタン（Ｂ２０１）は非表示、又は、非活性となっている。また、重複してトークンの更新依頼がされないように、更新中の状態のトークンの更新ボタン（Ｂ２０１）も非表示、又は、非活性になっている。トークン更新依頼処理の内容は「４．第１の処理例」に記載した内容と同一であるため、トークン更新依頼処理の説明を省略する。トークンの更新が完了すると、表示画面が更新完了画面（Ｄ２０２）へ変わる。これにより、トークン管理者は、トークン記憶部１３１を直接操作することなく、簡単にトークンの更新を行うことができる。よって、トークン管理者がトークン記憶部へ誤操作をするという危険性が軽減される。
【００９８】
図１５は、本実施形態において、トークン管理画面でトークンの新規登録を行う際の画面遷移図である。トークン管理者は、トークン管理画面（Ｄ１０２）からトークンの新規登録を行うことができる。具体的には、トークン管理者は、トークン管理画面（Ｄ１０２）に表示されている新規登録ボタン（Ｂ３０１）を押下することで、表示画面が入力画面（Ｄ３０１）へ変化する。次に、トークン管理者が、入力画面（Ｄ３０１）のテキストボックスへ新規登録するトークンを入力し、登録ボタン（Ｂ３０２）を押下すると、表示画面が確認画面（Ｄ３０２）へ変化する。さらに、トークン管理者が、確認画面（Ｄ３０２）の登録ボタン（Ｂ３０３）を押下すると、表示画面が最終的に新規登録完了画面（Ｄ３０３）に変化し、新規登録が完了する。これにより、トークン管理者は、トークン記憶部１３１を直接操作することなく、簡単にトークンの新規登録を行うことができる。よって、トークン管理者がトークン記憶部へ誤操作をするという危険性が軽減される。
【００９９】
トークンの更新が失敗すると、当該トークンの状態が無効になるため、当該トークンはデータ送信時に利用できなくなる。つまり、トークンの更新が失敗する度に、データ送信時に利用できるトークンが減少する。ここで、上記のように、トークン管理者が、トークン管理画面（Ｄ１０２）からトークンの新規登録を行うことによって、有効なトークンを新たに補充することができる。例えば、図５に示すように、第２週目でトークンＤの更新に失敗したため、トークンＤはデータ送信時に利用できなくなったが、第４週目にトークン管理者がトークン管理画面（Ｄ１０２）からトークンの新規登録を行うことで、トークンＤが利用可能な状態に戻っている。
【０１００】
図１６は、本実施形態において、トークン管理画面でトークンの削除を行う際の画面遷移図である。トークン管理者は、トークン管理画面（Ｄ１０２）からトークンの削除を行うことができる。具体的には、トークン管理者は、トークン管理画面（Ｄ１０２）に表示されている削除ボタン（Ｂ４０１）を押下することで、表示画面がトークン削除画面（Ｄ４０１）へ変化する。さらに、トークン管理者が、削除ボタン（Ｂ４０２）を押下することで、表示画面が削除完了画面（Ｄ４０２）へ変化し、削除が完了する。これにより、トークン管理者は、トークン記憶部１３１を直接操作することなく、簡単にトークンの削除を行うことができる。よって、トークン管理者がトークン記憶部へ誤操作をするという危険性が軽減される。
【０１０１】
＜８．ハードウェア構成＞
以上、本発明の実施形態による情報処理システムについて説明した。上述した情報処理システムにおける口座情報照会サービスの提供などの情報処理は、ソフトウェアと、以下に説明する中継サーバ１００のハードウェアとの協働により実現される。
【０１０２】
図１７は、中継サーバ１００を実現し得る情報処理装置９００のハードウェア構成を示したブロック図である。情報処理装置９００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０３と、ホストバス９０４と、を備える。また、情報処理装置９００は、ブリッジ９０５と、外部バス９０６と、インタフェース９０７と、入力装置９０８と、表示装置９０９と、音声出力装置９１０と、ストレージ装置９１１と、ドライブ９１２と、ネットワークインタフェース９１５とを備える。
【０１０３】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、各種プログラムに従って情報処理装置９００内の動作全般を制御する。また、ＣＰＵ９０１は、マイクロプロセッサであってもよい。ＲＯＭ９０２は、ＣＰＵ９０１が使用するプログラムや演算パラメータ等を記憶する。ＲＡＭ９０３は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。これらはＣＰＵバスなどから構成されるホストバス９０４により相互に接続されている。
【０１０４】
ホストバス９０４は、ブリッジ９０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス９０６に接続されている。なお、必ずしもホストバス９０４、ブリッジ９０５および外部バス９０６を分離構成する必要はなく、１つのバスにこれらの機能を実装してもよい。
【０１０５】
入力装置９０８は、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチおよびレバーなどユーザが情報を入力するための入力手段と、ユーザによる入力に基づいて入力信号を生成し、ＣＰＵ９０１に出力する入力制御回路などから構成されている。情報処理装置９００を操作するユーザは、該入力装置９０８を操作することにより、情報処理装置９００に対して各種のデータを入力したり処理動作を指示したりすることができる。
【０１０６】
表示装置９０９は、例えば、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイ装置、液晶ディスプレイ（ＬＣＤ）装置、ＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）装置およびランプなどの表示装置を含む。また、音声出力装置９１０は、スピーカおよびヘッドホンなどの音声出力装置を含む。
【０１０７】
ストレージ装置９１１は、本実施形態にかかる中継サーバ１００の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置９１１は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置などを含んでもよい。ストレージ装置９１１は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）で構成される。このストレージ装置９１１は、ハードディスクを駆動し、ＣＰＵ９０１が実行するプログラムや各種データを格納する。
【０１０８】
ドライブ９１２は、記憶媒体用リーダライタであり、情報処理装置９００に内蔵、あるいは外付けされる。ドライブ９１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク又は半導体メモリ等のリムーバブル記憶媒体９１６に記録されている情報を読み出して、ＲＡＭ９０３に出力する。また、ドライブ９１２は、リムーバブル記憶媒体９１６に情報を書き込むこともできる。
【０１０９】
ネットワークインタフェース９１５は、例えば、ネットワーク５００に接続するための通信デバイス等で構成された通信インタフェースである。また、ネットワークインタフェース９１５は、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）対応通信装置であっても、有線による通信を行うワイヤー通信装置であってもよい。
【０１１０】
なお、上記では図１７を参照して中継サーバ１００を実現し得る情報処理装置９００のハードウェア構成について説明したが、携帯端末４００、銀行サーバ３００および対話型コミュニケーションサービスサーバ２００のハードウェアも中継サーバ１００と実質的に同一に構成することが可能であるため、説明を省略する。
【０１１１】
＜９．むすび＞
以上説明したように、本発明の実施形態によれば、トークンの更新に失敗した場合でも、中継サーバ１００が、対話型コミュニケーションサービスサーバ２００へデータ送信を継続的に行うことができる。したがって、本発明によれば、外部システムへのデータ送信の安定性を向上させることが可能である。
【０１１２】
なお、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【０１１３】
例えば、本明細書の情報処理システムの処理における各ステップは、必ずしもシーケンス図として記載された順序に沿って時系列に処理する必要はない。例えば、情報処理システムの処理における各ステップは、シーケンス図として記載した順序と異なる順序で処理されても、並列的に処理されてもよい。
【０１１４】
また、情報処理装置９００に内蔵されるＣＰＵ９０１、ＲＯＭ９０２およびＲＡＭ９０３などのハードウェアに、上述した中継サーバ１００の各構成と同等の機能を発揮させるためのコンピュータプログラムも作成可能である。
【符号の説明】
【０１１５】
１００    中継サーバ
１１０    通信部
１２０    制御部
１２１    トークン制御部
１２２    データ制御部
１３０    記憶部
１３１    トークン記憶部
１３２    ユーザ情報記憶部
１４０    表示制御部
２００    対話型コミュニケーションサービスサーバ
３００    銀行サーバ
４００    携帯端末
【図１】
2017151859.tif 000003
【図２】
2017151859.tif 000004
【図３】
2017151859.tif 000005
【図４】
2017151859.tif 000006
【図５】
2017151859.tif 000007
【図６】
2017151859.tif 000008
【図７】
2017151859.tif 000009
【図８】
2017151859.tif 000010
【図９】
2017151859.tif 000011
【図１０】
2017151859.tif 000012
【図１１】
2017151859.tif 000013
【図１２】
2017151859.tif 000014
【図１３】
2017151859.tif 000015
【図１４】
2017151859.tif 000016
【図１５】
2017151859.tif 000017
【図１６】
2017151859.tif 000018
【図１７】
2017151859.tif 000019