(57)【要約】【課題】  トークンの取得が困難な状況においても、トークンを取得することを可能にする技術を提供する。【解決手段】  外部機器との接続を行う接続手段と、前記接続手段により接続した外部機器の数を取得する取得手段と、前記取得手段により取得した外部機器の数に応じて、認可処理を切り替える切替手段と、接続中の外部機器毎に異なる認可情報を取得する第一の認可処理手段と、接続中の外部機器に共通の認可情報を取得する第二の認可処理手段と、前記第一の認可処理手段、あるいは、前記第二の認可処理手段により取得した認可情報を前記外部機器へと送信する送信手段と有し、前記切替手段は、前記取得手段により取得した外部機器の数に応じて、前記第一の認可処理手段で認可処理を行うか、前記第二の認可処理手段で認可処理を行うかを切り替える。【選択図】  図２
2015103029.tif 000002
【特許請求の範囲】
【請求項１】
外部機器との接続を行う接続手段と、
前記接続手段により接続した外部機器の数を取得する取得手段と、
前記取得手段により取得した外部機器の数に応じて、認可処理を切り替える切替手段と、
接続中の外部機器毎に異なる認可情報を取得する第一の認可処理手段と、
接続中の外部機器に共通の認可情報を取得する第二の認可処理手段と、
前記第一の認可処理手段、あるいは、前記第二の認可処理手段により取得した認可情報を前記外部機器へと送信する送信手段と有し、
前記切替手段は、前記取得手段により取得した外部機器の数に応じて、前記第一の認可処理手段で認可処理を行うか、前記第二の認可処理手段で認可処理を行うかを切り替えることを特徴とする情報処理装置。
【請求項２】
前記切替手段は、前記取得手段により取得した外部機器の数が所定の値より小さい場合は、前記第一の認可処理手段で認可処理を行うようにし、前記取得手段により取得した外部機器の数が所定の値より大きい場合は、前記第二の認可処理手段で認可処理を行うように、切り替えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
外部機器との接続を行う接続手段と、
前記接続手段により接続した外部機器がオンライン状態であるかどうかを確認する確認手段と、
前記確認手段により取得した外部機器の接続状態に応じて、認可処理を切り替える切替手段と、
前記外部機器がオンラインの場合に、接続中の外部機器毎に異なる認可情報を取得する第一の認可処理手段と、
前記外部機器がオフラインの場合に、接続中の外部機器に共通の認可情報を取得する第二の認可処理手段と、
前記第一の認可処理手段、あるいは、前記第二の認可処理手段により取得した認可情報を外部機器へと送信する送信手段を有することを特徴とする情報処理装置。
【請求項４】
前記外部機器毎に異なる認可情報とは、外部機器の認証情報を含んだリソースへのアクセス権を示す情報であることを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
情報処理装置の制御方法であって、
接続手段が、外部機器との接続を行う接続工程と、
取得手段が、前記接続した外部機器の数を取得する取得工程と、
切替手段が、前記取得した外部機器の数に応じて、認可処理を切り替える切替工程と、
第一の認可処理手段が、接続中の外部機器毎に異なる認可情報を取得する第一の認可処理工程と、
第二の認可処理手段が、接続中の外部機器に共通の認可情報を取得する第二の認可処理工程と、
送信手段が、前記第一の認可処理工程、あるいは、前記第二の認可処理工程により取得した認可情報を前記外部機器へと送信する送信工程と有し、
前記切替工程は、前記取得した外部機器の数に応じて、前記第一の認可処理工程で認可処理を行うか、前記第二の認可処理工程で認可処理を行うかを切り替えることを特徴とする情報処理装置の制御方法。
【請求項６】
前記切替工程は、前記取得工程により取得した外部機器の数が所定の値より小さい場合は、前記第一の認可処理工程で認可処理を行うようにし、前記取得工程により取得した外部機器の数が所定の値より大きい場合は、前記第二の認可処理工程で認可処理を行うように、切り替えることを特徴とする請求項５に記載の情報処理装置の制御方法。
【請求項７】
情報処理装置の制御方法であって、
接続手段が、外部機器との接続を行う接続工程と、
確認手段が、前記接続した外部機器がオンライン状態であるかどうかを確認する確認工程と、
切替手段が、前記確認した外部機器の接続状態に応じて、認可処理を切り替える切替工程と、
第一の認可処理手段が、前記外部機器がオンラインの場合に、接続中の外部機器毎に異なる認可情報を取得する第一の認可処理工程と、
第二の認可処理手段が、前記外部機器がオフラインの場合に、接続中の外部機器に共通の認可情報を取得する第二の認可処理工程と、
送信手段が、前記第一の認可処理工程、あるいは、前記第二の認可処理工程により取得した認可情報を外部機器へと送信する送信工程を有することを特徴とする情報処理装置の制御方法。
【請求項８】
前記外部機器毎に異なる認可情報とは、外部機器の認証情報を含んだリソースへのアクセス権を示す情報であることを特徴とする請求項５乃至７の何れか１項に記載の情報処理装置の制御方法。
【請求項９】
コンピュータを、請求項１乃至４の何れか１項に記載の情報処理装置が有する各手段と
して機能させるためのコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記
憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、保護されたリソースへのアクセス認可に関するものである。
【背景技術】
【０００２】
従来、あるユーザ（以後、リソースオーナーと呼ぶ）の保護されたリソースへのアクセス権限を、他の主体に委譲する方法が提案されている。例えば、アプリケーションにアクセス権を委譲する際に使用するプロトコルの１つとして、ＯＡｕｔｈが知られている。ＯＡｕｔｈでは、保護されたリソースへのアクセス権の確認にトークンを使用する。トークンとは、保護されたリソースを管理する主体（以後、認証サーバと呼ぶ）が、委譲を受ける主体（以後、委譲先デバイスと呼ぶ）のアクセス権を確認するために利用する一意のキー（ランダム生成された文字列）である。トークンは、リソースオーナーからの指示を受け、認証サーバから委譲先デバイスへと発行される。
【０００３】
また、リソースオーナーが委譲先デバイスへ権限を委譲する別の方法として、特許文献１が提案されている。特許文献１では、リソースオーナーが管理サーバにアクセスするための認証チケットを生成し、委譲先デバイスに送信する。委譲先デバイスは、認証チケットを使用して、認証サーバにアクセスする。認証サーバは、認証チケットの認証を持って、委譲先デバイスへリソースオーナーの権限を付与する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２２１５０６号公報
【非特許文献】
【０００５】
【非特許文献１】Ｔｈｅ  ＯＡｕｔｈ  ２．０  Ａｕｔｈｏｒｉｚａｔｉｏｎ  Ｆｒａｍｅｗｏｒｋ  ｄｒａｆｔ−ｉｅｔｆ−ｏａｕｔｈ−ｖ２−２６／Ｍａｙ，２０１２
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１は、登場する主体（リソースオーナー、委譲先デバイス、認証サーバ）は３者モデルであることを想定している。例えば、外出先で複数の友人にトークンを一斉送信する場合、特許文献１では、一人（委譲先デバイス）毎に処理を行う必要がある。そのため、限られた時間内に全ての友人にトークンの送信を行うことはできなかった。また、外部機器がオフライン状態のため、オンラインでトークンを取得することができないこともあった。
【０００７】
本発明はかかる問題点に鑑みなされたものであり、トークンの取得が困難な状況においても、トークンを取得することを可能にする技術を提供する。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明の情報処理装置の１つによれば、外部機器との接続を行う接続手段と、前記接続手段により接続した外部機器の数を取得する取得手段と、前記取得手段により取得した外部機器の数に応じて、認可処理を切り替える切替手段と、接続中の外部機器毎に異なる認可情報を取得する第一の認可処理手段と、接続中の外部機器に共通の認可情報を取得する第二の認可処理手段と、前記第一の認可処理手段、あるいは、前記第二の認可処理手段により取得した認可情報を前記外部機器へと送信する送信手段と有し、前記切替手段は、前記取得手段により取得した外部機器の数に応じて、前記第一の認可処理手段で認可処理を行うか、前記第二の認可処理手段で認可処理を行うかを切り替えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、トークンの取得が困難な状況においても、トークンを取得することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】実施形態１の権限移譲システムの構成を説明する図
【図２】実施形態１の情報処理装置１１の構成を説明する図
【図３】実施形態１における情報処理装置１１の処理のフローチャート
【図４】実施形態３における権限移譲システムの処理のフローチャート
【図５】実施形態２の情報処理装置１１の構成を説明する図
【図６】実施形態２の端末装置１２の構成を説明する図
【図７】実施形態２における権限移譲システムの処理のフローチャート
【図８】実施形態３の情報処理装置１１の構成を説明する図
【図９】実施形態３の端末装置１２の構成を説明する図
【図１０】実施形態３の認証装置１３の構成を説明する図
【発明を実施するための形態】
【００１１】
［実施形態１］
●権限委譲システムの構成
図１は、本実施形態における権限委譲システムを示す図である。
【００１２】
本実施形態における権限委譲システムは、情報処理装置１１、端末装置１２、認証装置１３から構成される。
【００１３】
情報処理装置１１は、上述のリソースオーナーにあたる。つまり、委譲先デバイスである各端末装置１２へ権限を委譲する主体である。情報処理装置１１の構成については後述する。端末装置１２は、上述の委譲先デバイスにあたる。つまり、情報処理装置１１と接続し、情報処理装置１１から認証サーバ（認証装置１３）が発行したトークンを取得する。また、トークンを使用して認証装置１３と接続し、リソースオーナーのリソースを取得する。なお、情報処理装置１１と接続する端末装置１２は複数あってもよいものとする。認証装置１３は、上述の認証サーバにあたる。つまり、トークンの発行、委譲先デバイスの認証、リソースオーナーのリソースの提供を行う。
【００１４】
●情報処理装置１１の構成
図２は、本実施形態において接続中の外部機器の総数に応じてリソースへのアクセス認可処理を切り替える情報処理装置１１を示す図である。この情報処理装置は、たとえばＣＰＵ、ハードディスク、メモリ等のハードウェアとＣＰＵが実行するプログラム等のソフトウェアを備え、メモリに格納されたプログラムの指示に従い動作を行うパーソナルコンピュータに相当する。本実施形態における情報処理装置１１は、機器接続部２１、機器認可部２２、通信部２３から構成される。
【００１５】
機器接続部２１は、外部機器との接続を行う。また接続可能機器情報や接続中の機器情報を取得する。機器接続部２１の構成、及び処理内容については後述する。機器認可部２２は、機器接続部２１から取得した接続中の外部機器の総数に応じてアクセス認可処理、すなわちトークンの配布方法を切り替える。また外部機器へトークンの配布を行う。機器認可部２２の構成、及び処理内容については後述する。通信部２３は、外部機器との通信を行う。通信部２３は、例えば有線ＬＡＮケーブルを用いた有線接続、Ｗｉ−Ｆｉによる無線接続等、外部機器と接続可能な任意の方法を用いてよい。
【００１６】
●機器接続部２１の構成
機器接続部２１は、図２に示す通り、接続部２１１、取得部２１２から構成される。接続部２１１は、通信部２３を用いて外部機器との接続を行う。外部機器との接続は、接続可能な外部機器全てと自動的に接続する、あるいは、情報処理装置１１が備えるユーザーインターフェースを用いて、情報処理装置１１のユーザが接続する外部機器を選択してもよい。取得部２１２は、接続部２１１を用いて接続した外部機器の総数を取得する。
【００１７】
●機器認可部２２の構成
機器認可部２２は、図２に示す通り、切替部２２１、第一の認可処理部２２２、第二の認可処理部２２３、送信部２２４から構成される。切替部２２１は、接続した外部機器の総数に応じて認可処理を切り替える。ここでは、取得部２１２から取得した総数が「Ｎ」（Ｎは０以上の正整数）未満であれば、第一の認可処理部２２２を実行する。設定した範囲と異なる、つまり「Ｎ」以上であれば、第二の認可処理部２２３を実行する。ここで上述の「Ｎ」は、情報処理装置１１に予め設定しておいた初期値を用いてもよいし、情報処理装置１１が備えるユーザーインターフェースを用いて、情報処理装置１１のユーザが設定した数値を用いてもよい。
【００１８】
第一の認可処理部２２２は、接続した外部機器の総数が設定した範囲と一致する場合に、通信部２３を用いて認証サーバ（認証装置１３）から認証コードを取得する。例えば非特許文献１に記載のＡｕｔｈｏｒｉｚａｔｉｏｎ  Ｃｏｄｅ  Ｆｌｏｗを実行し、認証コードを取得する。ここでいう認証コードとは、上述の通り認証サーバが委譲先デバイスを認証するための情報であり、接続した外部機器毎に異なる情報である。各外部機器は、認証コードを認証サーバに送信することで、トークンの取得が可能となる。
【００１９】
第二の認可処理部２２３は、接続した外部機器の総数が設定した範囲と異なる場合に、第一の認可処理部２２２と異なり、接続した外部機器全てに共通のトークンを取得する。例えば非特許文献１に記載のＣｌｉｅｎｔ  Ｃｒｅｄｅｎｔｉａｌｓ  Ｆｌｏｗを実行し、通信部２３を用いて認証サーバからトークンを取得する。
【００２０】
送信部２２４は、第一の認可処理部２２２、及び第二の認可処理部２２３を用いて取得したトークンを、通信部２３を用いて外部機器へと送信する。
【００２１】
●情報処理装置１１の処理工程
図３は、情報処理装置１１の処理フローである。以下、図３の処理の流れを説明する。まず、ステップＳ４０では、接続部２１１が、通信部２３を用いて外部機器（端末装置１２）との接続を行う。ここでは例として、「ｃａｍｅｒａ  Ａ」、「ｃａｍｅｒａ  Ｂ」、「ｃａｍｅｒａ  Ｃ」と接続したものとする。ステップＳ４１では、取得部２１２が、接続部２１１を用いて、接続中の外部機器の総数を取得する。ここでは例として総数は「３」とする。
【００２２】
ステップＳ４２では、切替部２２１が、ステップＳ４１で取得した総数に応じて認可処理を切り替える。ここでは総数が「Ｎ」（Ｎは０以上の正整数）未満の場合にステップＳ４３へ、「Ｎ」以上の場合にステップＳ４４に移行する。例えば、「Ｎ＝２」、及びステップＳ４１で取得した総数が「３」の場合、ステップＳ４４に移行する。ステップＳ４３では、第一の認可処理部２２２が、通信部２３を用いて認証サーバから認証コードを取得する。ステップＳ４４では、第二の認可処理部２２３が、通信部２３を用いて認証サーバからトークンを取得する。ステップＳ４５では、送信部２２４が、ステップＳ４３、及びステップＳ４４で取得したトークンを、通信部２３を用いて外部機器へと送信する。
【００２３】
本発明によれば、接続した外部機器の総数に応じて認可処理を切り替える。これは、例えば外出先等で、限られた時間内に全ての友人にトークンの送信を行う場合において、総数が「Ｎ」以上の場合に、トークンを直接外部機器へ送信することにより、委譲先デバイス毎の処理を省略し、短時間で処理を行うことが可能となる。
【００２４】
なお、本実施形態においてステップＳ４４の処理、外部機器全てに共通のトークンを取得する処理は、ステップＳ４１の前に予め情報処理装置１１のユーザと認証サーバの間で実施してもよい。その場合、ステップＳ４５では、事前に取得したトークンを外部機器へ送信する処理を行う。
【００２５】
なお、ステップＳ４２では、接続中の外部機器の総数が所定の値であるＮ以上であるか、Ｎより小さいかで判定を行ったが、接続中の外部機器の総数がＮより大きいか、Ｎ以下であるかで判定してよい。
【００２６】
以上の実施形態によれば、接続中の外部機器の総数に応じて、リソースへのアクセス認可処理を切り替える。これにより、接続外部機器の増加によって、トークンの取得が困難な状況においても、トークンを取得することを可能になる。
【００２７】
［実施形態２］
実施形態２では、接続中の外部機器がオンライン状態であるかどうかに応じて認可処理を切り替える方法について説明する。なお、本実施形態では実施形態１と異なる部分のみ説明する。
【００２８】
●情報処理装置１１の構成
図５は、本実施形態における情報処理装置１１の構成を説明する図である。機器接続部５１は、外部機器との接続を行う。また接続中の外部機器がオンライン状態であるかどうかの情報を取得する。機器接続部５１の構成については後述する。機器認可部５２は、機器接続部５１から取得した外部機器がオンライン状態であるかどうかの情報に応じてアクセス認可処理、すなわちトークンの配布方法を切り替える。また外部機器へトークンの配布を行う。機器認可部５２の構成については後述する。
【００２９】
●機器接続部５１の構成
機器接続部５１は、図５に示す通り、接続部２１１、確認部５１２から構成される。確認部５１２は、接続部２１１にて接続した外部機器がオンライン状態であるかどうかを確認する。
【００３０】
●機器認可部５２の構成
機器認可部５２は、図５に示す通り、切替部５２１、第一の認可処理部２２２、第二の認可処理部２２３、送信部２２４から構成される。切替部５２１は、選択中の外部機器がオンライン状態であるかどうかの情報に応じて認可処理を切り替える。ここでは、確認部５１２から取得した情報が「オンライン状態」であれば、第一の認可処理部２２２を実行する。「オフライン状態」であれば、第二の認可処理部２２３を実行する。
【００３１】
●端末装置１２の構成
図６は、本実施形態における端末装置１２の構成を説明する図である。端末装置１２は、たとえばＣＰＵ、ハードディスク、メモリ等のハードウェアとＣＰＵが実行するプログラム等のソフトウェアを備え、メモリに格納されたプログラムの指示に従い動作を行うパーソナルコンピュータに相当する。
【００３２】
本実施形態における端末装置１２は、機器接続部６１、管理部６２、第一の通信部６３、第二の通信部６４から構成される。
【００３３】
機器接続部６１は、情報処理装置１１との接続を行う。また情報処理装置１１へ端末装置１２のインターネット接続状態（オンライン・オフライン）を通知する。機器接続部６１の構成については後述する。
【００３４】
管理部６２は、情報処理装置１１から取得したリソースへのアクセス認可情報を管理する。管理部６２の構成については後述する。アクセス認可情報は、外部機器の認証情報を含んだリソースへのアクセス権を示す情報である。
【００３５】
第一の通信部６３は、情報処理装置１１との通信を行う。第一の通信部６３は、例えば有線ＬＡＮケーブルを用いた有線接続、Ｗｉ−Ｆｉによる無線接続等、外部機器と接続可能な任意の方法を用いてよい。
【００３６】
第二の通信部６４は、インターネットを介して認証装置１３との通信を行う。第二の通信部６４は、例えば有線ＬＡＮケーブルを用いた有線接続、Ｗｉ−Ｆｉによる無線接続等、外部機器と接続可能な任意の方法を用いてよい。
【００３７】
●機器接続部６１の構成
機器接続部６１は、図６に示す通り、接続部６１１、送信部６１２から構成される。接続部６１１は、第一の通信部６３を用いて情報処理装置１１との接続を行う。送信部６１２は、第二の通信部６４を用いて端末装置１２のインターネット接続状態（オンライン・オフライン）を確認し、結果を情報処理装置１１へと通知する。
【００３８】
●管理部６２
管理部６２は、図６に示す通り、受信部６２１、記憶部６２２、送信部６２３から構成される。
【００３９】
受信部６２１は、情報処理装置１１、及び認証サーバ（認証装置１３）から送付されたアクセス認可情報を受信する。ここでいうアクセス認可情報は例えば、実施形態１で説明した認可コード、またはトークンである。
【００４０】
記憶部６２２は、受信部６２１が受信したアクセス認可情報を記憶する。
【００４１】
送信部６２３は、記憶部６２２に記憶されたアクセス認可情報を、第二の通信部６４を通して認証サーバへと送信する。
【００４２】
●権限委譲システムの処理工程
図７は、上述した権限委譲システムが行う、接続状態に応じたアクセス認可処理の切り替えに関する一連の流れを示した図である。
【００４３】
以下、図７の処理の流れを説明する。まず、ステップＳ７０は、接続部２１１が、通信部２３を用いて外部機器（端末装置１２）との接続を行う。ステップＳ７１は、接続部６１１が、第一の通信部６３を用いて、情報処理装置１１との接続を行う。ステップＳ７２では、確認部５１２が、接続した外部機器（端末装置１２）がオンライン状態であるかどうかを確認する。ステップＳ７３では、送信部６１２が、ステップＳ７２の応答として端末装置１２のインターネット接続状態（オンライン・オフライン）を情報処理装置１１へと通知する。ここでは例として通知結果は「オンライン状態」であるとする。ステップＳ７４では、切替部５２１が、確認部５１２から取得した選択中の外部機器（端末装置１２）の接続状態に応じて認可処理を切り替える。ここでは「オンライン状態」の場合にステップＳ７５へ、「オフライン状態」の場合にステップＳ７６に移行する。ステップＳ７５からステップＳ７７は、それぞれステップＳ４３からステップＳ４５と同じ処理である。ステップＳ７８では、受信部６２１が、情報処理装置１１から送付されたアクセス認可情報を受信し、記憶部６２２に記憶する。ステップＳ７９では、送信部６２３が、記憶部６２２に記憶されたアクセス認可情報を、第二の通信部６４を通して認証サーバへと送信する。
【００４４】
本発明によれば、接続した外部機器がオンライン状態であるかどうかの情報に応じて認可処理を切り替える。これは、例えば外出先等、外部機器がインターネットに接続できない（オフライン）環境で、オンライン処理を省略することで、委譲先デバイスがトークンを取得することが可能となる。
【００４５】
なお、実施形態１と同様にステップＳ７６の処理、外部機器全てに共通のトークンを取得する処理は、ステップＳ７１の前に予め情報処理装置１１のユーザと認証サーバの間で実施してもよい。その場合、ステップＳ７１からステップＳ７８までは、情報処理装置１１と端末装置１２が接続可能状態であれば、全てオフラインで処理が可能となる。
【００４６】
以上の実施形態によれば、外部機器がオンラインかオフラインかに応じて、リソースへのアクセス認可処理を切り替える。これにより、オフラインによりトークンの取得が困難な状況においても、トークンを取得することを可能になる。
【００４７】
［実施形態３］
実施形態２では、トークンを直接外部機器である端末装置１２へ送信する場合において、外部機器の認証も行えるようにする方法について説明する。
【００４８】
●情報処理装置１１の構成
図８は、本実施形態における情報処理装置１１の構成を説明する図である。情報処理装置１１は、たとえばＣＰＵ、ハードディスク、メモリ等のハードウェアとＣＰＵが実行するプログラム等のソフトウェアを備え、メモリに格納されたプログラムの指示に従い動作を行うパーソナルコンピュータに相当する。
【００４９】
本実施形態における情報処理装置１１は、機器接続部９１、機器認可部９２、通信部９３から構成される。このうち通信部９３は、通信部２３と同じ構成であるため説明は割愛する。
【００５０】
機器接続部９１は、外部機器との接続を行う。また接続可能機器情報や接続中の機器情報を取得し、記憶する。機器接続部９１の構成については後述する。
【００５１】
機器認可部９２は、機器接続部９１から取得した外部機器との接続状態に応じてアクセス認可処理、すなわちトークンの配布方法を切り替える。また外部機器へトークンの配布を行う。さらに、選択したアクセス認可処理に基づいて、認証装置１３にトークンを委譲する外部機器情報一覧を送信する。機器認可部９２の構成については後述する。
【００５２】
●機器接続部９１の構成
機器接続部９１は、図８に示す通り、接続部９１２、取得部９１３、一覧取得部９１１、記憶部９１４から構成される。このうち、接続部９１２、取得部９１３は、それぞれ図２の接続部２１１、取得部２１２までと同じ構成であるため説明は割愛する。
【００５３】
一覧取得部９１１は、接続部２１１を用いて取得した接続中の外部機器情報一覧を取得する。記憶部９１４は、外部機器情報一覧を記憶する。
【００５４】
●機器認可部９２の構成
機器認可部９２は、図８に示す通り、切替部９２１、第一の認可処理部９２２、第二の認可処理部９２３、送信部９２４から構成される。このうち切替部９２１、第一の認可処理部９２２は、切替部２２１、第一の認可処理部２２２と同じ構成であるため説明は割愛する。第二の認可処理部９２３は、第一の認可処理部９２２と異なり、接続した外部機器全てに共通の仮トークンを取得する。例えば非特許文献１に記載のＣｌｉｅｎｔ  Ｃｒｅｄｅｎｔｉａｌｓ  Ｆｌｏｗを実行する。送信部９２４は、第二の認可処理部９２３を用いて取得した仮トークンを、通信部９３を用いて外部機器へと送信する。また、送信したトークンが仮トークンであることを外部機器へと通知する。さらに、送信部９２４は、接続機器の総数が設定した範囲と異なる場合に、接続中の接続機器一覧を認証装置に送信する。例えば、認証装置１３に仮トークンを要求する際に、記憶部９１４に記憶した外部機器情報一覧を合わせて送信する。ここでいう仮トークンとは、外部機器がリソースへトークンを用いてアクセスする際に、外部機器の認証を別途必要とする情報を指す。
【００５５】
●端末装置１２の構成
図９は、本実施形態における端末装置１２の構成を説明する図である。端末装置１２は、たとえばＣＰＵ、ハードディスク、メモリ等のハードウェアとＣＰＵが実行するプログラム等のソフトウェアを備え、メモリに格納されたプログラムの指示に従い動作を行うパーソナルコンピュータに相当する。本実施形態における端末装置１２は、機器接続部１０１、管理部１０２、通信部１０３から構成される。このうち通信部１０３は、通信部６３と同じ構成であるため説明は割愛する。機器接続部１０１は、情報処理装置１１との接続を行う。管理部１０２は、情報処理装置１１から取得したリソースへのアクセス認可情報を管理する。また、外部機器の認証に必要な情報の生成を行う。管理部１０２の構成については後述する。
【００５６】
●管理部１０２の構成
管理部１０２は、図９に示す通り、受信部１０２１、記憶部１０２２、署名処理部１０２３、送信部１０２４から構成される。受信部１０２１は、情報処理装置１１、及び認証装置１３から送付されたアクセス認可情報を受信する。ここでいうアクセス認可情報は例えば、上述した認可コード、トークン、仮トークンである。記憶部１０２２は、受信部１０２１が受信したアクセス認可情報を記憶する。また、アクセス認可情報が仮トークンの場合、仮トークンを識別するための情報も併せて保存する。署名処理部１０２３は、記憶部１０２２から読みだしたアクセス認可情報が仮トークンの場合、端末装置１２を識別するための認証情報を生成する。ここでは予め端末装置１２と認証装置１３との間で合意した秘密情報を用いて認証情報を生成する。秘密情報の例としては、パスワード、秘密鍵等任意の手段を用いてよい。また、上述の秘密情報は上述の外部機器を一意に識別可能にする任意の情報に対応して一意に決まる。送信部１０２４は、記憶部１０２２に記憶されたアクセス認可情報、あるいは署名処理部１０２３が生成した署名付きアクセス認可情報を、通信部１０３を通して認証サーバへと送信する。
【００５７】
●認証装置１３の構成
図１０は、本実施形態における認証装置１３の構成を説明する図である。認証装置１３は、たとえばＣＰＵ、ハードディスク、メモリ等のハードウェアとＣＰＵが実行するプログラム等のソフトウェアを備え、メモリに格納されたプログラムの指示に従い動作を行うサーバコンピュータに相当する。本実施形態における認証装置１３は、認証部１１０１、発行部１１０２、リソース管理部１１０３、通信部１１０４から構成される。
【００５８】
認証部１１０１は、端末装置１２を認証する。ここでは予め端末装置１２と認証装置１３との間で合意した秘密情報を用いる。秘密情報の例としては、パスワード、秘密鍵等任意の手段を用いてよい。また、上述の秘密情報は上述の外部機器を一意に識別可能にする任意の情報に対応して一意に決まる。発行部１１０２は、保護されたリソースへのアクセスに必要な認可情報、すなわちトークンを発行する。また、情報処理装置１１からのトークン要求時に外部機器情報一覧を合わせて受信した場合、端末装置１２の認証を別途必要とする仮トークンを発行する。リソース管理部１１０３は、端末装置１２からのリソースへのアクセス要求の応答として、リソースを提供する。通信部１１０４は、情報処理装置１１、端末装置１２との通信を行う。
【００５９】
●権限委譲システムの処理工程
図４は、上述した権限委譲システムが行う、接続中の外部機器（端末装置１２）の総数に応じたアクセス認可処理の切り替え、及び外部機器の認証を行う処理の一連の流れを示した図である。
【００６０】
以下、図４の処理の流れを説明する。ステップＳ１２０１は、一覧取得部９１１が、接続可能な外部機器（端末装置１２）を確認し、ステップＳ１２０２で、一覧取得部９１１が、接続可能な外部機器一覧を取得する。ステップＳ１２０３は、接続部９１２が、通信部９３を用いて外部機器（端末装置１２）との接続を行う。ステップＳ１２０４は、機器接続部１０１が、通信部１０３を用いて、情報処理装置１１との接続を行う。ステップＳ１２０５では、記憶部９１４が、接続中の外部機器情報一覧を記憶する。ここでは例として、「ｃａｍｅｒａ  Ａ」、「ｃａｍｅｒａ  Ｂ」、「ｃａｍｅｒａ  Ｃ」を記憶したものとする。ステップＳ１２０６は、取得部９１３が、接続部９１２を用いて、接続中の外部機器の総数を取得する。ここでは例として総数は「３」とする。ステップＳ１２０６、ステップＳ１２０７は、それぞれ、ステップＳ４２、ステップＳ４３と同じ処理である。
【００６１】
ステップＳ１２０９では、第二の認可処理部９２３が、通信部９３を用いて認証サーバ（認証装置１３）から仮トークンを取得する。ここでは例として、非特許文献１に記載のＡｃｃｅｓｓ  Ｔｏｋｅｎ  Ｒｅｑｕｅｓｔのｓｃｏｐｅ属性に「ｃａｍｅｒａ  Ａ」、「ｃａｍｅｒａ  Ｂ」、「ｃａｍｅｒａ  Ｃ」を含めるものとする。ステップＳ１２１０では、発行部１１０２が、ステップＳ１２０９の応答として端末装置１２の認証を別途必要とする仮トークンを発行する。ステップＳ１２１１では、送信部９２４が、ステップＳ１２１０で取得した仮トークンを、通信部９３を用いて端末装置１２へと送信する。ステップＳ１２１２では、受信部１０２１が、情報処理装置１１から送付されたアクセス認可情報を受信し、記憶部１０２２に記憶する。ステップＳ１２１３では、受信部１０２１が、受信したトークンが仮トークンか否かを判定する。仮トークンの場合はステップＳ１２１４へ、仮トークンでない場合はステップＳ１２１６へ移行する。ステップＳ１２１４では、署名処理部１０２３が、端末装置１２を識別するための認証情報を生成する。ステップＳ１２１５では、送信部１０２４が、署名処理部１０２３が生成した署名付きアクセス認可情報を、通信部１０３を通して認証装置１３へと送信する。ステップＳ１２１６では、送信部１０２４が、リソースへのアクセス要求として、記憶部１０２２に記憶されたアクセス認可情報を、通信部１０３を通して認証装置１３へと送信する。ステップＳ１２１７では、認証部１１０１が、ステップＳ１２１５あるいはステップＳ１２１６で受信したトークンが仮トークンか否かを判定する。仮トークンの場合はステップＳ１２１８へ、さもなくばステップＳ１２１９へ移行する。ステップＳ１２１８では、認証部１１０１が、署名付きアクセス認可情報を検証し、端末装置１２を認証する。認証に成功した場合はステップＳ１２１９へ、失敗した場合は処理を終了する。ステップＳ１２１９では、リソース管理部１１０３が、端末装置１２からのリソースへのアクセス要求の応答として、リソースを提供する。
【００６２】
以上の実施形態によれば、トークンを直接外部機器へ送信する場合において、外部機器の認証も行えるようにする。これは、例えば外出先等で、限られた時間内に全ての友人にトークンの送信を行う場合においても、Ａｕｔｈｏｒｉｚａｔｉｏｎ  Ｃｏｄｅ  Ｆｌｏｗと同じように、外部機器の認証も行なうことが可能となる。
【００６３】
以上の実施形態によれは、接続中の外部機器の総数に応じて、リソースへのアクセス認可処理を切り替えるよう制御する。これにより、トークンの取得が困難な状況においても、トークンを取得することを可能になる。
【００６４】
以上本発明にかかる実施形態を説明したが、先に説明したように、情報処理装置は、通常のパーソナルコンピュータ等の汎用情報処理装置であって、それ上で動作するコンピュータプログラムで実現できるものである。よって、本発明は情報処理装置が有する各手段として機能させるためのコンピュータプログラムをその範疇とすることは明らかである。また、通常、コンピュータプログラムは、ＣＤＲＯＭ等のコンピュータ読み取り可能な記憶媒体に格納されており、それをコンピュータの対応するドライブにセットしてシステムにコピーやインストール処理することで実行可能となる。よって、本発明は当然にそのようなコンピュータ可読記憶媒体をもその範疇とすることも明らかである。
【図１】
2015103029.tif 000003
【図２】
2015103029.tif 000004
【図３】
2015103029.tif 000005
【図４】
2015103029.tif 000006
【図５】
2015103029.tif 000007
【図６】
2015103029.tif 000008
【図７】
2015103029.tif 000009
【図８】
2015103029.tif 000010
【図９】
2015103029.tif 000011
【図１０】
2015103029.tif 000012