(57)【要約】【課題】基本的に特定の１台のユーザ端末での使用を前提としたアプリにおいて、ユーザ端末の変更等に伴うデータの移行を簡単に実現すること。【解決手段】ユーザ端末２０においてアプリが初回実行される際にサーバシステム１０が発行して当該ユーザ端末２０に記憶される第１ＩＤと、当該ユーザ端末２０内で自動設定される第２ＩＤと、ユーザデータとが関連づけてユーザデータＤＢ１４０に記憶される。そして、ユーザ端末２０におけるアプリの実行に当たって、第１ＩＤ及び第２ＩＤを含む認証依頼情報がサーバシステム１０に送信され、ユーザデータＤＢ１４０に記憶されている第１ＩＤ及び第２ＩＤの組合せと一致するかが判定される。不一致の場合にデータの移行を行う。【選択図】図１
2015026159.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションプログラム（以下「アプリ」という。）の実行に係るユーザデータの管理と、ユーザ端末で前記アプリが実行される際に当該ユーザ端末から送信されてくる認証依頼情報に基づく認証処理とを行うサーバシステムであって、
ユーザ端末において前記アプリが初回実行される際に前記サーバシステムが発行して当該ユーザ端末に記憶される第１ＩＤと、当該ユーザ端末内で自動設定される第２ＩＤと、ユーザデータとを関連づけて記憶する記憶部と、
ユーザ端末における前記アプリの実行に当たり、当該ユーザ端末に記憶された前記第１ＩＤ及び前記第２ＩＤを含む前記認証依頼情報を、当該ユーザ端末から受け付ける認証受付手段と、
前記認証受付手段により受け付けられた認証依頼情報に含まれる第１ＩＤ及び第２ＩＤの組合せが、前記記憶部に関連づけて記憶されている第１ＩＤ及び第２ＩＤの組合せと一致するか否かを判定する一致判定手段と、
前記一致判定手段により不一致と判定され、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが前記記憶部に記憶されていない場合に、当該認証依頼情報に含まれる第１ＩＤ及び第２ＩＤと、当該第１ＩＤに関連づけて前記記憶部に記憶されているユーザデータとを関連づけるように前記記憶部の記憶内容を更新する第１の関連づけ更新手段と、
を備えたサーバシステム。
【請求項２】
前記一致判定手段により不一致と判定され、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが前記記憶部に記憶されている場合に、当該ユーザ端末において使用するユーザデータを、当該認証依頼情報に含まれる第１ＩＤに関連づけて前記記憶部に記憶された第１のユーザデータとするか、当該認証依頼情報に含まれる第２ＩＤに関連づけて前記記憶部に記憶された第２のユーザデータとするかを、当該ユーザ端末において選択させる制御を行う選択制御手段と、
前記選択制御手段による選択制御の結果、前記第１のユーザデータが選択された場合には、当該認証依頼情報に含まれる第１ＩＤ及び第２ＩＤと前記第１のユーザデータとを関連づけるように前記記憶部の記憶内容を更新し、前記第２のユーザデータが選択された場合には、当該認証依頼情報に含まれる第１ＩＤ及び第２ＩＤと前記第２のユーザデータとを関連づけるように前記記憶部の記憶内容を更新する第２の関連づけ更新手段と、
を備えたサーバシステム。
【請求項３】
前記第２ＩＤは、当該ユーザ端末のＯＳが発行する当該アプリのユニバーサル識別情報、当該ユーザ端末のＯＳが発行する当該ユーザ端末のユニバーサル識別情報、及び当該ユーザ端末のハードウェアに定められたユニバーサル識別情報のうちの少なくとも１つを用いて定められるＩＤである、
請求項１又は２に記載のサーバシステム。
【請求項４】
前記第２ＩＤは、ユーザ端末に着脱可能な通信用記憶媒体に設定されている通信時に必要な通信用ＩＤを用いて定められるＩＤである、
請求項３に記載のサーバシステム。
【請求項５】
サーバシステムが、アプリの実行に係るユーザデータの管理と、ユーザ端末で前記アプリが実行される際に当該ユーザ端末から送信されてくる認証依頼情報に基づく認証処理とを行うための方法であって、
ユーザ端末において前記アプリが初回実行される際に前記サーバシステムが発行して当該ユーザ端末に記憶される第１ＩＤと、当該ユーザ端末内で自動設定される第２ＩＤと、ユーザデータとを関連づけて記憶部に記憶することと、
ユーザ端末における前記アプリの実行に当たり、当該ユーザ端末に記憶された前記第１ＩＤ及び前記第２ＩＤを含む前記認証依頼情報を、当該ユーザ端末から受け付けることと、
前記受け付けられた認証依頼情報に含まれる第１ＩＤ及び第２ＩＤの組合せが、前記記憶部に関連づけて記憶されている第１ＩＤ及び第２ＩＤの組合せと一致するか否かを判定することと、
前記判定の結果が不一致であり、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが前記記憶部に記憶されている場合に、当該ユーザ端末において使用するユーザデータを、当該認証依頼情報に含まれる第１ＩＤに関連づけて前記記憶部に記憶された第１のユーザデータとするか、当該認証依頼情報に含まれる第２ＩＤに関連づけて前記記憶部に記憶された第２のユーザデータとするかを、当該ユーザ端末において選択させる制御を行うことと、
前記判定の結果が不一致であり、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが前記記憶部に記憶されていない場合に、当該認証依頼情報に含まれる第１ＩＤ及び第２ＩＤと、当該第１ＩＤに関連づけて前記記憶部に記憶されているユーザデータとを関連づけるように前記記憶部の記憶内容を更新することと、
を含む方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションプログラムに係るユーザデータの管理と、認証処理とを行うサーバシステム等に関する。
【背景技術】
【０００２】
スマートフォンやタブレット端末等のユーザ端末と呼ばれる携帯型電子機器が人気である。ユーザ端末にはネットワークに接続できる通信機能が備わっており、アプリケーションプログラム（以下適宜「アプリ」と省略する。）のインストールは、ネットワークに接続して所定のサーバから当該アプリケーションプログラムをダウンロードして行うのが一般的である（例えば特許文献１参照）。
【０００３】
ユーザは、必ずしも１人１台のユーザ端末を固定的に利用するとは限らず、１人のユーザが複数のユーザ端末を利用したり、ユーザ端末を買い換えたりといったことが日常的に行われている。異なるユーザ端末で同じアプリを利用したいユーザは、各ユーザ端末に同じアプリをインストールして利用することとなる。
【０００４】
電子書籍リーダや画像アルバム、ワープロといったファイルの閲覧や編集等を目的としたアプリであれば、各ユーザ端末がアクセス可能な所定サーバにファイルを格納しておけば、どのユーザ端末からも同じファイルを閲覧等することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−０７７０５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、サーバとの通信が必須のアプリにおいて、基本的に特定の１台のユーザ端末での使用を前提としたアプリがあるのも知られるところである。例えば、ゲームや学習ソフトといったアプリである。ゲームアプリであれば、ユーザのプレイデータや獲得キャラクタ、獲得アイテム等のデータ（ユーザデータ）を、ユーザ端末を識別する端末ＩＤと対応づけてサーバが管理することで、特定１台のユーザ端末での使用に限ることができる。学習ソフトのアプリも同様、過去の学習課程や過去の成績等のデータ（ユーザデータ）を、端末ＩＤと対応づけてサーバが管理することで、同じく特定１台のユーザ端末での使用に限ることができる。
【０００７】
ところが、上述した通り、ユーザは必ずしも１人１台のユーザ端末を利用するとは限らず、同じユーザ端末を使用し続けるとも限らない。したがって、ユーザ端末間でアプリの使用を「移行」して同じユーザデータを利用したいという要望がある。
【０００８】
考えられる移行方法としては、従来のソフトウェアライセンス管理方法と同じく、アプリ提供事業者のヘルプデスクに端末ＩＤの変更登録を申請する等の方法が挙げられるが、手続が面倒であり、時間を要する。そのため、簡単な方法で移行できる仕組みが実現できれば至便である。
なお、その一方で、不正な移行を阻止する必要もある。
本発明は、上述した課題に鑑みて考案されたものである。
【課題を解決するための手段】
【０００９】
上述した課題を解決するための第１の発明は、アプリに係るユーザデータの管理と、ユーザ端末で前記アプリが実行される際に当該ユーザ端末から送信されてくる認証依頼情報に基づく認証処理とを行うサーバシステム（例えば図１のサーバシステム１０）であって、
ユーザ端末において前記アプリが初回実行される際に前記サーバシステムが発行して当該ユーザ端末に記憶される第１ＩＤと、当該ユーザ端末内で自動設定される第２ＩＤと、ユーザデータとを関連づけて記憶する記憶部（例えば図１のユーザデータＤＢ１４０）と、
ユーザ端末における前記アプリの実行に当たり、当該ユーザ端末に記憶された前記第１ＩＤ及び前記第２ＩＤを含む前記認証依頼情報を、当該ユーザ端末から受け付ける認証受付手段（例えば図６の認証処理部１１２）と、
前記認証受付手段により受け付けられた認証依頼情報に含まれる第１ＩＤ及び第２ＩＤの組合せが、前記記憶部に関連づけて記憶されている第１ＩＤ及び第２ＩＤの組合せと一致するか否かを判定する一致判定手段（例えば図６の認証処理部１１２、図７のステップＳ１０）と、
前記一致判定手段により不一致と判定され、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが前記記憶部に記憶されていない場合に、当該認証依頼情報に含まれる第１ＩＤ及び第２ＩＤと、当該第１ＩＤに関連づけて前記記憶部に記憶されているユーザデータとを関連づけるように前記記憶部の記憶内容を更新する第１の関連づけ更新手段（例えば図６の認証処理部１１２、図７のステップＳ２０）と、
を備えたサーバシステムである。
【００１０】
また、他の発明として、サーバシステムが、アプリの実行に係るユーザデータの管理と、ユーザ端末で前記アプリが実行される際に当該ユーザ端末から送信されてくる認証依頼情報に基づく認証処理とを行うための方法であって、
ユーザ端末において前記アプリが初回実行される際に前記サーバシステムが発行して当該ユーザ端末に記憶される第１ＩＤと、当該ユーザ端末内で自動設定される第２ＩＤと、ユーザデータとを関連づけて記憶部に記憶することと、
ユーザ端末における前記アプリの実行に当たり、当該ユーザ端末に記憶された前記第１ＩＤ及び前記第２ＩＤを含む前記認証依頼情報を、当該ユーザ端末から受け付けることと、
前記受け付けられた認証依頼情報に含まれる第１ＩＤ及び第２ＩＤの組合せが、前記記憶部に関連づけて記憶されている第１ＩＤ及び第２ＩＤの組合せと一致するか否かを判定することと、
前記判定の結果が不一致であり、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが前記記憶部に記憶されている場合に、当該ユーザ端末において使用するユーザデータを、当該認証依頼情報に含まれる第１ＩＤに関連づけて前記記憶部に記憶された第１のユーザデータとするか、当該認証依頼情報に含まれる第２ＩＤに関連づけて前記記憶部に記憶された第２のユーザデータとするかを、当該ユーザ端末において選択させる制御を行うことと、
前記判定の結果が不一致であり、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが前記記憶部に記憶されていない場合に、当該認証依頼情報に含まれる第１ＩＤ及び第２ＩＤと、当該第１ＩＤに関連づけて前記記憶部に記憶されているユーザデータとを関連づけるように前記記憶部の記憶内容を更新することと、
を含む方法を構成することとしてもよい。
【００１１】
この第１の発明等によれば、ユーザ端末においてアプリが初回実行される際にサーバシステムが発行して当該ユーザ端末に記憶される第１ＩＤと、当該ユーザ端末内で自動設定される第２ＩＤと、ユーザデータとが関連づけて記憶部に記憶される。そして、ユーザ端末におけるアプリの実行に当たって、第１ＩＤ及び第２ＩＤを含む認証依頼情報がサーバシステムに送信され、記憶部に記憶されている第１ＩＤ及び第２ＩＤの組合せと一致するかが判定される。一致する場合には、ユーザが同じユーザ端末を使ってアプリを実行していることを意味しており、認証成功となるのは勿論である。問題は、不一致の場合である。
【００１２】
ここで、第１ＩＤと第２ＩＤとを整理すると、第１ＩＤ及び第２ＩＤは、アプリを実行したことがあれば必ず設定されている。そのため、認証依頼情報に含まれる第１ＩＤ及び第２ＩＤの組合せと、記憶部に記憶されている第１ＩＤ及び第２ＩＤの組合せとが不一致であり、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが記憶部に記憶されていない場合は、次のケースが考えられる。すなわち、何らかの理由により、第２ＩＤが変わった場合である。ユーザ端末を変更し、バックアップ等していた元の第１ＩＤを引き継ぐことができたとしても、ユーザ端末が変わったことで第２ＩＤが変わる場合がある。また、ユーザ端末は同じであるが、第２ＩＤのみが変わった場合もこの場合に該当する。こういった場合でも、「移行」を簡単に実現することができる。また、第１ＩＤ及び第２ＩＤの性格上、不正な「移行」を抑制する効果が期待できる。
【００１３】
また、第２の発明は、第１の発明において、
前記一致判定手段により不一致と判定され、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが前記記憶部に記憶されている場合に、当該ユーザ端末において使用するユーザデータを、当該認証依頼情報に含まれる第１ＩＤに関連づけて前記記憶部に記憶された第１のユーザデータとするか、当該認証依頼情報に含まれる第２ＩＤに関連づけて前記記憶部に記憶された第２のユーザデータとするかを、当該ユーザ端末において選択させる制御を行う選択制御手段（例えば図６の認証処理部１１２、図７のステップＳ１４）と、
前記選択制御手段による選択制御の結果、前記第１のユーザデータが選択された場合には、当該認証依頼情報に含まれる第１ＩＤ及び第２ＩＤと前記第１のユーザデータとを関連づけるように前記記憶部の記憶内容を更新し、前記第２のユーザデータが選択された場合には、当該認証依頼情報に含まれる第１ＩＤ及び第２ＩＤと前記第２のユーザデータとを関連づけるように前記記憶部の記憶内容を更新する第２の関連づけ更新手段（例えば図６の認証処理部１１２、図７のステップＳ１６）と、
を更に備えたサーバシステムである。
【００１４】
この第２の発明によれば、次のような作用効果が期待される。すなわち、先ず、アプリを実行したことがあれば何らかのユーザデータも存在しているはずである。そのため、認証依頼情報に含まれる第１ＩＤ及び第２ＩＤの組合せと、記憶部に記憶されている第１ＩＤ及び第２ＩＤの組合せとが不一致であり、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータが記憶部に記憶されている場合には、次のケースが考えられる。すなわち、従前に別々にアプリを実行していた第１のユーザ端末と第２のユーザ端末とが存在し、第２のユーザ端末において、第１ＩＤ及び第２ＩＤのどちらかを第１のユーザ端末のものに変えた場合である。この場合、２つのユーザ端末それぞれでアプリを実行していたために、２つのユーザデータが存在しているので、どちらのユーザデータを今後使用するかをユーザが選択することで、「移行」を簡単に遂行することができる。
【００１５】
かくして、第２の発明においても、ユーザ端末においてアプリが初回実行される際にサーバシステムが発行して当該ユーザ端末に記憶される第１ＩＤと、当該ユーザ端末内で自動設定される第２ＩＤとを用いることで、「移行」を簡単に実現することができる。また、第１ＩＤ及び第２ＩＤの性格上、不正な「移行」を抑制する効果が期待できる。
【００１６】
また、第３の発明は、第１又は第２の発明において、
前記第２ＩＤは、当該ユーザ端末のＯＳが発行する当該アプリのユニバーサル識別情報、当該ユーザ端末のＯＳが発行する当該ユーザ端末のユニバーサル識別情報、及び当該ユーザ端末のハードウェアに定められたユニバーサル識別情報のうちの少なくとも１つを用いて定められるＩＤである、
サーバシステムである。
【００１７】
また、第４の発明は、第３の発明において、
前記第２ＩＤは、ユーザ端末に着脱可能な通信用記憶媒体に設定されている通信時に必要な通信用ＩＤを用いて定められるＩＤである、
サーバシステムである。
【００１８】
この第３及び第４の発明によれば、第２ＩＤとして、ユーザ端末自身によって定まるユニバーサル識別情報が用いられるため、不正な第２ＩＤの使用を抑制できる。
【図面の簡単な説明】
【００１９】
【図１】コンピュータシステムの構成の一例を示す図。
【図２】ユーザ端末の一例を示す図。
【図３】甲種のユーザ端末の使用例を説明するための図。
【図４】乙種のユーザ端末の使用例を説明するための図。
【図５】乙種のユーザ端末の使用例を説明するための図。
【図６】サーバシステムの機能構成を説明するための図。
【図７】サーバシステムが実行するログイン認証処理の流れを示すフローチャート。
【図８】ユーザ端末の機能構成を説明するための図。
【図９】ユーザ端末が実行するログイン処理の流れを示すフローチャート。
【発明を実施するための形態】
【００２０】
本発明を適用した実施形態の一例について説明する。
図１（１）は、本実施形態におけるコンピュータシステム１の構成の一例を示す図である。本実施形態のコンピュータシステム１は、サーバシステム１０と、複数のユーザ端末２０とが、通信ネットワークＮを介して通信可能に接続されて構成される。
【００２１】
通信ネットワークＮは、音声通信やデータ通信が可能な通信路を意味する。音声をデータに含めるのであれば、データ通信が可能な通信路の意味である。通信ネットワークＮは、直接接続のための専用線（専用ケーブル）やイーサネット（登録商標）等によるＬＡＮ（Local Area Network）の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線／無線を問わない。また、携帯電話基地局や無線基地局などもこの通信ネットワークＮに含まれる。
【００２２】
サーバシステム１０は、複数のブレードサーバ１１０２を備えた筐体１１０４と、ブレードサーバ１１０２の管理操作に用いるキーボード１１０６及びディスプレイモニタ１１０８と、各ブレードサーバ１１０２からアクセスできるハードディスク等のストレージ１１４０とを備える。また、筐体１１０４には、各ブレードサーバ１１０２等に電力を供給する図示されない電源モジュールや、通信ネットワークＮに接続するための通信装置等を適宜搭載するものとする。尚、ブレードサーバ１１０２は、ラックマウント型サーバで構成しても良い。
【００２３】
サーバシステム１０は、例えばＣＧＩ（Common gateway interface）プログラム実装言語をシステムサポートし、ユーザ登録手続きや、登録ユーザの認証（所謂ログイン処理）、ユーザ端末で実行されるアプリケーションプログラム（以下適宜「アプリ」という）をサポートする各種機能を実現できる。
【００２４】
ユーザ端末２０は、通信ネットワークＮに接続できる通信機能を備えており、例えば、スマートフォンや携帯電話機、タブレット装置、携帯型ゲーム装置、パーソナルコンピュータなどの一種のコンピュータであり、電子機器である。ユーザ端末２０は、プログラムを実行することにより、その一部機能として、サーバシステム１０にアクセスして、所定の手続きに従ってデータ送受信を実現し、様々なサポートを享受することができる。
【００２５】
図２は、ユーザ端末２０の構成例を示す正面外観図である。ユーザ端末２０は、方向入力キー１５０２と、ボタンスイッチ１５０４と、画像表示デバイス兼接触位置入力デバイスとして機能するタッチパネル１５０６と、スピーカ１５１０と、内蔵バッテリー１５０９と、マイク１５１２と、制御基板１５５０と、コンピュータ読み出し可能な記憶媒体であるメモリカード１５４０からデータを読み書きできるメモリカード読取装置１５４２と、を備える。その他、図示されていない電源ボタン、音量調節ボタン等が設けられている。
【００２６】
制御基板１５５０は、ＣＰＵ１５５１やＧＰＵ，ＤＳＰなどの各種マイクロプロセッサと、ＡＳＩＣ，ＶＲＡＭ，ＲＡＭ，ＲＯＭ等の各種ＩＣメモリ１５５２と、通信ネットワークＮに接続する携帯電話基地局と通信を行うための携帯電話モジュールＳＣＭと、無線ＬＡＮ基地局などと無線通信するための無線通信モジュール１５５３とが搭載されている。
携帯電話モジュールＳＣＭは、電話番号情報（通信用ＩＤ）が記録されたＳＩＭ（Subscriber Identity Module）カードＳＣを着脱可能に備えており、ＳＩＭカードＳＣが装着されていない場合には、携帯電話基地局との通信が不可能とされる。また、無線通信モジュール１５５３には、ＭＡＣ（Media Access Control）アドレス（通信用ＩＤ）が記録されている。
【００２７】
携帯電話モジュールＳＣＭ及び無線通信モジュール１５５３のどちらを利用しても、通信ネットワークＮを介してユーザ端末２０をサーバシステム１０に接続することが可能であるが、説明の簡明化のために、本実施形態では、ＳＩＭカードＳＣが携帯電話モジュールＳＣＭに装着されている場合には、優先的に携帯電話モジュールＳＣＭを利用してサーバシステム１０に接続することとして説明する。
【００２８】
ユーザ端末２０は、その他、タッチパネル１５０６のドライバ回路、方向入力キー１５０２及びボタンスイッチ１５０４からの信号を受信する回路、スピーカ１５１０へ音声信号を出力する出力アンプ回路、マイク１５１２で集音した音声の信号を生成する入力信号生成回路、メモリカード読取装置１５４２への信号入出力回路といった所謂Ｉ／Ｆ回路１５５７（インターフェース回路）等が搭載されている。これら制御基板１５５０に搭載されている各要素は、それぞれバス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。
【００２９】
制御基板１５５０は、サーバシステム１０から取得したアプリケーションプログラムや、後述する第１ＩＤ等のデータをＩＣメモリ１５５２に記憶する。取得したアプリケーションプログラムは、インストールすることで実行可能な状態となる。アプリの実行においては、方向入力キー１５０２やボタンスイッチ１５０４、タッチパネル１５０６からの操作入力に応じてプレーヤ端末１５００の各部を制御する。なお、本実施形態では、ユーザ端末２０はアプリケーションプログラムをサーバシステム１０から取得する構成としているが、別途入手したメモリカード１５４０から読み出して、インストールする構成としても良い。
【００３０】
図１（１）に戻り、サーバシステム１０は、ストレージ１１４０にユーザデータＤＢ（データベース）１４０を備える。ユーザデータＤＢは、第１ＩＤと、第２ＩＤと、ユーザデータとを関連づけて格納したデータベースである。
【００３１】
本実施形態において、ユーザ端末２０におけるアプリの実行には、ユーザデータが必要であることとする。例えばゲームのアプリであれば、ユーザのキャラクタの設定情報や獲得アイテム・獲得キャラクタ等のプレイデータがユーザデータであり、学習ソフトのアプリであれば、ユーザの過去の学習成績や進捗、学習履歴等の情報がユーザデータである。ユーザ端末２０は、アプリの実行に当たり、第１ＩＤ及び第２ＩＤを含む認証依頼情報をサーバシステム１０に送信してログイン認証を要求し、認証が承認された場合に、ユーザデータの利用が可能となって、アプリを実行することができるようになる。
【００３２】
また、本実施形態においては、基本的に、１ライセンス分のアプリを、１台のユーザ端末２０で利用することを前提としているため、１ライセンス分のアプリに関するユーザデータは１つのみであり、この１つのユーザデータに対してＩＤが対応づけて管理されている。換言すると、１つのユーザデータを、複数台のユーザ端末で共用利用することを認めていない。一方で、本実施形態では、ユーザが使用しているユーザ端末２０を変更する等の場合に、継続して同じユーザデータを使用できる「移行」を簡単に行い得る仕組みを導入している。そのため、第１ＩＤ及び第２ＩＤを、ユーザデータと関連づけて管理している。
【００３３】
図１（２）に示すように、第１ＩＤとは、ユーザ端末２０におけるアプリの初回実行時に、サーバシステム１０が発行するＩＤである。第１ＩＤは、ユニバーサルな識別情報であり、例えば、シーケンシャル番号等を含んだユニークな識別情報である。発行タイミングとしては、例えば、ユーザ端末２０でアプリを初回実行した際の初回起動画面や初期設定画面などの表示中に、ユーザ端末２０がサーバシステム１０と通信を行うことで第１ＩＤを発行すると好適である。一度発行された第１ＩＤは、ユーザ端末２０内に設定・記憶され、更新されることなく、アプリと一体としてユーザ端末２０内で管理されることとなる。また、仮にアプリが削除された場合には、第１ＩＤも共に削除される。
【００３４】
第２ＩＤとは、ユーザ端末２０が単独で設定するＩＤである。本実施形態では、ユーザ端末２０には、甲種と乙種の種別があることとする。甲種のユーザ端末２０−１における第２ＩＤは、例えば、ＵＩＩＤ（Unique Installation Identifer）等の、ユーザ端末２０のＯＳ（Operating System）が、インストールされたアプリに対してユニバーサルな識別情報として付与するＩＤ（以下、「インストールアプリＩＤ」という）を用いて設定する。インストールアプリＩＤは、アプリに対してＯＳが設定するＩＤであるため、ユーザ端末２０内に設定・記憶されると、更新されることはなく、アプリと一体としてユーザ端末２０内で管理されることとなる。仮にアプリが削除された場合には、インストールアプリＩＤも共に削除される。なお、アプリが削除されたとしてもインストールアプリＩＤは削除しないこととしてもよい。また、削除したアプリを再インストールした場合は前回と同じインストールアプリＩＤを使う。
【００３５】
また、他の例として、例えば、無線通信モジュール１５５３のＭＡＣアドレスに基づく数値を第２ＩＤとしたり、インストールアプリＩＤやＭＡＣアドレスに基づく数値を乱数の種としてＯＳが乱数を発生させた数値もユニバーサルな識別情報となり得るので、第２ＩＤとすることができる。
【００３６】
また、乙種のユーザ端末２０−２における第２ＩＤは、ＳＩＭカードに記録されている通信用ＩＤを用いて設定する。ＳＩＭカードに記録されている通信用ＩＤは、ユニバーサルな識別情報である。また、他の例として、例えば、無線通信モジュール１５５３のＭＡＣアドレスに基づく数値を第２ＩＤとしたり、ＭＡＣアドレスに基づく数値を乱数の種としてＯＳが乱数を発生させた数値もユニバーサルな識別情報となり得るので、第２ＩＤとすることができる。
【００３７】
甲種及び乙種の何れにおいても、ユーザ端末２０は、アプリの実行に当たり、第１ＩＤ及び第２ＩＤを含む認証依頼情報をサーバシステム１０に送信して、認証の承認を得ることは同じである。第１ＩＤ及び第２ＩＤは、いずれもユニバーサルな識別情報であるため、何れか一方だけでもユーザ端末２０をユニークに特定することができるようにも思える。しかし、ユーザ端末２０の機種を変更したり、ＳＩＭカードＳＣを交換するといった場合には、１つのＩＤのみでは簡単に「移行」することができない。的確かつ早期で簡単な「移行」を実現するために、第１ＩＤ及び第２ＩＤを使用することとしているのが本実施形態の特徴の１つである。
【００３８】
サーバシステム１０は、ユーザ端末２０からログイン認証を受け付けた場合に、認証依頼情報に含まれているユーザ端末２０が記憶している第１ＩＤ及び第２ＩＤと、ユーザデータＤＢ１４０に登録されている第１ＩＤ及び第２ＩＤとを比較して、認証処理を行う。この際に「移行」も行うのが、本実施形態の特徴の１つである。
サーバシステム１０のユーザデータＤＢ１４０に登録されている第１ＩＤ及び第２ＩＤに対して、ユーザ端末２０の第１ＩＤ及び第２ＩＤを対比した場合の異同パターンを表したのが図１（３）である。（イ）〜（ニ）の４つのケースが考えられる。
【００３９】
（イ）のケースは、ユーザ端末２０の第１ＩＤがユーザデータＤＢ１４０に登録されており、且つ、ユーザ端末２０の第２ＩＤもユーザデータＤＢ１４０に登録されていて、更に、互いの組合せ（関連づけ）も同じ場合である。「移行」の必要の無い通常はこの（イ）のケースに該当する。
【００４０】
（ロ）のケースは、ユーザ端末２０の第１ＩＤがユーザデータＤＢ１４０に登録されており、且つ、ユーザ端末２０の第２ＩＤもユーザデータＤＢ１４０に登録されてはいるが、互いの組合せ（関連づけ）が異なる場合である。
【００４１】
例えば、甲種のユーザ端末であるＡ端末、Ｂ端末それぞれにおいてアプリを実行したことがあり、Ａ端末、Ｂ端末それぞれが（イ）のケースに該当していたときに、図３（１）のように、Ａ端末の第１ＩＤをパソコン等にバックアップした後、バックアップした第１ＩＤをＢ端末に反映させた場合の、Ｂ端末が該当する。この場合、図３（２−１）のように、Ｂ端末では第１ＩＤがＡ端末の「１Ａ」となり、第２ＩＤが従前のままの「２Ｂ」となる。サーバシステム１０のユーザデータＤＢ１４０には、第１ＩＤ「１Ａ」と第２ＩＤ「２Ｂ」とは関連づけて登録されてはいない。第１ＩＤ「１Ａ」に関連づけて登録されている第２ＩＤはＡ端末の「２Ａ」である。
【００４２】
また、例えば、乙種のユーザ端末であるＸ端末、Ｙ端末それぞれにおいてアプリを実行したことがあり、Ｘ端末、Ｙ端末それぞれが（イ）のケースに該当していたときに、図４（１）のように、Ｙ端末のＳＩＭカードを、Ｘ端末のＳＩＭカードに差し替えて装着した場合の、Ｙ端末が（ロ）のケースに該当する。この場合、Ｙ端末では、第１ＩＤが従前の「１Ｙ」のままであるが、第２ＩＤがＸ端末の「２Ｘ」となる。サーバシステム１０のユーザデータＤＢ１４０には、第１ＩＤ「１Ｙ」と第２ＩＤ「２Ｘ」とは関連づけて登録されてはいない。第２ＩＤ「２Ｘ」に関連づけて登録されている第１ＩＤは、Ｘ端末の「１Ｘ」である。
【００４３】
この（ロ）のケースでは、ユーザデータＤＢ１４０に登録されている第１ＩＤと、第２ＩＤと、ユーザデータとの関連づけを更新する必要がある。認証依頼情報に含まれるユーザ端末２０の第１ＩＤを正とするならば、この第１ＩＤに関連づけてユーザデータＤＢ１４０に登録されている第２ＩＤを、認証依頼情報に含まれるユーザ端末２０の第２ＩＤに変更し、もとの第２ＩＤに係る関連づけ（もとの第２ＩＤに関連づけられていた第１ＩＤ及びユーザデータ）を削除する。一方、認証依頼情報に含まれるユーザ端末２０の第２ＩＤを正とするならば、この第２ＩＤに関連づけてユーザデータＤＢ１４０に登録されている第１ＩＤを、認証依頼情報に含まれるユーザ端末２０の第１ＩＤに変更し、もとの第１ＩＤに係る関連づけ（もとの第１ＩＤに関連づけられていた第２ＩＤ及びユーザデータ）を削除する。
【００４４】
（ハ）のケースは、ユーザ端末２０の第１ＩＤがユーザデータＤＢ１４０に登録されているが、ユーザ端末２０の第２ＩＤがユーザデータＤＢ１４０に登録されていないケースである。このケースは、例えば、図３（１）において、Ｂ端末でアプリを実行したことがなかった場合が該当する。図３（２−２）に示す通り、Ａ端末の第１ＩＤをＢ端末に反映させると、Ｂ端末内には第１ＩＤ及び第２ＩＤが一応、記憶・設定されるが、Ｂ端末でアプリを実行したことがなかったため、端末Ｂにも、サーバシステム１０のユーザデータＤＢ１４０にも、Ｂ端末の第２ＩＤが登録されていない。この状態でＢ端末でアプリを実行すると、Ｂ端末に第２ＩＤが新たに設定されることとなるが、サーバシステム１０のユーザデータＤＢ１４０には、未だＢ端末の第２ＩＤが登録されていない状態であるため、（ハ）のケースに該当する。
【００４５】
また、例えば、乙種のユーザ端末であるＸ端末において、アプリを実行したことがあり（イ）のケースに該当していたところ、図５のように、新たなＳＩＭカードＳＣに交換した場合が該当する。ユーザデータＤＢ１４０において第１ＩＤ「１Ｘ」に関連づけて登録されている第２ＩＤは、交換前の第２ＩＤ「２Ｘｏｌｄ」だからである。
この（ハ）のケースでは、第１ＩＤがユーザデータＤＢ１４０に登録されているため、その第１ＩＤに関連づける第２ＩＤを、認証依頼情報に含まれるユーザ端末の第２ＩＤに変更する。
【００４６】
（ニ）のケースは、例えば、乙種のユーザ端末であるＸ端末においてアプリを実行したことがあるが、Ｙ端末においてアプリを実行したことがなかったときに、Ｘ端末のＳＩＭカードＳＣを、Ｙ端末に装着してアプリを実行した場合の、Ｙ端末が該当する。
この（ニ）のケースでは、Ｙ端末でのアプリの実行は初回の実行となるが、第２ＩＤがユーザデータＤＢ１４０に登録されている。そのため、第１ＩＤの発行を行わずに、第２ＩＤに関連づけてユーザデータＤＢ１４０に登録されている第１ＩＤを、Ｙ端末に割り当てる復旧の処理を行うこととなる。ユーザデータＤＢ１４０の登録は更新されない。
【００４７】
このように、ユーザ端末２０においてアプリが初回実行される際にサーバシステム１０が発行する第１ＩＤと、ユーザ端末２０内で自動設定される第２ＩＤとを使用することで、ユーザ端末２０を変更したり、ＳＩＭカードを変更するといった場合のユーザデータの継続使用に係る「移行」を的確に把握できるため、「移行」を簡単に実現し得る。また、第１ＩＤ及び第２ＩＤの何れか一方がユーザデータＤＢに登録されており、第１ＩＤ及び第２ＩＤともにユーザが設定するものではないため、ＩＤの性格上、「移行」の不正を抑制することができる。
【００４８】
［サーバシステムの機能ブロックの説明］
次に、サーバシステム１０の機能構成例について説明する。
図６は、本実施形態におけるサーバシステム１０の機能構成例を示す機能ブロック図である。本実施形態のサーバシステム１０は、サーバ処理部１１０と、サーバ記憶部１３０と、操作入力部１７０と、表示部１８０と、通信部１９０とを備える。
【００４９】
サーバ処理部１１０は、例えばＣＰＵやＧＰＵ等のマイクロプロセッサや、ＡＳＩＣ（特定用途向け集積回路）、ＩＣメモリなどの電子部品によって実現され、操作入力部１７０やサーバ記憶部１３０を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部１７０からの操作入力信号、通信ネットワークＮを介してアクセスしてきたユーザ端末２０から受信した信号等に基づいて各種の演算処理を実行して、サーバシステム１０の動作を統合的に制御する。そして、本実施形態では、認証処理部１１２と、第１ＩＤ発行部１１４と、アプリ配布制御部１２２と、通信制御部１２４とを含む。
【００５０】
認証処理部１１２は、図７を参照して後述するログイン認証処理を実行するための機能部であり、第１ＩＤ及び第２ＩＤを用いて「移行」を実施する機能部である。第１ＩＤ発行部１１４は、ユーザ端末の初回ログイン、すなわち初回の認証依頼に応答して第１ＩＤを発行する機能部である。認証処理部１１２は、第１ＩＤ発行部１１４によって第１ＩＤが発行された場合、発行された第１ＩＤと関連づけて、認証依頼情報に含まれていた第２ＩＤと、新たなユーザデータとをユーザデータＤＢ１４０に登録する。
【００５１】
アプリ配布制御部１２２は、ユーザ端末２０からのダウンロード要求に応じて、アプリケーションプログラムを提供する機能部である。サーバ記憶部１３０に記憶された配信用アプリ１３８がオリジナルプログラムであり、これを複製して提供する。
【００５２】
通信制御部１２４は、データ通信に係るデータ処理を実行し、通信部１９０を介して通信ネットワークＮに接続して外部装置とのデータのやりとりを実現する。外部装置は主にユーザ端末２０である。
【００５３】
操作入力部１７０は、サーバの管理のための各種操作を入力するための手段であり、図１のキーボード１１０６がこれに該当する。
表示部１８０は、システム管理のための各種画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管（ＣＲＴ）、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。図１のディスプレイモニタ１１０８がこれに該当する。
【００５４】
通信部１９０は、通信ネットワークＮと接続して通信を実現する。例えば、無線通信機、モデム、ＴＡ（ターミナルアダプタ）、回線終端装置、有線用の通信ケーブルのジャックや制御回路等によって実現される。
【００５５】
サーバ記憶部１３０は、サーバ処理部１１０にサーバシステム１０を統合的に制御させるための諸機能を実現するためのシステムプログラムや、アプリのサーバ側のサポート機能の実現に必要なプログラム、各種データ等を記憶する。また、サーバ処理部１１０の作業領域として用いられ、サーバ処理部１１０が各種プログラムに従って実行した演算結果などを一時的に記憶する。サーバ記憶部１３０は、例えばＲＡＭやＲＯＭなどのＩＣメモリ、ハードディスク等の磁気ディスク、ＣＤ−ＲＯＭやＤＶＤなどの光学ディスクなどによって実現される。図１ではブレードサーバ１１０２が搭載するＩＣメモリやストレージ１１４０などの記憶媒体がこれに該当する。
【００５６】
そして、本実施形態のサーバ記憶部１３０は、ログイン認証プログラム１３２と、第１ＩＤ発行プログラム１３４と、配信用アプリ１３８と、ユーザデータＤＢ１４０とを記憶する。その他、サーバシステム１０として機能するのに必要な、タイマー、カウンタ、フラグなどの情報を格納することができる。
【００５７】
ログイン認証プログラム１３２は、サーバ処理部１１０が読み出して実行することで認証処理部１１２としての機能を実現するためのプログラムである。第１ＩＤ発行プログラム１３４は、サーバ処理部１１０が読み出して実行することで第１ＩＤ発行部１１４としての機能を実現するためのプログラムである。
配信用アプリ１３８は、アプリ配布制御部１２２が、アプリケーションプログラムのダウンロード要求に応じて、アプリケーションプログラムを提供（配信）する際に複製されるオリジナルのプログラムである。
ユーザデータＤＢ１４０は、図１（１）を参照して説明した通り、第１ＩＤと、第２ＩＤと、ユーザデータとを関連づけて記憶・登録しているデータベースである。
【００５８】
サーバ記憶部１３０は、これらのデータの他に、例えば、ユーザ端末２０のアプリ実行履歴データを記憶することとしてもよい。アプリ実行履歴データとは、例えば、ユーザ端末２０におけるアプリ実行中に、ユーザ端末２０での操作情報や実行途中経過情報等を受信し、これを日時、第１ＩＤ、第２ＩＤと対応づけて履歴的に記憶する。アプリ実行履歴データを記憶しておくことで、ユーザ端末２０において何らかの不具合や問題が起こった場合に、アプリ提供事業者側が対処することができる。
【００５９】
［ログイン認証処理の動作フロー］
サーバシステム１０で実行されるログイン認証処理について図７を参照して説明する。図７は、サーバ処理部１１０がログイン認証プログラム１３２を読み出して実行することで実現されるログイン認証処理の流れを示すフローチャートである。ログイン認証処理は、ユーザ端末２０から認証依頼情報を受信することで実行される。
【００６０】
先ず、サーバ処理部１１０は、ユーザ端末２０から送信されてきた認証依頼情報に第１ＩＤが含まれているか否か、すなわち第１ＩＤが空（ＮＵＬＬ）を示す情報となっていないかを判定する（ステップＳ２）。空（ＮＵＬＬ）を示す情報の場合には（ステップＳ２：ＹＥＳ）、認証依頼情報に含まれている第２ＩＤが、ユーザデータＤＢ１４０に登録されているかを判定する（ステップＳ４）。
【００６１】
第２ＩＤがユーザデータＤＢ１４０に登録されていない場合には（ステップＳ４：ＮＯ）、今回の認証依頼情報の受付は初回の受付、すなわちユーザ端末２０にとっては初回の実行である。このため、第１ＩＤ発行プログラム１３４を実行することで第１ＩＤを発行し、発行した第１ＩＤと、認証依頼情報に含まれている第２ＩＤと、新規のユーザデータとを関連づけてユーザデータＤＢ１４０に新規登録する（ステップＳ６）。また、発行した第１ＩＤをユーザ端末２０に通知するとともに、新規のユーザデータを送信してログイン認証処理を終了する。
【００６２】
認証依頼情報に含まれている第２ＩＤがユーザデータＤＢ１４０に登録されている場合は（ステップＳ４：ＹＥＳ）、図１（３）の（ニ）のケースに該当するため、復旧処理を実行する。すなわち、サーバ処理部１１０は、第２ＩＤに関連づけてユーザデータＤＢ１４０に登録されている第１ＩＤをユーザ端末２０に通知するとともに、データを復旧する旨を通知する。そして、第２ＩＤに関連づけて記憶されているユーザデータをユーザ端末２０に送信する。復旧処理の実行後、ログイン認証処理を終了する。
【００６３】
ステップＳ２において、受け付けた認証依頼情報に含まれている第１ＩＤが空（ＮＵＬＬ）でない場合には（ステップＳ２：ＮＯ）、サーバ処理部１１０は、認証依頼情報に含まれている第１ＩＤ及び第２ＩＤが、ユーザデータＤＢ１４０に登録されており、且つ、第１ＩＤ及び第２ＩＤが、ユーザデータＤＢ１４０に関連づけて登録されているか否かを判定する（ステップＳ１０）。すなわち、第１ＩＤ及び第２ＩＤの組合せが、ユーザデータＤＢ１４０に登録されている組合せと一致するかを判定する。
【００６４】
一致する場合は（ステップＳ１０：ＹＥＳ）、図１（３）の（イ）のケースに該当する。認証を承認した旨をユーザ端末２０に通知するとともに、ユーザデータＤＢ１４０に記憶されている対応するユーザデータをユーザ端末２０に送信して、ログイン認証処理を終了する。
【００６５】
他方、一致しない場合は（ステップＳ１０：ＮＯ）、サーバ処理部１１０は、認証依頼情報に含まれている第２ＩＤに関連づけて、ユーザデータＤＢ１４０にユーザデータが記憶されているか否かを判定する（ステップＳ１２）。記憶されている場合は（ステップＳ１２：ＹＥＳ）、図１（３）の（ロ）のケースに該当する。従って、認証依頼情報に含まれている第１ＩＤに関連づけてユーザデータＤＢ１４０に記憶されたユーザデータ（第１のユーザデータ）と、認証依頼情報に含まれている第２ＩＤに関連づけてユーザデータＤＢ１４０に記憶されたユーザデータ（第２のユーザデータ）とのどちらかをユーザに選択させる制御信号をユーザ端末２０に送信する（ステップＳ１４）。
【００６６】
そして、ユーザ端末２０から、第１のユーザデータを選択した旨の選択結果を受信した場合には、認証依頼情報に含まれている第１ＩＤ及び第２ＩＤと、第１ユーザデータとを関連づけるようにユーザデータＤＢ１４０の記憶内容（登録内容）を更新する（ステップＳ１６）。具体的には、第１ＩＤと第１ユーザデータとは関連づけて記憶されているため、この関連づけにおける第２ＩＤを、認証依頼情報に含まれている第２ＩＤに更新すればよい。また、更新に際して矛盾するデータを削除する。すなわち、更新する前の第２ＩＤの関連づけ（更新する前の第２ＩＤに関連づけられていた第１ＩＤおよびユーザデータ）を、ユーザデータＤＢ１４０から削除する。
【００６７】
一方、ユーザ端末２０から、第２のユーザデータを選択した旨の選択結果を受信した場合には、認証依頼情報に含まれている第１ＩＤ及び第２ＩＤと、第２ユーザデータとを関連づけるようにユーザデータＤＢ１４０の記憶内容（登録内容）を更新する（ステップＳ１６）。具体的には、第２ＩＤと第２ユーザデータとは関連づけて記憶されているため、この関連づけにおける第１ＩＤを、認証依頼情報に含まれている第１ＩＤに更新すればよい。また、更新に際して矛盾するデータを削除する。すなわち、更新する前の第１ＩＤの関連づけ（更新する前の第１ＩＤに関連づけられていた第２ＩＤおよびユーザデータ）を、ユーザデータＤＢ１４０から削除する。
【００６８】
そして、ユーザデータＤＢ１４０の更新を行った旨をユーザ端末２０に通知し、更新した関連づけにおけるユーザデータをユーザ端末２０に送信してログイン認証処理を終了する。
【００６９】
また、ステップＳ１２において、認証依頼情報の第２ＩＤに関連づけられたユーザデータが、ユーザデータＤＢ１４０に記憶されていない場合は（ステップＳ１２：ＮＯ）、図１（３）の（ハ）のケースに該当する。第１ＩＤはユーザデータＤＢ１４０に登録されているため、第１ＩＤに関連づけられたユーザデータもユーザデータＤＢ１４０に記憶されている。そのため、この第１ＩＤに関連づけられたユーザデータを、認証依頼情報の第１ＩＤ及び第２ＩＤと関連づけるように登録を更新して「移行」する旨をユーザに確認操作させる制御信号をユーザ端末２０に送信する（ステップＳ１８）。
【００７０】
そして、確認操作がなされた場合に、認証依頼情報に含まれている第１ＩＤ及び第２ＩＤと、当該第１ＩＤに関連づけてユーザデータＤＢ１４０に記憶されているユーザデータとを関連づけるように、ユーザデータＤＢ１４０の関連づけを更新する（ステップＳ２０）。具体的には、第１ＩＤとユーザデータとは関連づけて記憶されているため、この関連づけにおける第２ＩＤを、認証依頼情報に含まれている第２ＩＤに更新すればよい。また、更新に際して矛盾するデータを削除する。すなわち、更新する前に認証依頼情報に含まれている第２ＩＤに関連づけてユーザデータＤＢ１４０に登録されていた第１ＩＤを削除する。
【００７１】
そして、ユーザデータＤＢ１４０の更新を行った旨をユーザ端末２０に通知し、更新した関連づけにおけるユーザデータをユーザ端末２０に送信してログイン認証処理を終了する。
【００７２】
以上の通り、本実施形態によれば、既に実行したアプリを利用するユーザ端末２０を変更したり、ＳＩＭカードＳＣを交換するといった場合に、ユーザデータの継続的な使用を可能とする、いわゆる「移行」の作業を簡単に実現することができる。
【００７３】
［ユーザ端末の機能ブロックの説明］
次に、ユーザ端末２０の機能構成例について説明する。
図８は、本実施形態におけるユーザ端末２０の機能構成の一例を示す機能ブロック図である。本実施形態のユーザ端末２０は、処理部２１０と、記憶部２３０と、操作入力部２７０と、音出力部２７５と、表示部２８０と、通信部２９０とを備える。
【００７４】
処理部２１０は、例えばＣＰＵやＧＰＵ等のマイクロプロセッサや、ＡＳＩＣ、ＩＣメモリなどの電子部品によって実現され、操作入力部２７０や記憶部２３０を含むユーザ端末２０の各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部２７０からの操作入力信号、サーバシステム１０との通信結果、などに基づいて各種の演算処理を実行して、ユーザ端末２０の動作を制御する。図２ではＣＰＵ１５５１等が処理部２１０に該当する。
【００７５】
処理部２１０は、システムプログラム２４０に基づいてユーザ端末２０にＯＳを構築し、ＯＳに含まれる各種機能を実現する。このＯＳの一機能として処理部２１０は、例えば、サーバシステム１０からアプリのダウンロード及びインストールを実行し、インストールアプリＩＤ生成プログラム２４２に従って、インストールしたアプリに関するインストールアプリＩＤ２３２を生成する。この機能は、例えば、ＵＩＩＤの発行機能である公知の機能を利用することができる。インストールアプリＩＤ２３２は、ユニバーサルな識別情報である。
【００７６】
また、ＯＳの一機能として、アプリ設定データバックアッププログラム２４４に従ったアプリ設定データ２６０のバックアップ機能、および、バックアップデータ反映プログラム２４６に従ったバックアップしたアプリ設定データ２６０の反映機能を実現する。バックアップ機能や反映機能は、図３（１）を参照して説明した機能であり、ユーザ端末２０をデータバックアップ機器（例えばパーソナルコンピュータ）に接続して当該プログラムを実行することで発動される。
【００７７】
また、処理部２１０は、アプリ実行制御部２１２と、音生成部２２２と、画像生成部２２４と、通信制御部２２６とを備える。
アプリ実行制御部２１２は、処理部２１０がアプリケーションプログラム２５０を実行することで実現される機能部である。アプリ実行制御部２１２は、アプリケーションプログラム２５０の実行は勿論のこと、アプリケーションプログラム２５０の実行に際して、インストールアプリＩＤ２３２或いは通信用ＩＤ２９１を用いて第２ＩＤを設定する第２ＩＤ設定部２１４や、サーバシステム１０に第１ＩＤ２６２及び第２ＩＤ２３４を含む認証依頼情報を送信してログイン処理を行うログイン制御部２１６を有する。
【００７８】
音生成部２２２は、例えばデジタルシグナルプロセッサ（ＤＳＰ）や、音声合成ＩＣなどのプロセッサ、音声ファイル再生可能なオーディオコーデック等によって実現され、アプリ実行制御部２１２による処理結果に基づいてＢＧＭや各種操作音の音信号を生成し、音出力部２７５に出力する。
【００７９】
画像生成部２２４は、例えば、ＧＰＵ（Graphics Processing Unit）、デジタルシグナルプロセッサ（ＤＳＰ）などのプロセッサ、ビデオ信号ＩＣ、ビデオコーデックなどのプログラム、フレームバッファ等の描画フレーム用ＩＣメモリ、テクスチャデータの展開用に使用されるＩＣメモリ等によって実現される。画像生成部２２４は、処理部２１０の処理結果に基づいて画像信号を生成し、生成した画像信号を表示部２８０に出力する。
【００８０】
通信制御部２２６は、通信部２９０を介した外部装置との間での通信（音声通信やデータ通信）を制御する機能部である。外部装置は、他のユーザ端末２０や、データバックアップ用のパーソナルコンピュータ、サーバシステム１０等である。
【００８１】
操作入力部２７０は、ユーザによって為された各種の操作入力に応じて操作入力信号を処理部２１０に出力する。例えば、ボタンスイッチや、タッチパッド、トラックボールといった直接プレーヤが指で操作する素子はもちろん、加速度センサや角速度センサ、傾斜センサ、地磁気センサなど、運動や姿勢を検知する素子などによっても実現できる。図２の方向入力キー１５０２やボタンスイッチ１５０４、タッチパネル１５０６がこれに該当する。
【００８２】
音出力部２７５は、音生成部２２２から入力される音信号に基づいて音出力する装置によって実現される。図２ではスピーカ１５１０がこれに該当する。
【００８３】
表示部２８０は、画像生成部２２４から入力される画像信号に基づいて各種画像を表示する。例えば、フラットパネルディスプレイ、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。図２ではタッチパネル１５０６が該当する。
【００８４】
通信部２９０は、通信ネットワークＮと接続して通信（音声通信やデータ通信）を実現する機能部であり、図２の携帯電話モジュールＳＣＭや、無線通信モジュール１５５３が該当する。また、通信部２９０は、パーソナルコンピュータ等と直接接続して、データのバックアップや、バックアップしたデータを反映するための通信を実現する。
通信部２９０には、ユニバーサルな識別情報である通信用ＩＤ２９１が記録されている。通信用ＩＤ２９１は、通信部２９０が携帯電話モジュールＳＣＭであれば、例えばＳＩＭカードＳＣ内のＳＩＭデータに相当し、無線通信モジュール１５５３であれば、例えばＭＡＣアドレスに相当する。
【００８５】
記憶部２３０は、処理部２１０にユーザ端末２０を統合的に制御させるための諸機能を実現するためのシステムプログラム２４０や、アプリケーションプログラム２５０、アプリ設定データ２６０、インストールアプリＩＤ２３２等を記憶する。また、処理部２１０の作業領域として用いられ、処理部２１０が各種プログラムに従って実行した演算結果や操作入力部２７０から入力される入力データ等を一時的に記憶する。例えば、第２ＩＤ２３４が、この一時的に記憶されるデータである。記憶部２３０の機能は、例えばＲＡＭやＲＯＭなどのＩＣメモリ、ハードディスク等の磁気ディスク、ＣＤ−ＲＯＭやＤＶＤなどの光学ディスクなどによって実現される。図２では制御基板１５５０に搭載されるＩＣメモリ１５５２やメモリカード１５４０がこれに該当する。
【００８６】
システムプログラム２４０は、ユーザ端末２０の基本機能を実現するためのプログラムであり、ＯＳを構築するためのプログラムである。システムプログラム２４０には、インストールアプリＩＤ生成プログラム２４２と、アプリ設定データバックアッププログラム２４４と、バックアップデータ反映プログラム２４６と、端末種別情報２４８とが含まれる。
【００８７】
インストールアプリＩＤ生成プログラム２４２は、新たなアプリをユーザ端末２０にインストールした時にインストールアプリＩＤ２３２を生成するためのプログラムである。アプリ設定データバックアッププログラム２４４は、インストールしたアプリを実行するに当たり必要な各種設定を格納したアプリ設定データ２６０を、外部機器にバックアップするためのプログラムである。バックアップデータ反映プログラム２４６は、外部機器にバックアップしたアプリ設定データ２６０をユーザ端末２０内に記憶・反映させるためのプログラムである。端末種別情報２４８は、ユーザ端末２０が甲種であるか乙種であるかの種別を示す情報であり、システムプログラム２４０に書き換え不能に埋め込まれている。
【００８８】
アプリケーションプログラム２５０は、サーバシステム１０から配信用アプリ１３８の複製をダウンロードしてインストールしたプログラムである。アプリケーションプログラム２５０は、アプリの実行に当たりサーバシステム１０に通信してログインを行うためのログイン処理プログラム２５２と、ログイン処理に当たり第２ＩＤ２３４を設定する第２ＩＤ設定処理を行うための第２ＩＤ設定プログラム２５４とを含む。
【００８９】
アプリ設定データ２６０は、アプリケーションプログラム２５０の実行に当たり必要な各種設定を格納したデータであり、サーバシステム１０にて発行された第１ＩＤ２６２を含む。
インストールアプリＩＤ２３２は、例えば、ＵＩＩＤであり、アプリケーションプログラム２５０がインストールされた際にインストールアプリＩＤ生成プログラム２４２の実行によって生成されるユニバーサルなＩＤである。
第２ＩＤ２３４は、第２ＩＤ設定プログラム２５４の実行により設定されるＩＤである。
【００９０】
［ユーザ端末のログインに係る動作フロー］
次に、ユーザ端末２０がアプリケーションプログラム２５０を実行する際に行うサーバシステム１０へのログイン処理に係る動作フローについて図９を参照して説明する。
図９において、まず、処理部２１０は、第２ＩＤ設定プログラム２５４を実行して第２ＩＤ設定処理を行う。すなわち、自機の種別を端末種別情報２４８から判断する（ステップＳ１０２）。甲種である場合は、処理部２１０は、インストールアプリＩＤ２３２を用いて第２ＩＤ２３４を設定する（ステップＳ１０４）。インストールアプリＩＤ２３２をそのまま第２ＩＤ２３４として設定してもよいし、別のＩＤを更に付加して第２ＩＤ２３４として設定してもよい。いずれにせよ、インストールアプリＩＤ２３２がユニバーサルにユニークなＩＤであるため、第２ＩＤ２３４もユニバーサルにユニークなＩＤとなる。
【００９１】
また、乙種である場合は、処理部２１０は、通信用ＩＤ２９１を用いて第２ＩＤ２３４を設定する（ステップＳ１０６）。通信用ＩＤ２９１をそのまま第２ＩＤ２３４として設定してもよいし、別のＩＤを更に付加して第２ＩＤ２３４として設定してもよい。通信用ＩＤ２９１はユニバーサルにユニークなＩＤであるため、乙種の場合も第２ＩＤ２３４はユニバーサルにユニークなＩＤとなる。
このステップＳ１０２〜Ｓ１０６の処理が第２ＩＤ設定処理である。
【００９２】
次いで、第１ＩＤ２６２及び第２ＩＤ２３４を含めた認証依頼情報をサーバシステム１０に送信し（ステップＳ１０８）、図７に示した処理を実行するサーバシステム１０と所定通信を行って認証処理を実行する（ステップＳ１１０）。
認証処理が終了すると、ログイン処理は終了するが、認証が承認された場合にはユーザデータをサーバシステム１０から受信できるため、処理部２１０は、そのままアプリケーションプログラム２５０を継続実行する。一方、認証が承認されなかった場合には処理部２１０はアプリケーションプログラム２５０の実行を中止し、その旨を表示部２８０に表示させる。
【００９３】
［まとめ］
以上、本実施形態によれば、ユーザ端末２０においてアプリが初回実行される際にサーバシステム１０が発行して当該ユーザ端末２０に記憶される第１ＩＤと、当該ユーザ端末２０内で自動設定される第２ＩＤと、ユーザデータとが関連づけてユーザデータＤＢ１４０に記憶される。そして、ユーザ端末２０におけるアプリの実行に当たって、第１ＩＤ及び第２ＩＤを含む認証依頼情報がサーバシステム１０に送信され、ユーザデータＤＢ１４０に記憶されている第１ＩＤ及び第２ＩＤの組合せと一致するかが判定される。一致する場合には、ユーザが同じユーザ端末２０を使ってアプリを実行していることを意味しており、認証成功となる。一方、不一致の場合に「移行」を伴う処理を行う。
【００９４】
第１ＩＤ及び第２ＩＤは、アプリを実行したことがあれば必ず設定されているため、アプリを実行したことがあれば何らかのユーザデータも存在している。そのため、認証依頼情報に含まれる第１ＩＤ及び第２ＩＤの組合せと、ユーザデータＤＢ１４０に記憶されている第１ＩＤ及び第２ＩＤの組合せとが不一致であり（図７のステップＳ１０：ＮＯ）、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータがユーザデータＤＢ１４０に記憶されている場合（図７のステップＳ１２：ＹＥＳ）には、次の状態が考えられる。すなわち、例えば、従前に別々にアプリを実行していた第１のユーザ端末と第２のユーザ端末とが存在し、第２のユーザ端末において、第１ＩＤ及び第２ＩＤのどちらかを第１のユーザ端末のものに変えた場合である。この場合、２つのユーザ端末それぞれでアプリを実行していたために、２つのユーザデータが存在しているので、どちらのユーザデータを今後使用するかをユーザが選択することで、「移行」することができる。
【００９５】
また、認証依頼情報に含まれる第１ＩＤ及び第２ＩＤの組合せと、記憶部に記憶されている第１ＩＤ及び第２ＩＤの組合せとが不一致であり（図７のステップＳ１０：ＮＯ）、且つ、当該認証依頼情報に含まれる第２ＩＤに関連づけられたユーザデータがユーザデータＤＢ１４０に記憶されていない場合（図７のステップＳ１２：ＮＯ）には、認証依頼情報に含まれる第１ＩＤ及び第２ＩＤと、当該第１ＩＤに関連づけてユーザデータＤＢ１４０に記憶されているユーザとを関連づけるように関連づけが更新され、「移行」が実現される。この場合は、次のケースが考えられる。すなわち、何らかの理由により、第２ＩＤが変わった場合である。ユーザ端末２０を変更し、第１ＩＤを反映する等して元の第１ＩＤを引き継ぐことができたとしても、ユーザ端末２０が変わったことで第２ＩＤが変わる場合が該当する。また、ユーザ端末２０は同じであるが、第２ＩＤのみが変わった場合も該当する。こういった場合でも、「移行」を簡単に実現することができる。
【００９６】
従って、ユーザ端末２０においてアプリが初回実行される際にサーバシステム１０が発行して当該ユーザ端末２０に記憶される第１ＩＤと、当該ユーザ端末２０内で自動設定される第２ＩＤとを用いることで、「移行」を簡単に実現することができる。また、第１ＩＤ及び第２ＩＤはユーザが設定するＩＤではなく、サーバシステム１０或いはユーザ端末２０が機械的に設定するＩＤであり、第２ＩＤはログイン処理を実行する度に設定されるため（図９参照）、その性格上、不正な「移行」を抑制する効果が期待できる。
【００９７】
〔変形例〕
以上、本発明を適用した実施形態について説明したが、本発明の適用可能な実施形態が上述の実施形態に限定されるものではなく、適宜、構成要素の追加・省略・変更を施すことができる。
【００９８】
例えば、第２ＩＤを、ユーザ端末２０のＯＳが発行する当該ユーザ端末のユニバーサル識別情報を用いて設定してもよい。例えば、ＡＮＤＲＯＩＤ（登録商標）ＩＤ等がこの識別情報に該当する。また、第２ＩＤを、ユーザ端末２０の機器ごとに割り当てられるユニバーサル識別情報を用いて設定してもよい。例えば、ＵＤＩＤ（Unique Device IDentifier）がこの識別情報に該当する。勿論、これらの識別情報を組み合わせて第２ＩＤを設定することとしてもよい。
【符号の説明】
【００９９】
１０…サーバシステム、１１０…サーバ処理部、１１２…認証処理部、１１４…第１ＩＤ発行部、１４０…ユーザデータＤＢ、２０…ユーザ端末
【図１】
2015026159.tif 000003
【図２】
2015026159.tif 000004
【図３】
2015026159.tif 000005
【図４】
2015026159.tif 000006
【図５】
2015026159.tif 000007
【図６】
2015026159.tif 000008
【図７】
2015026159.tif 000009
【図８】
2015026159.tif 000010
【図９】
2015026159.tif 000011