JP2022047948A - 認可サーバ、認可サーバの制御方法 - Google Patents
認可サーバ、認可サーバの制御方法 Download PDFInfo
- Publication number
- JP2022047948A JP2022047948A JP2020154010A JP2020154010A JP2022047948A JP 2022047948 A JP2022047948 A JP 2022047948A JP 2020154010 A JP2020154010 A JP 2020154010A JP 2020154010 A JP2020154010 A JP 2020154010A JP 2022047948 A JP2022047948 A JP 2022047948A
- Authority
- JP
- Japan
- Prior art keywords
- authorization
- issuing
- server
- user
- user terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
【課題】 認可コードの発行に応じて認可サーバからログアウトするための技術を提供すること。【解決手段】 アプリケーションサーバから受信した認可コードの発行要求が有効である場合は該認可コードを発行し、認可サーバにログインしているユーザの認証トークンを、認可コードの発行に応じて削除し、認可コードをアプリケーションサーバに送信する。【選択図】 図3
Description
本発明は、ユーザ端末にサービスを提供するアプリケーションサーバに対して認可コードを発行するための技術に関するものである。
従来、インターネットに接続されたPC、スマートフォン、組み込み機器などの機器が、インターネットを介して提供された複数のクラウドサービスと連携し、ユーザに機能を提供するシステムが利用されている。
通常、ユーザがクラウドサービスを利用する際、ユーザ認証が行われる。近年、クラウドサービスが増加するにつれて、複数のクラウドサービスのユーザ認証を、特定の認可サーバで行うシングルサインオン技術の利用が広がってきた。例えば、シングルサインオン技術として、OpenID財団が策定するOpenID Connectや、OASISが策定するSAMLが知られている。
クラウドサービスは、その多様性およびアクセシビリティが高いので、アイデンティティの管理およびアクセスのセキュリティが中心的な関心事になっている。クラウド環境における典型的なセキュリティの問題は、不正アクセス、アカウントのハイジャック、悪意のあるインサイダーなどである。
OpenID等により、認可サーバにおける認証結果を用いてアプリケーションサーバにログインする場合、機器のWebブラウザでは、アプリケーションサーバおよび認可サーバのログイン情報(Cookie等)が管理される。この場合、認可サーバのログイン情報が不正に利用されてしまうことがある。
特許文献1では、アプリケーションサーバにログインした際に、アプリケーションサーバから認可サーバにログアウト要求を送信することで、暗黙的に認可サーバからログアウトし、ログイン情報の不正利用を防止する方法が開示されている。
しかしながら、ユーザの認可サーバにおける認証状態はアプリケーションサーバに委ねられる。そのため、アプリケーションサーバが正しく認可サーバにログアウト要求を出していない場合、もしくは、ネットワーク遮断等の疎通問題が発生した場合、ユーザが認可サーバからログアウトされる保証がない。本発明では、認可コードの発行に応じて認可サーバからログアウトするための技術を提供する。
本発明の一様態は、認可サーバであって、ユーザ端末にサービスを提供するアプリケーションサーバから受信した認可コードの発行要求が有効である場合は、該認可コードを発行する発行手段と、前記認可サーバにログインしているユーザの認証トークンを、前記認可コードの発行に応じて削除する削除手段と、前記認可コードを前記アプリケーションサーバに対して送信する送信手段とを備えることを特徴とする。
本発明の構成によれば、認可コードの発行に応じて認可サーバからログアウトすることができる。
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
[第1の実施形態]
まず、本実施形態に係る情報処理システムの構成例について、図1のブロック図を用いて説明する。図1に示す如く、本実施形態に係る情報処理システムは、認可サーバ101、アプリケーションサーバ102、ユーザ端末103、を有しており、それぞれはネットワーク104に接続されている。ネットワーク104は、LANやインターネットなどの有線および/または無線のネットワークであり、認可サーバ101、アプリケーションサーバ102、ユーザ端末103はそれぞれネットワーク104を介して互いにデータ通信を行うことができる。なお、図1には、認可サーバ101、アプリケーションサーバ102、ユーザ端末103のそれぞれの台数を1としているが、それぞれの装置の台数は1に限らず複数であってもよい。
まず、本実施形態に係る情報処理システムの構成例について、図1のブロック図を用いて説明する。図1に示す如く、本実施形態に係る情報処理システムは、認可サーバ101、アプリケーションサーバ102、ユーザ端末103、を有しており、それぞれはネットワーク104に接続されている。ネットワーク104は、LANやインターネットなどの有線および/または無線のネットワークであり、認可サーバ101、アプリケーションサーバ102、ユーザ端末103はそれぞれネットワーク104を介して互いにデータ通信を行うことができる。なお、図1には、認可サーバ101、アプリケーションサーバ102、ユーザ端末103のそれぞれの台数を1としているが、それぞれの装置の台数は1に限らず複数であってもよい。
認可サーバ101は、アプリケーションサーバ102が提供するサービスを受けるための認可に係る各種の処理を行うサーバ装置である。アプリケーションサーバ102は、各種のサービスを提供するためのサーバ装置である。ユーザ端末103は、アプリケーションサーバ102が提供するサービスを受けるためにユーザが操作する端末装置であり、PC(パーソナルコンピュータ)、スマートフォン等のウェブブラウザを搭載した端末装置である。
次に、認可サーバ101のハードウェア構成例について、図2のブロック図を用いて説明する。なお、図2に示した構成は認可サーバ101に適用可能な構成の一例に過ぎず、適宜変更/変形が可能である。
CPU201は、RAM202やROM203に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりCPU201は、認可サーバ101全体の動作制御を行うとともに、認可サーバ101が行うものとして説明する各種の処理を実行もしくは制御する。
RAM202は、ROM203や外部記憶装置205からロードされたコンピュータプログラムやデータ、ネットワークI/F204を介して外部から受信したデータ、を格納するためのエリアを有する。またRAM202は、CPU201が各種の処理を実行する際に用いるワークエリアを有する。このように、RAM202は、各種のエリアを適宜提供することができる。
ROM203には、認可サーバ101の設定データ、認可サーバ101の起動に係るコンピュータプログラムやデータ、認可サーバ101の基本動作に係るコンピュータプログラムやデータ、などが格納されている。
表示装置206は、液晶画面やタッチパネル画面などを有し、CPU201による処理結果を画像や文字などでもって表示する。なお、表示装置206は、CPU201による処理結果を画像や文字などでもって投影するプロジェクタなどの投影装置であってもよい。
ネットワークI/F204は、認可サーバ101を上記のネットワーク104に接続するための通信インターフェースである。認可サーバ101はネットワークI/F204を介して、ネットワーク104上のアプリケーションサーバ102やユーザ端末103とのデータ通信を行う。
外部記憶装置205は、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、光ディスクドライブ、半導体記憶装置などのメモリ装置である。外部記憶装置205には、OS(オペレーティングシステム)、認可サーバ101が行うものとして説明する各種の処理をCPU201に実行もしくは制御させるためのコンピュータプログラムやデータ、などが保存されている。外部記憶装置205に保存されているコンピュータプログラムやデータは、CPU201による制御に従って適宜RAM202にロードされ、CPU201による処理対象となる。
入力装置207は、キーボード、マウス、タッチパネル画面などのユーザインターフェースであり、ユーザが操作することで各種の指示をCPU201に対して入力することができる。
CPU201、RAM202、ROM203、表示装置206、ネットワークI/F204、外部記憶装置205、入力装置207、はいずれもシステムバス208に接続されている。
なお、以下では説明を簡単にするために、アプリケーションサーバ102およびユーザ端末103も図2に示した構成を有するものとして説明するが、アプリケーションサーバ102およびユーザ端末103の構成は図2に示した構成に限らない。
本実施形態に係る情報処理システムにおける認可サーバ101、アプリケーションサーバ102、ユーザ端末103、のそれぞれの機能構成例を図3のブロック図に示す。以降の説明では、図3に示した機能部(記憶部306を除く)を処理の主体として説明するが、実際には、該機能部の機能をCPU201に実行させるためのコンピュータプログラムを該CPU201が実行することで該機能部の機能が実現される。
つまり、認可サーバ101の機能部(記憶部306を除く)の機能を該認可サーバ101のCPU201に実行させるためのコンピュータプログラムを該CPU201が実行することで、認可サーバ101の機能部の機能が実現される。また、アプリケーションサーバ102の機能部の機能を該アプリケーションサーバ102のCPU201に実行させるためのコンピュータプログラムを該CPU201が実行することで、アプリケーションサーバ102の機能部の機能が実現される。また、ユーザ端末103の機能部の機能を該ユーザ端末103のCPU201に実行させるためのコンピュータプログラムを該CPU201が実行することで、ユーザ端末103の機能部の機能が実現される。図3の各機能部によって行われる処理について、図5のフローチャートに従って説明する。
<ステップS501>
ユーザ端末103のユーザは、アプリケーションサーバ102が提供するサービスのうち受けたいサービスを、該ユーザ端末103の入力装置207を操作して指定する。Webブラウザなど、Webサイトにアクセスするための機能を提供するユーザエージェント309は、該指定を受けると、該指定されたサービスの提供を要求するサービス提供要求を、アプリケーションサーバ102に対して送信する。
ユーザ端末103のユーザは、アプリケーションサーバ102が提供するサービスのうち受けたいサービスを、該ユーザ端末103の入力装置207を操作して指定する。Webブラウザなど、Webサイトにアクセスするための機能を提供するユーザエージェント309は、該指定を受けると、該指定されたサービスの提供を要求するサービス提供要求を、アプリケーションサーバ102に対して送信する。
<ステップS502>
アプリケーションサーバ102の受付部307は、ユーザ端末103から送信されたサービス提供要求を受信する。
アプリケーションサーバ102の受付部307は、ユーザ端末103から送信されたサービス提供要求を受信する。
<ステップS503>
アプリケーションサーバ102の受付部307は、ステップS502でのサービス提供要求の受信に応じ、ユーザ端末103のユーザの認可コードの発行を要求する認可コード発行要求を、認可サーバ101に対して送信する。
アプリケーションサーバ102の受付部307は、ステップS502でのサービス提供要求の受信に応じ、ユーザ端末103のユーザの認可コードの発行を要求する認可コード発行要求を、認可サーバ101に対して送信する。
ここで、認可コード発行要求には、少なくとも、認可コード発行要求の送信元であるアプリケーションサーバ102を示す情報が含まれている。認可コード発行要求の構成例を図6に示す。
図6の認可コード発行要求では、HTTP(Hypertext Transfer Protocol)のプロトコルに従った構文によってメッセージが形成されている。URL(Uniform Resource Locator)部601では、認可コード発行要求の送信元(クライアント)と、発行する認可コードの送信先と、が指定されている。ヘッダ部602には、ユーザのログイン情報に含まれる認証トークン(該ユーザの本人確認が行われたことを表す一意に識別可能な値)が指定されている。
認可コード発行要求は、ブラウザリダイレクトによってユーザ端末103のブラウザを介して認可サーバ101に送信される。ブラウザのCookieにユーザの認証トークンが記憶されている場合は、該認証トークンは認可コード発行要求のヘッダ部602で指定される。
<ステップS504>
認可サーバ101の受付部301は、アプリケーションサーバ102もしくは認可サーバ101から送信された認可コード発行要求を受信する。
認可サーバ101の受付部301は、アプリケーションサーバ102もしくは認可サーバ101から送信された認可コード発行要求を受信する。
<ステップS505>
認可サーバ101の受付部301は、ステップS504で受信した認可コード発行要求のヘッダ部602に指定されている認証トークンを検証する。該検証の結果、該認証トークンが有効であると判断された場合、受付部301は、ユーザ端末103のユーザの本人確認が成功したと判断し、発行部302に対し、認可コードの発行を要求し、処理はステップS513に進む。一方、該検証の結果、該認証トークンが有効ではない(無効である)と判断された場合、もしくはヘッダ部602にユーザ端末103のユーザの認証トークンが指定されていない場合、受付部301は、ユーザ端末103のユーザの本人確認は成功していない判断し、認証部303に対し、ユーザ端末103のユーザの認証を要求し、処理はステップS506に進む。
認可サーバ101の受付部301は、ステップS504で受信した認可コード発行要求のヘッダ部602に指定されている認証トークンを検証する。該検証の結果、該認証トークンが有効であると判断された場合、受付部301は、ユーザ端末103のユーザの本人確認が成功したと判断し、発行部302に対し、認可コードの発行を要求し、処理はステップS513に進む。一方、該検証の結果、該認証トークンが有効ではない(無効である)と判断された場合、もしくはヘッダ部602にユーザ端末103のユーザの認証トークンが指定されていない場合、受付部301は、ユーザ端末103のユーザの本人確認は成功していない判断し、認証部303に対し、ユーザ端末103のユーザの認証を要求し、処理はステップS506に進む。
<ステップS506>
認可サーバ101の認証部303は、受付部301からユーザの認証の要求を受けると、該要求に応じて、ユーザ端末103に対してログイン画面を送信する。
認可サーバ101の認証部303は、受付部301からユーザの認証の要求を受けると、該要求に応じて、ユーザ端末103に対してログイン画面を送信する。
<ステップS507>
ユーザ端末103のユーザエージェント309は、認可サーバ101(認証部303)から送信されたログイン画面を受信する。
ユーザ端末103のユーザエージェント309は、認可サーバ101(認証部303)から送信されたログイン画面を受信する。
<ステップS508>
ユーザ端末103のユーザエージェント309は、ステップS507で受信したログイン画面を、ユーザ端末103の表示装置206に表示させる。ログイン画面の表示例を図7に示す。図7のログイン画面701は、ユーザ端末103のユーザに固有の識別情報であるユーザIDを入力するための領域702、該ユーザに対して発行されているパスワードを入力するための領域703、ログインを指示するためのログインボタン704、を有する。
ユーザ端末103のユーザエージェント309は、ステップS507で受信したログイン画面を、ユーザ端末103の表示装置206に表示させる。ログイン画面の表示例を図7に示す。図7のログイン画面701は、ユーザ端末103のユーザに固有の識別情報であるユーザIDを入力するための領域702、該ユーザに対して発行されているパスワードを入力するための領域703、ログインを指示するためのログインボタン704、を有する。
<ステップS509>
ユーザ端末103のユーザエージェント309は、ユーザがユーザ端末103の入力装置207を用いてログイン画面に対して入力したユーザIDおよびパスワードを認可サーバ101に対して送信する。図7のログイン画面701の場合、ユーザがユーザ端末103の入力装置207を用いて領域702および領域703のそれぞれにユーザIDおよびパスワードを入力してからログインボタン704を指示すると、ユーザエージェント309は、領域702に入力されたユーザIDおよび領域703に入力されたパスワードを認可サーバ101に対して送信する。
ユーザ端末103のユーザエージェント309は、ユーザがユーザ端末103の入力装置207を用いてログイン画面に対して入力したユーザIDおよびパスワードを認可サーバ101に対して送信する。図7のログイン画面701の場合、ユーザがユーザ端末103の入力装置207を用いて領域702および領域703のそれぞれにユーザIDおよびパスワードを入力してからログインボタン704を指示すると、ユーザエージェント309は、領域702に入力されたユーザIDおよび領域703に入力されたパスワードを認可サーバ101に対して送信する。
なお、ここでは、ユーザの認証情報として該ユーザのユーザIDおよびパスワードを用いているが、ユーザのユーザIDおよびパスワードに加えてもしくは代えてほかの情報をユーザの認証情報としてもよい。
<ステップS510>
認可サーバ101の認証部303は、ユーザ端末103から送信されたユーザの認証情報を受信する。
認可サーバ101の認証部303は、ユーザ端末103から送信されたユーザの認証情報を受信する。
<ステップS511>
認可サーバ101の認証部303は、ステップS510で受信したユーザの認証情報に基づいて該ユーザの認証を行う。
認可サーバ101の認証部303は、ステップS510で受信したユーザの認証情報に基づいて該ユーザの認証を行う。
<ステップS512>
ステップS511における認証が成功した場合(該認証情報が有効である場合)、認証部303は、ユーザ端末103のユーザの本人確認が成功したと判断し、発行部304に対して認証トークンの発行を要求する。発行部304は、該要求に応じ、ユーザ端末103のユーザに対する認証トークンを発行する。
ステップS511における認証が成功した場合(該認証情報が有効である場合)、認証部303は、ユーザ端末103のユーザの本人確認が成功したと判断し、発行部304に対して認証トークンの発行を要求する。発行部304は、該要求に応じ、ユーザ端末103のユーザに対する認証トークンを発行する。
そして発行部304は、認証情報に含まれているユーザIDと、発行した認証トークンと、のセットをログイン情報として記憶部306に登録する。これにより、ユーザ端末103のユーザが認可サーバ101にログインしている状態となる。
記憶部306に登録されているログイン情報の構成例を図4に示す。列401には各ユーザのユーザIDが登録されており、列402には各ユーザの認証トークンが登録されている。例えば、ユーザAのユーザIDに対応する認証トークンが記憶部306に登録されていることは、ユーザAの本人確認が行われ、ユーザAが認可サーバ101においてログイン状態であることを表している。
また発行部304は、発行した認証トークンをユーザ端末103に対して送信する。
<ステップS530>
ユーザ端末103のユーザエージェント309は、認可サーバ101から送信された認証トークンを受信する。
ユーザ端末103のユーザエージェント309は、認可サーバ101から送信された認証トークンを受信する。
<ステップS531>
ユーザ端末103のユーザエージェント309は、ステップS530で受信した認証トークンをブラウザのCookieに記憶させるとともに、該受信した認証トークンをヘッダ部602にて指定した認可コード発行要求を認可サーバ101に対して送信する。
ユーザ端末103のユーザエージェント309は、ステップS530で受信した認証トークンをブラウザのCookieに記憶させるとともに、該受信した認証トークンをヘッダ部602にて指定した認可コード発行要求を認可サーバ101に対して送信する。
<ステップS513>
認可サーバ101の発行部302は、受付部301からの要求に応じて、認可コードを発行する。
認可サーバ101の発行部302は、受付部301からの要求に応じて、認可コードを発行する。
<ステップS514>
無効化部305は、認可コードの発行に応じて、該認可コードを発行したユーザのログイン情報を記憶部306から削除するとともに、ユーザ端末103のブラウザのCookieから該ユーザのログイン情報を削除するよう該ユーザ端末103に指示する。ユーザ端末103は該指示を受けると、該ユーザ端末103のブラウザのCookieから該ユーザのログイン情報を削除する。これにより、認証トークンを無効化し、ユーザを認可サーバ101からログアウトさせる。なお、削除はログイン情報に含まれている認証トークンのみであってもよい。
無効化部305は、認可コードの発行に応じて、該認可コードを発行したユーザのログイン情報を記憶部306から削除するとともに、ユーザ端末103のブラウザのCookieから該ユーザのログイン情報を削除するよう該ユーザ端末103に指示する。ユーザ端末103は該指示を受けると、該ユーザ端末103のブラウザのCookieから該ユーザのログイン情報を削除する。これにより、認証トークンを無効化し、ユーザを認可サーバ101からログアウトさせる。なお、削除はログイン情報に含まれている認証トークンのみであってもよい。
<ステップS515>
認可サーバ101の発行部302は、ステップS513で発行した認可コードをアプリケーションサーバ102に対して送信する。
認可サーバ101の発行部302は、ステップS513で発行した認可コードをアプリケーションサーバ102に対して送信する。
<ステップS516>
アプリケーションサーバ102の受付部307は、認可サーバ101から送信された認可コードを受信する。そして受付部307は、該受信に応じてサービス提供部308に対し、ユーザ端末103へのサービスの提供を要求する。
アプリケーションサーバ102の受付部307は、認可サーバ101から送信された認可コードを受信する。そして受付部307は、該受信に応じてサービス提供部308に対し、ユーザ端末103へのサービスの提供を要求する。
<ステップS517>
アプリケーションサーバ102のサービス提供部308は、受付部307からの要求に応じ、認可サーバ101から受信した認可コードによって認可サーバ101からIDトークンを取得し、該取得したIDトークンを検証する。そしてサービス提供部308は、該検証の結果、該受信したIDトークンが有効であれば、ユーザ端末103から要求されたサービスを該ユーザ端末103に対して提供する。サービスの提供とは、例えば、ユーザ端末103から要求されたWebページの送信である。
アプリケーションサーバ102のサービス提供部308は、受付部307からの要求に応じ、認可サーバ101から受信した認可コードによって認可サーバ101からIDトークンを取得し、該取得したIDトークンを検証する。そしてサービス提供部308は、該検証の結果、該受信したIDトークンが有効であれば、ユーザ端末103から要求されたサービスを該ユーザ端末103に対して提供する。サービスの提供とは、例えば、ユーザ端末103から要求されたWebページの送信である。
<ステップS518>
ユーザ端末103のユーザエージェント309は、アプリケーションサーバ102から提供されたサービスを取得する。サービスの取得とは、例えば、ユーザ端末103がアプリケーションサーバ102に対して要求したWebページの受信である。
ユーザ端末103のユーザエージェント309は、アプリケーションサーバ102から提供されたサービスを取得する。サービスの取得とは、例えば、ユーザ端末103がアプリケーションサーバ102に対して要求したWebページの受信である。
[第2の実施形態]
本実施形態では、第1の実施形態との差分について説明し、以下で特に触れない限りは、第1の実施形態と同様であるものとして説明する。第1の実施形態では、認可サーバ101で行う認可コードの発行において、認可コードの発行に応じて認証トークンを無効化し、認可サーバ101がユーザをログアウトさせる例を示した。本実施形態では、認可コードの発行要求元(クライアント)に応じて認証トークンの無効化の要否を判定する例を示す。本実施形態によれば、認可サーバ101による認証トークンの無効化の要否をクライアントごとに切り替えることができ、特定のクライアントに対して認可サーバ101へのログイン状態を維持することができる。
本実施形態では、第1の実施形態との差分について説明し、以下で特に触れない限りは、第1の実施形態と同様であるものとして説明する。第1の実施形態では、認可サーバ101で行う認可コードの発行において、認可コードの発行に応じて認証トークンを無効化し、認可サーバ101がユーザをログアウトさせる例を示した。本実施形態では、認可コードの発行要求元(クライアント)に応じて認証トークンの無効化の要否を判定する例を示す。本実施形態によれば、認可サーバ101による認証トークンの無効化の要否をクライアントごとに切り替えることができ、特定のクライアントに対して認可サーバ101へのログイン状態を維持することができる。
本実施形態に係る情報処理システムにおける認可サーバ101、アプリケーションサーバ102、ユーザ端末103、のそれぞれの機能構成例を図8のブロック図に示す。図8において図3に示した機能部と同じ機能部には同じ参照番号を付しており、該機能部に係る説明は省略する。図8に示す如く、本実施形態に係る認可サーバ101は、図3の認可サーバ101に、情報管理部801、無効化判定部802、記憶部803を加えたものである。
以降の説明では、図8に示した機能部(記憶部306および記憶部803を除く)を処理の主体として説明するが、実際には、第1の実施形態と同様、該機能部の機能をCPU201に実行させるためのコンピュータプログラムを該CPU201が実行することで該機能部の機能が実現される。
図8の各機能部によって行われる処理について、図10のフローチャートに従って説明する。図10において図5に示した処理ステップと同じ処理ステップには同じステップ番号を付しており、該処理ステップに係る説明は省略する。図10のフローチャートは、図5のフローチャートにおいてステップS513の直後にステップS1001を加えたものである。
<ステップS1001>
情報管理部801は、ステップS513で認可コードが発行されたことに応じて、ステップS504で受信した認可コード発行要求に含まれているクライアントIDに対応する無効化フラグを記憶部803から取得する。記憶部803には、クライアントIDごとに無効化フラグが格納されている。記憶部803に格納されている情報の構成例を図9に示す。
情報管理部801は、ステップS513で認可コードが発行されたことに応じて、ステップS504で受信した認可コード発行要求に含まれているクライアントIDに対応する無効化フラグを記憶部803から取得する。記憶部803には、クライアントIDごとに無効化フラグが格納されている。記憶部803に格納されている情報の構成例を図9に示す。
列901には、アプリケーションサーバ102を認可サーバ101のクライアントとして一意に識別するための識別情報であるクライアントIDが登録されている。列902には、発行部302で発行された認可コードを受け取るアプリケーションサーバ102のURLであるリダイレクトURLが登録されている。列903には、認証トークンの無効化の要否を示すフラグである無効化フラグが登録されている。
そして無効化判定部802は、記憶部803から取得した無効化フラグが「認証トークンの無効化が必要」を示すか、「認証トークンの無効化が不要」を示すか、を判断する。
この判断の結果、記憶部803から取得した無効化フラグが「認証トークンの無効化が必要」を示す場合には、処理はステップS514に進む。一方、記憶部803から取得した無効化フラグが「認証トークンの無効化が不要」を示す場合には、処理はステップS515に進む。
なお、上記の各実施形態で使用した数値、処理タイミング、処理順、データ(情報)の構成/送信先/送信元、画面の構成やその操作方法などは、具体的な説明を行うために一例として挙げたものであり、このような一例に限定することを意図したものではない。
また、以上説明した各実施形態の一部若しくは全部を適宜組み合わせて使用しても構わない。また、以上説明した各実施形態の一部若しくは全部を選択的に使用しても構わない。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
101:認可サーバ 102:アプリケーションサーバ 103:ユーザ端末 301:受付部 302:発行部 303:認証部 304:発行部 305:無効化部 306:記憶部 307:受付部 308:サービス提供部 309:ユーザエージェント
Claims (8)
- 認可サーバであって、
ユーザ端末にサービスを提供するアプリケーションサーバから受信した認可コードの発行要求が有効である場合は、該認可コードを発行する発行手段と、
前記認可サーバにログインしているユーザの認証トークンを、前記認可コードの発行に応じて削除する削除手段と、
前記認可コードを前記アプリケーションサーバに対して送信する送信手段と
を備えることを特徴とする認可サーバ。 - 前記削除手段は、前記アプリケーションサーバの識別情報とセットで管理されている、前記認証トークンの削除の要否を示すフラグが、前記認証トークンの削除が必要であることを示す場合には、前記認証トークンを前記認可コードの発行に応じて削除し、前記フラグが前記認証トークンの削除が不要であることを示す場合には、前記認証トークンを削除しないことを特徴とする請求項1に記載の認可サーバ。
- さらに、
前記発行要求が無効である場合は、前記ユーザ端末にて入力された前記ユーザの認証情報に基づいて該ユーザを認証し、該認証が成功した場合には認証トークンを発行する第2発行手段と、
前記第2発行手段が発行した認証トークンを登録する登録手段と
を備え、
前記削除手段は、前記登録手段が登録した前記ユーザのログイン情報を、前記認可コードの発行に応じて削除する
ことを特徴とする請求項1または2に記載の認可サーバ。 - さらに、
前記第2発行手段が発行した前記ユーザの認証トークンを前記ユーザ端末に対して送信する手段を備え、
前記削除手段は、前記ユーザ端末におけるブラウザのCookieに記憶された前記ユーザの認証トークンを削除させる
ことを特徴とする請求項3に記載の認可サーバ。 - 認可サーバと、ユーザ端末と、該ユーザ端末にサービスを提供するアプリケーションサーバと、を有する情報処理システムであって、
前記認可サーバは、
前記アプリケーションサーバから受信した認可コードの発行要求が有効である場合は、該認可コードを発行する発行手段と、
前記認可サーバにログインしているユーザの認証トークンを、前記認可コードの発行に応じて削除する削除手段と、
前記認可コードを前記アプリケーションサーバに対して送信する送信手段と
を備え、
前記アプリケーションサーバは、
前記ユーザ端末からサービスの提供要求を受信したことに応じて、前記認可サーバに対して前記発行要求を送信する手段と、
前記認可サーバから送信された前記認可コードを受信すると、前記ユーザ端末に対してサービスを提供する手段と
を備える
ことを特徴とする情報処理システム。 - 前記認可サーバは、
前記発行要求が無効である場合は、前記ユーザ端末にて入力された前記ユーザの認証情報に基づいて該ユーザを認証し、該認証が成功した場合には認証トークンを発行する第2発行手段と、
前記第2発行手段が発行した認証トークンを登録する登録手段と、
前記第2発行手段が発行した認証トークンを前記ユーザ端末に対して送信する手段と
を備え、
前記削除手段は、前記登録手段が登録した前記ユーザのログイン情報を、前記認可コードの発行に応じて削除し、
前記ユーザ端末は、
前記認可サーバから送信された前記認証トークンを指定する、認可コードの発行要求を前記認可サーバに対して送信する手段
を備え、
前記発行手段は、前記ユーザ端末から受信した認可コードの発行要求が有効である場合は、認可コードを発行する
ことを特徴とする請求項5に記載の情報処理システム。 - 認可サーバの制御方法であって、
前記認可サーバの発行手段が、ユーザ端末にサービスを提供するアプリケーションサーバから受信した認可コードの発行要求が有効である場合は、該認可コードを発行する発行工程と、
前記認可サーバの削除手段が、前記認可サーバにログインしているユーザの認証トークンを、前記認可コードの発行に応じて削除する削除工程と、
前記認可サーバの送信手段が、前記認可コードを前記アプリケーションサーバに対して送信する送信工程と
を備えることを特徴とする認可サーバの制御方法。 - コンピュータを、請求項1ないし4のいずれか1項に記載の認可サーバの各手段として機能させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020154010A JP2022047948A (ja) | 2020-09-14 | 2020-09-14 | 認可サーバ、認可サーバの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020154010A JP2022047948A (ja) | 2020-09-14 | 2020-09-14 | 認可サーバ、認可サーバの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022047948A true JP2022047948A (ja) | 2022-03-25 |
Family
ID=80781163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020154010A Pending JP2022047948A (ja) | 2020-09-14 | 2020-09-14 | 認可サーバ、認可サーバの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022047948A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114844686A (zh) * | 2022-04-14 | 2022-08-02 | 重庆长安汽车股份有限公司 | 一种基于局域网服务总线的授权系统和授权方法 |
-
2020
- 2020-09-14 JP JP2020154010A patent/JP2022047948A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114844686A (zh) * | 2022-04-14 | 2022-08-02 | 重庆长安汽车股份有限公司 | 一种基于局域网服务总线的授权系统和授权方法 |
CN114844686B (zh) * | 2022-04-14 | 2023-05-26 | 重庆长安汽车股份有限公司 | 一种基于局域网服务总线的授权系统和授权方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110138718B (zh) | 信息处理系统及其控制方法 | |
JP6904857B2 (ja) | 権限委譲システム、制御方法、およびプログラム | |
JP6929181B2 (ja) | デバイスと、その制御方法とプログラム | |
JP6727799B2 (ja) | 権限委譲システム、情報処理装置、認可サーバ、制御方法およびプログラム | |
KR102313859B1 (ko) | 권한 위양 시스템, 그 제어 방법 및 클라이언트 | |
US9071601B2 (en) | Authority delegate system, server system in authority delegate system, and control method for controlling authority delegate system | |
US9390247B2 (en) | Information processing system, information processing apparatus and information processing method | |
US9571494B2 (en) | Authorization server and client apparatus, server cooperative system, and token management method | |
JP7096736B2 (ja) | システム、及びデータ処理方法 | |
JP2015001974A (ja) | 認証システム、その制御方法、サービス提供装置およびコンピュータプログラム | |
JP6248641B2 (ja) | 情報処理システム及び認証方法 | |
WO2017141618A1 (ja) | 情報処理システム、情報処理装置、サーバ装置、情報処理システムの制御方法、及びプログラム | |
JP6815744B2 (ja) | サーバ装置、システム、情報処理方法及びプログラム | |
JP2007310512A (ja) | 通信システム、サービス提供サーバおよびユーザ認証サーバ | |
JP2008197973A (ja) | ユーザ認証システム | |
JP2013140480A (ja) | サーバシステム、サービス提供サーバおよび制御方法 | |
CN115118444A (zh) | 信息处理装置以及存储介质 | |
JP6719875B2 (ja) | 認証サーバ、認証方法およびプログラム | |
JP2022047948A (ja) | 認可サーバ、認可サーバの制御方法 | |
JP2008226015A (ja) | セッション権限管理方法 | |
JP7163602B2 (ja) | 中継装置及びプログラム | |
US10785213B2 (en) | Continuous authentication | |
JP2016085638A (ja) | サーバー装置、端末装置、システム、情報処理方法及びプログラム | |
JP7043480B2 (ja) | 情報処理システムと、その制御方法とプログラム | |
JP4837060B2 (ja) | 認証装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20210103 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210113 |