JP2014194615A - 認証方法、認証システム、および、サービス提供サーバ - Google Patents

認証方法、認証システム、および、サービス提供サーバ Download PDF

Info

Publication number
JP2014194615A
JP2014194615A JP2013070301A JP2013070301A JP2014194615A JP 2014194615 A JP2014194615 A JP 2014194615A JP 2013070301 A JP2013070301 A JP 2013070301A JP 2013070301 A JP2013070301 A JP 2013070301A JP 2014194615 A JP2014194615 A JP 2014194615A
Authority
JP
Japan
Prior art keywords
authentication
client terminal
server
service providing
providing server
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.)
Granted
Application number
JP2013070301A
Other languages
English (en)
Other versions
JP5662507B2 (ja
Inventor
Toru Yamaguchi
徹 山口
Yasutaro Ito
康太郎 伊藤
Sota Mizushima
壮太 水島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DeNA Co Ltd
Original Assignee
DeNA Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by DeNA Co Ltd filed Critical DeNA Co Ltd
Priority to JP2013070301A priority Critical patent/JP5662507B2/ja
Priority to US14/031,707 priority patent/US9548975B2/en
Publication of JP2014194615A publication Critical patent/JP2014194615A/ja
Application granted granted Critical
Publication of JP5662507B2 publication Critical patent/JP5662507B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】従来の認証では、認証サーバとアプリケーションサーバとが別々の事業者により運営されることを前提として、SSO処理のためのシーケンスが構成されていたため、が同一の事業者により両サーバが運営されているような場合においては、従来のSSO処理は必ずしも効率的な処理ではなかった。
【解決手段】クライアント端末は、ユーザからの指示によりアプリケーションが起動されるたびに、ブラウザを介してサービス提供サーバ10に認証要求に関する信号を送信する。認証サーバ20は、クライアント端末からの認証要求を受けたことを契機として、サービス提供サーバと連携して、サービス提供サーバ10に記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、当該認証サーバ20に記憶されたユーザに関するユーザ情報とに基づいて認証処理を実行する。
【選択図】図1

Description

本発明は、情報処理端末を用いたメッセージの送受信を行う技術に関する。
近年、インターネット技術の発展に伴い、ユーザがゲームプログラム等のアプリケーションをクライアント端末にダウンロードして、クライアント端末にて処理する方法が広まってきている。たとえば、スマートフォン端末において、ゲームをサーバからダウンロードしてプレイすることも可能となっている。通常、ユーザは、端末を通してゲームを提供するサービス運営者に対して会員登録を行って、IDとパスワードを取得する。その後、ユーザがIDとパスワードを端末に入力すると、認証サーバにより所定の認証処理が行われることでログインが可能となり、ゲームを楽しむことができる。
このようなログイン処理は、異なるアプリケーションシステムを利用する毎に行われるため、その都度、IDとパスワードなどの個人情報の入力を促すこととなり、利用者にとって煩雑となっていた。そのため、一度のログイン処理で複数のシステムに対するアクセスを実現する「シングルサインオン(SSO:SingleSignOn)」の技術が開発されている。SSOでは、認証サーバが認証済みであることを保証する認証チケットを発行し、クライアント端末のブラウザがアプリケーションサーバとデータ通信を実施する際、その認証チケットをアプリケーションサーバに送信し、アプリケーションサーバが認証チケットを参照して、ログイン済みであることを確認している(たとえば、特許文献1、2参照)。
特開2006−236281号公報 特開2008−059038号公報
従来の認証では、認証サーバとアプリケーションサーバ(以下、サービス提供サーバともいう。)とが別々の事業者により運営されることを前提として、SSO処理のためのシーケンスが構成されていた。ここで、認証サーバとサービス提供サーバとが同一の事業者により運営されているような場合においては、従来のSSO処理は必ずしも効率的でセキュアな処理ではなかった。
本発明はかかる課題に鑑みてなされたものであり、その目的は、認証サーバとサービス提供サーバとを連携させることで、より効率的にセキュアなSSO処理を実行可能とするサーバ装置、方法、および、システムを提供することにある。
本発明のある態様は、認証方法に関する。この認証方法は、1以上のアプリケーションを記憶するクライアント端末と、該クライアント端末とネットワークを介して接続し、該クライアント端末にサービスを提供するサービス提供サーバと、前記クライアント端末およびサービス提供サーバと接続し、認証処理を実行する認証サーバとを含むシステムにおける認証方法における方法である。
この方法において、クライアント端末は、ユーザからの指示によりアプリケーションが起動されるたびに、ブラウザを介してサービス提供サーバに認証要求に関する信号を送信し、サービス提供サーバは、クライアント端末から認証要求を受信したら、そのクライアント端末に関するセッション情報を発行し、認証要求に対して該セッション情報を付与して前記クライアント端末に返信し、クライアント端末は、前記セッション情報が付与された認証要求を認証サーバに送信する。
認証サーバは、クライアント端末からの認証要求を受けたことを契機として、サービス提供サーバと連携して、サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、当該認証サーバに記憶されたユーザに関するユーザ情報とに基づいて認証処理を実行する。
このような態様によると、クライアント端末からの認証要求を受けたサービス提供サーバと認証サーバとが共に連携して、それぞれのサーバにあらかじめ記憶された当該クライアント端末や、アプリケーションに関する情報に基づいて認証処理を実行することによって、より効率的にセキュアなSSO処理が実現できる。
また、この認証方法において、認証サーバは、当該認証サーバと、認証要求にかかるクライアント端末における少なくとも1つのアプリケーションとの間にセッションが確立されている場合、前記クライアント端末のIDトークンを発行してもよい。
サービス提供サーバは、認証サーバによって発行されたIDトークンを検証することによって、認証サーバによって前記クライアント端末が認証済であることを判定した後に、IDトークンにかかるクライアント端末によって新たに起動されたアプリケーションとの間においてセッションを確立してもよい。
このような態様によると、認証サーバによって前記クライアント端末が認証済であることを判定した後に、IDトークンにかかるクライアント端末によって新たに起動されたアプリケーションとの間においてセッションを確立することによって、一方のサーバの認証をもって他方のサーバの認証処理を簡易にできるので、より効率的にセキュアな認証処理を実施できる。
また、この認証方法において、サービス提供サーバは、当該サービス提供サーバと、認証要求にかかるクライアント端末における少なくとも1つのアプリケーションとの間にセッションが確立されている場合、前記クライアント端末のIDトークンを発行してもよい。
認証サーバは、前記サービス提供サーバによって発行されたIDトークンを検証することによって、前記サービス提供サーバによって前記クライアント端末が認証済であることを判定した後に、前記IDトークンにかかるクライアント端末によって新たに起動されたアプリケーションとの間においてセッションを確立してもよい。
このような態様によると、認証サーバによって前記クライアント端末が認証済であることを判定した後に、IDトークンにかかるクライアント端末によって新たに起動されたアプリケーションとの間においてセッションを確立することによって、一方のサーバの認証をもって他方のサーバの認証処理を簡易にできるので、より効率的にセキュアな認証処理を実施できる。
また、この認証方法において、クライアント端末は、バックグラウンドで動作する第1ブラウザと、ユーザからのユーザ情報の入力を受け付け可能な第2ブラウザを制御してもよい。第1ブラウザと第2ブラウザはアプリケーションの機能として互いにセッション情報を共有しながら動作可能であってもよい。
クライアント端末は、第1ブラウザにより、サービス提供サーバとの間で認証処理を実施し、認証要求元のクライアント端末において起動されているアプリケーションとサービス提供サーバとの間にセッションが確立されていない場合であって、かつ、ユーザに対してユーザ情報を入力させる場合には、ユーザ情報を受け付けるために第2ブラウザを起動して、第2ブラウザとサービス提供サーバとの間での認証処理に切り替えてもよい。
このような態様によると、第1ブラウザにより、サービス提供サーバとの間で認証処理を実施し、認証要求元のクライアント端末において起動されているアプリケーションとサービス提供サーバとの間にセッションが確立されていない場合であって、かつ、ユーザに対してユーザ情報を入力させる場合には、ユーザ情報を受け付けるために第2ブラウザを起動して、第2ブラウザとサービス提供サーバとの間での認証処理に切り替えることによって、ユーザに認証処理が実施されていることを意識させることなく、セキュアなSSO処理をよりスムーズに実行することができる。
また、この認証方法において、クライアント端末は、アプリケーションの外部の機能として動作し、第1ブラウザと第2ブラウザとの間でセッション情報の共有ができない認証アシスト用アプリケーションを有してもよい。
起動されているアプリケーションと認証サーバとの間でセッションが確立されていない場合であっても、認証アシスト用アプリケーションと認証サーバとの間でセッションが確立されている場合においては、第2ブラウザの代わりに、認証アシスト用アプリケーションを起動して、認証アシスト用アプリケーションとサービス提供サーバ間での処理に切り替えてもよい。
このような態様によると、認証要求元のクライアント端末において起動されているアプリケーションと認証サーバとの間でセッションが確立されていない場合であっても、認証アシスト用アプリケーションと認証サーバとの間でセッションが確立されている場合においては、第2ブラウザの代わりに、認証アシスト用アプリケーションを起動して、認証アシスト用アプリケーションとサービス提供サーバ間での処理に切り替えることによって、よりセキュアなSSO処理を効率的に実行することができる。
本発明の別の態様は、認証システムである。この認証システムは、1以上のアプリケーションを記憶するクライアント端末と、該クライアント端末とネットワークを介して接続し、該クライアント端末にサービスを提供するサービス提供サーバと、クライアント端末およびサービス提供サーバと接続し、認証処理を実行する認証サーバとを備える。
クライアント端末は、ユーザからの指示によりアプリケーションが起動されるたびに、ブラウザを介してサービス提供サーバに認証要求に関する信号を送信する。サービス提供サーバは、クライアント端末から認証要求を受信したら、そのクライアント端末に関するセッション情報を発行し、認証要求に対して該セッション情報を付与して前記クライアント端末に返信する。クライアント端末は、セッション情報が付与された認証要求を認証サーバに送信する。認証サーバは、クライアント端末からの認証要求を受けたことを契機として、サービス提供サーバと連携して、サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、当該認証サーバに記憶された前記ユーザに関するユーザ情報とに基づいて認証処理を実行する。
本発明の別の態様は、サービス提供サーバである。このサービス提供サーバは、1以上のアプリケーションを記憶するクライアント端末と、該クライアント端末とネットワークを介して接続し、該クライアント端末にサービスを提供するサービス提供サーバと、前記クライアント端末およびサービス提供サーバと接続し、認証処理を実行する認証サーバとを備えたシステムにおけるサービス提供サーバである。
このサービス提供サーバは、クライアント端末から認証要求を受信したら、そのクライアント端末に関するセッション情報を発行し、認証要求に対して該セッション情報を付与して返信して、クライアント端末に、セッション情報が付与された認証要求を認証サーバに送信させるサーバ通信部と、クライアント端末からの認証要求を受けて、認証サーバと連携して、当該サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、認証サーバに記憶されたユーザに関するユーザ情報と報に基づいて認証処理を実行する認証制御部と、を備える。
本発明の別の態様は、認証方法である。この認証方法は、1以上のアプリケーションを記憶するクライアント端末と、該クライアント端末とネットワークを介して接続し、該クライアント端末にサービスを提供するサービス提供サーバと、前記クライアント端末およびサービス提供サーバと接続し、認証処理を実行する認証サーバとを備えたシステムにおけるサービス提供サーバにおける方法である。
この方法は、クライアント端末から認証要求を受信するステップと、そのクライアント端末に関するセッション情報を発行するステップと、認証要求に対して該セッション情報を付与して返信して、クライアント端末に、セッション情報が付与された認証要求を前記認証サーバに送信させるステップと、クライアント端末からの認証要求を受けて、認証サーバと連携して、当該サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、認証サーバに記憶された前記ユーザに関するユーザ情報と報に基づいて認証処理を実行するステップと、を含む。
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
本発明によると、サービス提供サーバと認証サーバとが互いに連携して認証処理を実施することによって、よりセキュアな認証処理を実現することができる。
本発明の実施例を説明する前に、まず、本発明の概要を述べる。本発明は、インストール型のアプリケーションに対する認証技術であって、クライアント端末の認証処理を認証サーバだけではなくて、サービス提供サーバがアシストする構成をとることによって、認証処理における安全性を高めたものである。
本発明においては、サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、当該認証サーバに記憶されたユーザに関するユーザ情報とに基づいて認証処理を実行する。これにより、一方のサーバにおける認証をもって、他方の認証を保証させることができ、効率的でセキュアな認証処理ができるものである。以下、例を用いて説明する。以下において、サービス提供サーバとは、サービスを提供するプラットフォームであってもよいし、認証サーバは、アプリケ―ションを提供するサーバであってもよい。また、これらのサーバは物理的に一体となっていてもよい。
まず、実施例1について説明する。図1は、本発明の実施例1にかかる認証システム100を示す図である。認証システム100は、サービス提供サーバ10と、認証サーバ20と、サービス提供サーバ10と認証サーバ20と基地局40とを有線回線で接続するネットワーク30と、基地局40で代表される第1基地局40a〜第3基地局40cと、モバイル端末50で代表される第1モバイル端末50a〜第3モバイル端末50cと、PC端末70とを含む。
なお、図示の都合上、基地局40、モバイル端末50は共に3台のみ図示したが、これにかぎらず、それ以上の基地局40、モバイル端末50が存在してもよい。PC端末70についても同様である。また、第1モバイル端末50a〜第3モバイル端末50cは、それぞれ異なる基地局40と接続されるとして図示しているが、これにかぎらず、1つの基地局40に複数のモバイル端末50が接続されていても、本発明が適用可能であることは言うまでもない。
サービス提供サーバ10は、チャットサービスなどのネットサービスを提供し、また、認証サーバ20と協働して、クライアント端末のログイン処理を効率化するための装置である。サービス提供サーバ10は、ネットワーク30および/または基地局40を介して、認証サーバ20、あるいは、モバイル端末50やPC端末70との間で、認証処理のための通信処理を実行する。なお、以下においては、説明を簡易にするため、単に、「サービス提供サーバ10とモバイル端末40ないしPC端末70との間で通信処理を実行する」などと表現し、ネットワーク30および基地局40を介する点については記載を省略する。また、以下においては、モバイル端末50やPC端末70を総称して、クライアント端末と表現することもある。
クライアント端末は、ユーザの指示によりアプリケーションが起動されるたびに、ブラウザを介してサービス提供サーバ10に認証要求に関する信号を送信する。サービス提供サーバ10は、クライアント端末からの認証要求を受信したら、そのクライアント端末に関するセッション情報(Cookie)を発行し、認証要求に対して該セッション情報を付与して返信する。
クライアント端末は、セッション情報が付与された認証要求を認証サーバ20に送信する。すると、認証サーバ20は、クライアント端末からの認証要求を受けて、サービス提供サーバ10と連携して、サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、当該認証サーバに記憶されたユーザに関するユーザ情報とに基づいて認証処理を実行する。
ここで、アプリケーションの認証情報とは、アプリケーションに固有のIDと、アプリケーション自体の秘密情報とを含む。このアプリケーションの認証情報はセッションが確立されたアプリケーションに対して発行され、サービス提供サーバ10により管理される。サービス提供サーバ10は、後述するように、ユーザによるアプリケーションの使用を管理し、正当な権限を有するユーザのログインを認証し、正当であれば、そのアプリケーションのセッションを確立する。
また、ユーザ情報とは、ユーザIDやユーザによって指定されたパスワードを含む。このユーザ情報は、認証サーバ20によって管理される。認証サーバ20は、後述するように、ユーザ端末を介してユーザ情報を取得し、予め記憶しているユーザ情報と照合することで、そのユーザのログインの正当性を判断し、認証する。
上述のように、ユーザは、認証サーバ10にログインするときもあれば、サービス提供サーバ20にログインするときもある。本発明においては、一方でのログインが正当であると判断されるような場合、他方のサーバにおいてもその正当性を援用し、ログインを認めるというものである。そのため、認証サーバ10とサービス提供サーバ間において直接、あるいは、ユーザ端末のブラウザを介して、それぞれにおける認証結果を確認しあうこととしている。
すなわち、認証サーバ10とサービス提供サーバ20とが同一事業者による運営であるため、上記のような認証連携が可能となっている。なお、これにかぎらず、同一でない事業者により運営されているような場合であっても、相当程度の信頼関係を有するような場合であれば、本発明を適用できることは言うまでもない。
具体的に説明する。認証サーバ20は、クライアント端末からの認証要求に対して、そのクライアント端末において起動されているアプリケーションとのセッションがすでに確立されていると判断したら、そのクライアント端末に関連づけたワンタイムチケットを発行してクライアント端末に送信する。
セッションが確立しているとは、ログインされている状態をいう。ログインされている状態とは、その時点より過去において、いずれかのアプリケーションのブラウザ、あるいは、アプリケーション外の認証アシスト用アプリケーション(以下、特定ブラウザともいう。)を介してユーザがIDとパスワード等の秘密情報を入力することで、サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、当該認証サーバに記憶されたユーザに関するユーザ情報とに基づいて、適正な情報であることが確認されて認証処理が完結している状態をいう。
クライアント端末は、認証サーバ20から取得したワンタイムチケットをサービス提供サーバ10にリダイレクト(転送)する。これを受けて、サービス提供サーバ10は、認証サーバ20に対して、クライアント端末から取得したワンタイムチケットを送信することで、クライアント端末とのセッションを確立するためのアクセストークンの発行を要求する。
ここで、アクセストークンとは、所定のアプリケーションに対するユーザの実行権限を示し、これをサーバに提示することで、所定のアプリケーションをクライアント端末で実行することができるようになる。また、ワンタイムチケットとは、どのクライアント端末によって要求され、どのサーバによって信任、認証されたかを示す情報が含まれる。また、アクセストークンは暗号化されてもよい。その場合、ブラウザ立ち上げ前において予め復号キーをクライアント端末に渡しておくことで、より強化なセキュリティを実現することができる。
認証サーバ20は、サービス提供サーバ10から受信したワンタイムチケットが自らが発行したものであることを確認した後に、ワンタイムチケットに関連するアクセストークンを発行してサービス提供サーバ10に返信する。サービス提供サーバ10は、認証サーバ20から受け取ったアクセストークンをクライアント端末に送信する。これにより、クライアント端末は、アクセストークンを取得できるので、アプリケーションを実行できる。
なお、認証サーバ20は、認証要求元のクライアント端末のIDトークンの認証確認が成功した場合、あるいは、そのクライアント端末において起動されているアプリケーションからのログイン処理を確認した場合おいて、セッションが確立していると判定してもよい。
また、認証要求元のクライアント端末において起動されているアプリケーションとサービス提供サーバ10との間にセッションが確立されている場合、当該サービス提供サーバ10は、そのクライアント端末に対して、IDトークンを含めたセッション情報を発行する。認証サーバ20は、そのクライアント端末を介して得たIDトークンを検証することによって、セッションが確立されているか否かを検証してもよい。
一方、認証要求元のクライアント端末において起動されているアプリケーションと認証サーバ20との間にセッションが確立されていない場合、当該クライアント端末は、ユーザ情報を認証サーバ20に送る。ここで、認証サーバ20は、受信したユーザ情報を検証後、アクセストークンと共に、IDトークンも発行して、サービス提供サーバ10に送信する。サービス提供サーバ10は、取得したIDトークンを検証してセッションを確立し、クライアント端末に対して、アクセストークンを送信してもよい。
図2は、図1の認証システム100におけるサービス提供サーバ10の構成例を示す図である。サービス提供サーバ10は、サーバ通信部12と、認証処理部14と、サーバメモリ16とを含む。
サーバ通信部12は、クライアント端末や認証サーバ20などからの信号を受信し、所定の復調処理を実施して、認証処理部14に復調された信号を送る。また、認証処理部14から送られた信号に対して所定の変調処理を実施して、ユーザ端末に送信する。なお、サーバ通信部12における変復調処理は、従来用いられている変復調技術が用いられてよく、このような態様であったとしても、本発明を適用することができることは当業者に理解されるところである。
認証処理部14は、サーバ通信部12を通じて、クライアント端末から認証処理に関する情報を受け取る。認証処理部14は、サーバメモリ16内において、クライアント端末ごとに、セッション情報やユーザID、あるいは、ユーザパスワードなどの秘密情報を管理する。秘密情報は、クライアント端末がサービス提供サーバ10との間で最初に登録処理をする際にクライアント端末より通知されてもよい。これにより、すでにセッションが確立されているクライアント端末から認証要求があった場合、再度のログイン処理を求めることなくIDトークンを発行し、スムーズなSSO処理を実行していく。
また、認証処理部14は、セッションが確立されていないクライアント端末から認証要求があった場合、認証サーバ20においてすでにセッションが確立されているかどうかを確認し、確立されているようであれば、認証サーバ20からIDトークンを取得することで、スムーズなSSO処理を実行していく。
認証サーバ20においてもセッションが確立されていない場合、認証処理部14は、クライアント端末に対して、ユーザIDやパスワードなどの秘密情報を求め、予め登録されている秘密情報と照合することで、ログイン処理を行い、セッションを確立する。
つぎに、クライアント端末側の構成について説明する。図3は、図1のモバイル端末50あるいはPC端末70における構成例を示す図である。ここでは、説明の都合上、モバイル端末50の構成として説明するが、PC端末70においても同様の構成となる。
モバイル端末50は、端末通信部52と、ブラウザ制御部54と、端末制御部56と、端末メモリ58と、ユーザインタフェース60とを備える。端末通信部52は、サービス提供サーバ10あるいは認証サーバ20との間で認証処理に関する情報の送受信処理を実行する。
ブラウザ制御部54は、バックグラウンドで動作する第1ブラウザと、ユーザからのユーザ情報の入力を受け付け可能な第2ブラウザと、アプリケーションの外部のブラウザ機能として動作する特定ブラウザを制御する。第1ブラウザは、隠しブラウザ(Hidden Embeded Browser)とも呼ばれる。第1ブラウザと第2ブラウザは、所定のアプリケーション内部にコンポーネントとして埋め込まれたブラウザ(Embeded Browser)であり、セッション情報が互いに共有できる。すなわち、第1ブラウザと第2ブラウザは、アプリケーションごとに存在するブラウザである。
一方、特定ブラウザは、認証をアシストすることができるブラウザである。この特定ブラウザは、アプリケーションの外部の機能として動作するため、アプリケーションに埋め込まれた第1ブラウザと第2ブラウザとの間ではセッション情報の共有ができない。特定ブラウザは、OS標準のブラウザであってもよく、アプリケーション連携で共有できるブラウザであり、任意のアプリケーションを立ち上げられるものであってもよい。この特定ブラウザを介して認証処理を実現することで、アプリケ―ション連携が容易になり、ユーザは、1回のログイン処理を実施するだけで、以後、他のアプリケーションを実施する場合においてログイン処理が不要となる。
通常は、特定ブラウザとアプリケーション内の埋め込みブラウザとの間でCookieを共有できないので、このようなアプリケーション連携は困難であった。しかしながら、認証サーバ20とクライアント端末との間にサービス提供サーバ10を介在させて、特定外部ブラウザでの認証において、開始時と終了時でユーザが同じことを保証するような認証処理を実施することで、外部ブラウザを用いたアプリケーション連携におけるSSOが実現できた。
ブラウザ制御部54は、まず第1ブラウザにより、サービス提供サーバ10との間で認証処理を実施する。第1ブラウザは、ユーザに入力を求めない処理を実施する際に用いられる。これにより、ユーザに動作を意識させることなく、高速で処理が実現できる。そして、ユーザに入力を求めるような場面になったら、ブラウザ制御部54は、第2ブラウザに動作を切り替える。これにより、効率的な処理が可能となる。
たとえば、ブラウザ制御部54は、まず第1ブラウザにより、サービス提供サーバ10との間で認証処理を実施する。ついで、起動されているアプリケーションとサービス提供サーバ10との間にセッションが確立されていない場合であって、かつ、ユーザに対してユーザ情報を入力させる必要が生じたような場合には、ユーザ情報を受け付けるために第2ブラウザを起動して、第2ブラウザとサービス提供サーバ10との間での認証処理に切り替えることとなる。
認証要求元のクライアント端末において起動されているアプリケーションと認証サーバ20との間でセッションが確立されていない場合であっても、そのクライアント端末の特定ブラウザと認証サーバ20との間でセッションが確立されている場合においては、第2ブラウザの代わりに、特定ブラウザを起動して、特定ブラウザとサービス提供サーバ10間での処理に切り替える
端末制御部56は、ユーザインタフェース60を介してユーザからの指示を受け付けて、端末メモリ58にアクセスしながら、アプリケーションの実行や認証処理を管理する。アプリケーションの実行および認証処理は、アプリケーション毎に実施される。アプリケーションは、アプリケーションの動作を制御する基幹ソフトウェアライブラリであるSDK(SoftwareDevelopmentKit)と、アプリケーション内部に埋め込まれたブラウザとを含む。このうち、端末制御部56は、SDKの制御を実施する。SDKは、サーバの指示に応じてブラウザを立ち上げたるなどの処理を制御する。
また、ユーザインタフェース60は、ユーザへのメッセージやユーザ情報画面、を表示するための画面インタフェースと、キーボードやタッチパネルなどのユーザからの入力を受け付ける入力インタフェースと、カメラなどの画像撮像手段を含む。
ユーザインタフェース60は、ユーザからのアプリケーションの実行要求を受け付けて、端末制御部56に伝える。また、ユーザインタフェース60は、必要に応じて、ログイン画面を表示して、ユーザIDやパスワード等の秘密情報、あるいは、特定ブラウザを用いたログイン処理要求に関する入力を受け付け、端末制御部56に伝える。
端末メモリ58は、サービス提供サーバ10からダウンロードしたアプリケーションや、画像撮像手段や他のユーザから受信した画像情報を記憶し、また、氏名と連絡先とが対応付けて記憶された連絡先情報などを記憶する。
ここで、認証システム100の基本フローの概略について説明する。
サービス提供サーバ10は、認証開始時にアプリケーション内埋め込み型ブラウザに対し、ユーザエージェントの同定の為のCookieを発行し、検証可能なように保存した上で、OS標準外部ブラウザ等の特定ブラウザを起動する。
特定ブラウザは、サービス提供サーバ10にアクセスした上で、リダイレクトにより認証サーバ20に遷移し、必要であればユーザ認証処理を行う。認証サーバ20によるユーザ認証が済んだ段階でサービス提供サーバ10の戻りURLに対しリダイレクトし、特定ブラウザがサービス提供サーバ10にリクエストする。
サービス提供サーバ10はユーザの端末のアプリケーションに関するクライアントID等のクライアント秘密情報を予め保持しており、認証サーバ20から受け取るワンタイムチケット(code)及びIDトークンをクライアント端末を介する事無く検証し、それらが妥当であれば、サービス提供サーバ10に対するユーザセッションを発行し、特定ブラウザとサービス提供サーバ10間でログインセッションを確立した上で、ワンタイムチケット(code)をクライアント端末に渡す。
このワンタイムチケットを受け取ったクライアント端末は改めて、アプリケーション内埋め込み型ブラウザを起動し、サービス提供サーバ10にワンタイムチケットを渡す。この際に、サービス提供サーバ10では認証開始時に発行していたCookieから事前にCookieと共に紐づけておいた情報を元に、妥当なユーザエージェントであるかどうかを検証し、妥当であればワンタイムチケットを用いて、認証サーバ20から保護リソースにアクセスする為のアクセストークン及び、ワンタイムチケットに紐づくIDトークンを受け取りこれらを検証し、妥当であれば、アプリケーション内埋め込み型ブラウザとサービス提供サーバ10間で認証セッションを確立する。
具体的に説明する。ここでは、図1の認証システム100における4つの認証処理の例について、図4〜図7に示す4つのシーケンス図を用いて説明する。
図4は、図1の認証システム100における第1の認証処理例を示すシーケンス図である。第1の認証処理例は、サービス提供サーバ10および認証サーバ20の双方において、クライアント端末との間ですでにセッションが確立している場合である。本シーケンスは、ユーザがユーザインタフェース60を介してアプリケーションを実行したことを契機として開始されてもよい。
第1の認証処理例においては、端末制御部56は、ログイン処理を実行する対象のアプリケーション内のSDKを指すものとする。また、ブラウザ処理部54は、3つのブラウザのうち、隠しブラウザを処理するものとする。
まず、端末制御部56は、ブラウザ処理部54に対して、ブラウザを起動させるためのメッセージを通知して、ブラウザを立ち上げさせる(S10)。
ブラウザ処理部54は、サービス提供サーバ10に対して、ログインを要求するためのメッセージを通知して、SDKサービスへのログインを要求する(S12)。ここで、サービス提供サーバ10は、このクライアント端末との間ですでにセッションが確立しているかどうかを検証する(S14)。
ここで、第1の認証処理例では、クライアント端末との間ですでにセッションが確立しているので、サービス提供サーバ10は、検証OKとして、ブラウザ処理部54に対して、認証要求のためのメッセージをIDトークンと共に通知して、認証サーバ20への認証要求をクライアント端末に実施させる(S16)。
ついで、ブラウザ処理部54は、認証サーバ20に対して、サービス提供サーバ10から受け取ったIDトークンと、認証要求を示すものとしてのメッセージを通知する(S18)。
認証サーバ20は、通知されたIDトークンを検証して、このクライアント端末との間ですでにセッションが確立しているかどうかについて判定する(S20)。第1の認証処理例では、クライアント端末との間ですでにセッションが確立しているので、認証サーバ20は、先の認証要求に対する応答として、ログインが許可された旨のメッセージと、ワンタイムチケットであるcodeをブラウザ処理部54に通知する(S22)。このワンタイムチケットは、時限失効型のチケットであり、所定期間内に、クライアント端末がこのチケットをサービス提供サーバ10経由で認証サーバ20に戻すことによって、アクセス権限が示されたアクセストークンを得ることができるものである。
ブラウザ処理部54は、サービス提供サーバ10に対して、認証サーバ20から送られたログインが許可された旨のメッセージをワンタイムチケットであるcodeと共に通知する(S24)。ここで、サービス提供サーバ10は、認証サーバ20に対して、当該クライアント端末のためにアクセストークンを要求するためのメッセージをcodeと共に通知する(S26)。
認証サーバ20は、通知されたcodeを確認して、自らが当該クライアント端末のために発行したものであることを検証した上で、アクセストークンを発行し、サービス提供サーバ10に送る(S28)。サービス提供サーバ10は、アクセストークンをブラウザ処理部54に送る(S30)。さらに、ブラウザ処理部54は、端末制御部56にアクセストークンを送る(S32)。以上により、クライアント端末は、アクセストークンを得て、アプリケーションを実行することが可能となる。
図5は、図1の認証システム100における第2の認証処理例を示すシーケンス図である。第2の認証処理例は、認証サーバ20においてのみ、クライアント端末との間ですでにセッションが確立していて、サービス提供サーバ10においては確立していない場合である。
第2の認証処理例においては、端末制御部56は、ユーザがログインを実行する対象のアプリケーション内のSDK(SoftwareDevelopmentKit)を指すものとする。また、ブラウザ処理部54は、3つのブラウザのうち、隠しブラウザを処理するものとする。
本シーケンスは、ユーザがユーザインタフェース60を介してアプリケーションを実行したことを契機として開始されてもよい。なお、図4のS10、S12の処理については、第1の認証処理例と同一であるため、図示および説明を省略し、S14の処理から説明するものとする。
S14において、サービス提供サーバ10は、このクライアント端末との間ですでにセッションが確立しているかどうかを検証する。ところが、第2の認証処理例において、クライアント端末は、サービス提供サーバ10との間でセッションが確立されていない。したがって、このクライアント端末のIDトークンを保持していない状態となる。ここで、サービス提供サーバ10は、ブラウザ処理部54に対して、認証確認のためのメッセージを通知して(S40)、認証サーバ20においてセッションが確立されているかを確認させる。
ついで、ブラウザ処理部54は、認証サーバ20に対して、認証要求としてのメッセージを通知する(S42)。ここで、認証サーバ20は、このクライアント端末との間ですでにセッションが確立しているかどうかについて判定する(S44)。ここでは、すでにセッションが確立されているので、認証サーバ20は、認証が確認された旨のメッセージと、ワンタイムチケットであるcodeとをブラウザ処理部54に通知する(S46)。
ブラウザ処理部54は、サービス提供サーバ10に対して、認証が確認された旨のメッセージをワンタイムチケットであるcodeと共に通知する(S48)。ここで、サービス提供サーバ10は、認証サーバ20に対して、当該クライアント端末のためにアクセストークンを要求するためのメッセージをcodeと共に通知する(S50)。
認証サーバ20は、通知されたcodeを確認して、自らが当該クライアント端末のために発行したものであることを検証した上で、アクセストークンを発行し、IDトークンと共にサービス提供サーバ10に送る(S52)。第2の認証処理例において、サービス提供サーバ10は、クライアント端末のIDトークンを有していないからである。
サービス提供サーバ10は、受け取ったIDトークンと、あらかじめ記憶しているアプリケーションに関する秘密情報とを照合して、IDトークンの妥当性を検証する(S54)。検証の結果が妥当である場合、サービス提供サーバ10は、ブラウザ処理部54に対して、アクセストークンを送る(S56)。さらに、ブラウザ処理部54は、端末制御部56にアクセストークンを送る(S58)。以上により、サービス提供サーバ10との間でのセッションも確立し、クライアント端末は、アクセストークンを用いてアプリケーションを実行することが可能となる。
図6は、図1の認証システム100における第3の認証処理例を示すシーケンス図である。第3の認証処理例は、認証サーバ20およびサービス提供サーバ10の双方において、クライアント端末との間でセッションが確立していない場合である。本ケースは、最初にアプリケーションを立ち上げるような場合が想定される。
第3の認証処理例においては、端末制御部56は、ユーザがログインを実行する対象のアプリケーション内のSDKを指すものとする。また、ブラウザ処理部54は、3つのブラウザのうち、隠し埋め込みブラウザと埋め込みブラウザの2つを処理するものとする。図6においては、隠し埋め込みブラウザを第1ブラウザとして、埋め込みブラウザを第2ブラウザとして図示する。
本シーケンスは、ユーザがユーザインタフェース60を介してアプリケーションを実行したことを契機として開始されてもよい。なお、図5のS44に至るまでの処理については、第2の認証処理例と同一であるため図示および説明を省略し、ここではS44の処理から説明するものとする。
S44において、認証サーバ20は、このクライアント端末との間ですでにセッションが確立しているかどうかについて判定する(S44)。ここでは、セッションが確立されていないので、認証サーバ20は、エラーレスポンスとともに、サービス提供サーバ10を介したログイン処理をさせるためのメッセージを第1ブラウザに通知する(S70)。
第1ブラウザは、端末制御部56に対して、ログイン処理を開始させるためのメッセージを通知し(S72)、以後、ブラウザの処理は、画面表示が可能な第2ブラウザに切り替わる。ここで、端末制御部56は、ログイン処理を要求するためのメッセージを第2ブラウザに通知する(S74)。
ここで、第2ブラウザは、ユーザインタフェース60を表示させて(S76)、ユーザからの入力を促す。ユーザからのユーザIDやパスワード等の入力をユーザインタフェース60を介して受け付けると、端末制御部56は、ユーザから入力された情報をクレデンシャルな情報として第2ブラウザに通知する(S78)。第2ブラウザは、端末制御部56から通知された情報を認証サーバ20に対して、通知する(S80)。
認証サーバ20は、あらかじめ記憶しているユーザIDやユーザパスワードを確認して、通知された情報の妥当性を検証する(S82)。妥当であって場合、認証サーバ20は、第2ブラウザに対して、ワンタイムチケットであるcodeと共に、認証が確認された旨のメッセージを通知する(S84)。
第2ブラウザは、サービス提供サーバ10に対して、認証が確認された旨のメッセージをワンタイムチケットであるcodeと共に通知する(S86)。ここで、サービス提供サーバ10は、認証サーバ20に対して、当該クライアント端末のためにアクセストークンを要求するためのメッセージをcodeと共に通知する(S50)。
ここで、認証サーバ20は、サービス提供サーバ10に対して、当該クライアント端末のためにアクセストークンを要求するためのメッセージをcodeと、IDトークンとを通知する(S52)。
サービス提供サーバ10は、受け取ったIDトークンと、あらかじめ記憶しているアプリケーションについての秘密情報とを照合して、IDトークンの妥当性を検証する(S54)。検証の結果が妥当である場合、サービス提供サーバ10は、第2ブラウザに対して、アクセストークンを送る(S88)。さらに、第2ブラウザは、端末制御部56にアクセストークンを送る(S90)。以上により、サービス提供サーバ10と認証サーバ20の双方でのセッションが確立し、クライアント端末は、アクセストークンを用いてアプリケーションを実行することが可能となる。
図7は、図1の認証システム100における第4の認証処理例を示すシーケンス図である。第4の認証処理例は、アプリケーションにおいて、認証サーバ20およびサービス提供サーバ10の双方において、クライアント端末との間でセッションが確立していない場合である。また、アプリケーションの外部のブラウザとして機能する外部ブラウザにおいては、セッションが確立しているものとする。本ケースは、外部ブラウザを用いてログイン処理が完了した後に、アプリケーションを立ち上げるような場合が想定される。
第4の認証処理例においては、端末制御部56は、ユーザがログインを実行する対象のアプリケーション内のSDKを指すものとする。また、ブラウザ処理部54は、3つのブラウザのうち、隠し埋め込みブラウザと埋め込みブラウザ、および、外部ブラウザの3つを処理するものとする。図6においては、隠し埋め込みブラウザを第1ブラウザとして、埋め込みブラウザを第2ブラウザとして、外部ブラウザを特定ブラウザとして図示する。なお、特定ブラウザは、アプリケーションの外部において動作するブラウザである。
本シーケンスは、ユーザがユーザインタフェース60を介してアプリケーションを実行したことを契機として開始されてもよい。なお、図5のS76に至るまでの処理については、第3の認証処理例と同一であるため図示および説明を省略し、ここではS76の処理から説明するものとする。
ここで、第2ブラウザは、ユーザインタフェース60を表示させて(S76)、ユーザからの入力を促す。ユーザから特定ブラウザを用いたログイン要求をユーザインタフェース60を介して受け付けると、端末制御部56は、その情報を特定ブラウザに通知する(S110)。特定ブラウザは、サービス提供サーバ10に対して、外部ブラウザを用いてのSSO処理を要求するためのメッセージを通知する(S112)。
サービス提供サーバ10は、特定ブラウザに対して、認証要求に関するメッセージを通知する(S114)。ついで、特定ブラウザは、認証サーバ20に対して認証要求に関するメッセージを通知する(S116)。
ここで、認証サーバ20は、外部ブラウザとのセッション情報を検証して(S118)、ワンタイムチケットであるcodeとIDトークンとを付した認証が確認された旨のメッセージを通知する(S120)。
特定ブラウザは、サービス提供サーバ10に対して、IDトークンと共に認証が確認された旨のメッセージを通知する(S122)。サービス提供サーバ10は、このIDトークンを検証して(S124)、認証が確認された旨のメッセージを特定ブラウザに通知する(S126)。
さらに、特定ブラウザは、端末制御部56に対して、認証サーバ20から取得したcodeと共に、アプリケーションでのセッション処理を完了させるためのメッセージを通知する(S128)。これを受けて、端末制御部56は、codeと共に第1ブラウザに通知する(S130)。ここでは、ユーザから入力を受け付ける必要がないため、処理の高速化やユーザの利便性を考慮して、第2ブラウザではなく、第1ブラウザに通知することとしている。
第1ブラウザは、サービス提供サーバ10に対して、codeが付されたメッセージを通知する(S132)。ここで、サービス提供サーバ10は、認証サーバ20に対して、当該クライアント端末のためにアクセストークンを要求するためのメッセージをcodeと共に通知する(S50)。
ここで、認証サーバ20は、サービス提供サーバ10に対して、当該クライアント端末のためにアクセストークンを要求するためのメッセージと、codeと、IDトークンとを通知する(S52)。
サービス提供サーバ10は、受け取ったIDトークンと、あらかじめ記憶しているクライアント端末についての秘密情報とを照合して、IDトークンの妥当性を検証する(S54)。検証の結果が妥当である場合、サービス提供サーバ10は、第1ブラウザに対して、アクセストークンを送る(S56)。さらに、第1ブラウザは、端末制御部56にアクセストークンを送る(S58)。以上により、サービス提供サーバ10と認証サーバ20の双方とのセッションも確立し、クライアント端末は、アクセストークンを用いてアプリケーションを実行することが可能となる。
いずれかにセッションが確立しているような場合には、いずれかが有しているセッション情報を互いに補完しあうことによって、効率的に、セッションを確立させることができる。
以上のような態様によると、クライアント端末からの認証要求を受けたサービス提供サーバ10と認証サーバ20とが共に連携して、それぞれのサーバにあらかじめ記憶された当該クライアント端末に関する認証情報に基づいて認証処理を実行することによって、サービス提供サーバ10と認証サーバ20とで認証処理を完結できるので、よりセキュアな認証処理が実現できる。
また、クライアント端末に関連づけて発行したワンタイムチケットを用いて認証処理を実施することによって、セキュアに認証処理を実施できる。また、ワンタイムチケットをクライアント端末に渡し、サービス提供サーバ10経由で認証サーバ20に戻すことによって、クライアント端末内にアプリケーションの秘密情報を保持させることがなく、サービス提供サーバ10と認証サーバ20とで認証処理を完結できるので、よりセキュアな認証処理が実現できる。
また、認証要求元のクライアント端末のIDトークンの認証確認が成功した場合、あるいは、そのクライアント端末において起動されているアプリケーションからのログイン処理を確認した場合に、セッションが確立していると判定することによって、セキュアなSSO処理を効率的に実行することができる。
また、認証要求元のクライアント端末において起動されているアプリケーションとサービス提供サーバ10との間にセッションが確立されている場合、当該サービス提供サーバ10は、そのクライアント端末に対して、IDトークンを含めたセッション情報を発行し、認証サーバ20は、そのクライアント端末を介して得たIDトークンを検証することによって、セッションが確立されているか否かを検証することによって、セキュアなSSO処理を効率的に実行することができる。
また、認証要求元のクライアント端末において起動されているアプリケーションと前記認証サーバ20との間にセッションが確立されていない場合、当該クライアント端末は、ユーザ情報を認証サーバ20に送り、認証サーバ20は、受信したユーザ情報を検証後、アクセストークンと共に、IDトークンも発行して、サービス提供サーバ10に送信し、サービス提供サーバ10は、取得したIDトークンを検証して、セッションを確立することによって、セキュアなSSO処理を効率的に実行することができる。
また、まず第1ブラウザによりサービス提供サーバ10との間で認証処理を実施した後に、認証要求元のクライアント端末において起動されているアプリケーションとサービス提供サーバ10との間にセッションが確立されていない場合であって、かつ、ユーザに対してユーザ情報を入力させる場合には、ユーザ情報を受け付けるために第2ブラウザを起動して、第2ブラウザとサービス提供サーバ10との間での認証処理に切り替えることによって、ユーザに認証処理が実施されていることを意識させることなく、セキュアなSSO処理をよりスムーズに実行することができる。
また、認証要求元のクライアント端末において起動されているアプリケーションと認証サーバ20との間でセッションが確立されていない場合であっても、そのクライアント端末の特定ブラウザと認証サーバ20との間でセッションが確立されている場合においては、第2ブラウザの代わりに、特定ブラウザを起動して、特定ブラウザとサービス提供サーバ10間での処理に切り替えることによって、セキュアなSSO処理を効率的に実行することができる。
できる。
また、サービス提供サーバ10が、クライアント端末の秘密情報を管理し、かつ、サービス提供サーバ10と、アプリケーションを記憶するクライアント端末との連携の際のブラウザ同定のためのセッション管理をサービス提供サーバ10上で行うことで、より強固なセキュリティが担保される。
具体的には、認証トランザクション中にアプリケーション連携を挟む場合に連携前と後の埋め込みブラウザの同定の為の Cookie管理をプラットフォームが保証する事が可能になる。
認証サーバ20との通信時に用いるクライアント端末の秘密情報をインストール型アプリケーションに保存する必要が無い。そのため、認証チケット置換攻撃などの不正行為が簡単には成立せず、強化なセキュリティを実現することができる。
以上、本発明を実施例をもとに説明した。本発明は上述した実施例並びに各実施例の内容に限定されるものではなく、本発明の要旨の範囲内において種々に変形して実施をすることが可能である。上記実施例は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
実施例1にかかる認証システムの構成例を示す図である。 図1の認証システムにおけるサービス提供サーバの構成例を示す図である。 図1の認証システムにおけるモバイル端末あるいはPC端末における構成例を示す図である。 図1の認証システムにおける第1の認証処理例を示すシーケンス図である。 図1の認証システムにおける第2の認証処理例を示すシーケンス図である。 図1の認証システムにおける第3の認証処理例を示すシーケンス図である。 図1の認証システムにおける第4の認証処理例を示すシーケンス図である。
10 サービス提供サーバ、 12 サーバ通信部、 14 認証処理部、 16 サーバメモリ、 20 認証サーバ、 30 ネットワーク、 40 基地局、 40a 第1基地局、 40b 第2基地局、 40c 第3基地局、 50 モバイル端末、 50a 第1モバイル端末、 50b 第2モバイル端末、 50c 第3モバイル端末、 52 端末通信部、 54 ブラウザ処理部、 56 端末制御部、 58 端末メモリ、 60 ユーザインタフェース、 70 PC端末、 100 認証システム

Claims (8)

  1. 1以上のアプリケーションを記憶するクライアント端末と、該クライアント端末とネットワークを介して接続し、該クライアント端末にサービスを提供するサービス提供サーバと、前記クライアント端末およびサービス提供サーバと接続し、認証処理を実行する認証サーバとを含むシステムにおける認証方法において、
    前記クライアント端末は、ユーザからの指示によりアプリケーションが起動されるたびに、ブラウザを介してサービス提供サーバに認証要求に関する信号を送信し、
    前記サービス提供サーバは、前記クライアント端末から認証要求を受信したら、そのクライアント端末に関するセッション情報を発行し、前記認証要求に対して該セッション情報を付与して前記クライアント端末に返信し、
    前記クライアント端末は、前記セッション情報が付与された認証要求を前記認証サーバに送信し、
    前記認証サーバは、前記クライアント端末からの認証要求を受けたことを契機として、前記サービス提供サーバと連携して、前記サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、当該認証サーバに記憶された前記ユーザに関するユーザ情報とに基づいて認証処理を実行する
    ことを含む認証方法。
  2. 前記認証サーバは、当該認証サーバと、認証要求にかかるクライアント端末における少なくとも1つのアプリケーションとの間にセッションが確立されている場合、前記クライアント端末のIDトークンを発行し、
    前記サービス提供サーバは、前記認証サーバによって発行されたIDトークンを検証することによって、前記認証サーバによって前記クライアント端末が認証済であることを判定した後に、前記IDトークンにかかるクライアント端末によって新たに起動されたアプリケーションとの間においてセッションを確立する
    ことを含む請求項1に記載の認証方法。
  3. 前記サービス提供サーバは、当該サービス提供サーバと、認証要求にかかるクライアント端末における少なくとも1つのアプリケーションとの間にセッションが確立されている場合、前記クライアント端末のIDトークンを発行し、
    前記認証サーバは、前記サービス提供サーバによって発行されたIDトークンを検証することによって、前記サービス提供サーバによって前記クライアント端末が認証済であることを判定した後に、前記IDトークンにかかるクライアント端末によって新たに起動されたアプリケーションとの間においてセッションを確立する
    ことを含む請求項1または2に記載の認証方法。
  4. 前記クライアント端末は、バックグラウンドで動作する第1ブラウザと、ユーザからのユーザ情報の入力を受け付け可能な第2ブラウザを制御し、
    前記第1ブラウザと前記第2ブラウザは前記アプリケーションの機能として互いにセッション情報を共有しながら動作可能であり、
    前記クライアント端末は、
    第1ブラウザにより、前記サービス提供サーバとの間で認証処理を実施し、認証要求元のクライアント端末において起動されているアプリケーションと前記サービス提供サーバとの間にセッションが確立されていない場合であって、かつ、ユーザに対してユーザ情報を入力させる場合には、ユーザ情報を受け付けるために第2ブラウザを起動して、第2ブラウザとサービス提供サーバとの間での認証処理に切り替える
    ことを含む請求項1から3のいずれかに記載の認証方法。
  5. 前記クライアント端末は、
    前記アプリケーションの外部の機能として動作し、前記第1ブラウザと前記第2ブラウザとの間でセッション情報の共有ができない認証アシスト用アプリケーションを有しており、
    起動されているアプリケーションと認証サーバとの間でセッションが確立されていない場合であっても、前記認証アシスト用アプリケーションと前記認証サーバとの間でセッションが確立されている場合においては、前記第2ブラウザの代わりに、前記認証アシスト用アプリケーションを起動して、前記認証アシスト用アプリケーションと前記サービス提供サーバ間での処理に切り替える
    ことを含む請求項4に記載の認証方法。
  6. 1以上のアプリケーションを記憶するクライアント端末と、
    該クライアント端末とネットワークを介して接続し、該クライアント端末にサービスを提供するサービス提供サーバと、
    前記クライアント端末およびサービス提供サーバと接続し、認証処理を実行する認証サーバとを備えた認証システムであって、
    前記クライアント端末は、ユーザからの指示によりアプリケーションが起動されるたびに、ブラウザを介してサービス提供サーバに認証要求に関する信号を送信し、
    前記サービス提供サーバは、前記クライアント端末から認証要求を受信したら、そのクライアント端末に関するセッション情報を発行し、前記認証要求に対して該セッション情報を付与して前記クライアント端末に返信し、
    前記クライアント端末は、前記セッション情報が付与された認証要求を前記認証サーバに送信し、
    前記認証サーバは、前記クライアント端末からの認証要求を受けたことを契機として、前記サービス提供サーバと連携して、前記サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、当該認証サーバに記憶された前記ユーザに関するユーザ情報とに基づいて認証処理を実行する
    認証システム。
  7. 1以上のアプリケーションを記憶するクライアント端末と、該クライアント端末とネットワークを介して接続し、該クライアント端末にサービスを提供するサービス提供サーバと、前記クライアント端末およびサービス提供サーバと接続し、認証処理を実行する認証サーバとを備えたシステムにおけるサービス提供サーバであって、
    前記クライアント端末から認証要求を受信したら、そのクライアント端末に関するセッション情報を発行し、前記認証要求に対して該セッション情報を付与して返信して、前記クライアント端末に、前記セッション情報が付与された認証要求を前記認証サーバに送信させるサーバ通信部と、
    前記クライアント端末からの認証要求を受けて、前記認証サーバと連携して、当該サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、前記認証サーバに記憶された前記ユーザに関するユーザ情報と報に基づいて認証処理を実行する認証制御部と、
    を備えたサービス提供サーバ。
  8. 1以上のアプリケーションを記憶するクライアント端末と、該クライアント端末とネットワークを介して接続し、該クライアント端末にサービスを提供するサービス提供サーバと、前記クライアント端末およびサービス提供サーバと接続し、認証処理を実行する認証サーバとを備えたシステムにおけるサービス提供サーバにおける認証方法であって、
    前記クライアント端末から認証要求を受信するステップと、
    そのクライアント端末に関するセッション情報を発行するステップと、
    前記認証要求に対して該セッション情報を付与して返信して、前記クライアント端末に、前記セッション情報が付与された認証要求を前記認証サーバに送信させるステップと、
    前記クライアント端末からの認証要求を受けて、前記認証サーバと連携して、当該サービス提供サーバに記憶されたセッション確立済の該クライアント端末のアプリケーションの認証情報と、前記認証サーバに記憶された前記ユーザに関するユーザ情報と報に基づいて認証処理を実行するステップと、
    を備えた認証方法。

JP2013070301A 2013-03-28 2013-03-28 認証方法、認証システム、および、サービス提供サーバ Active JP5662507B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013070301A JP5662507B2 (ja) 2013-03-28 2013-03-28 認証方法、認証システム、および、サービス提供サーバ
US14/031,707 US9548975B2 (en) 2013-03-28 2013-09-19 Authentication method, authentication system, and service delivery server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013070301A JP5662507B2 (ja) 2013-03-28 2013-03-28 認証方法、認証システム、および、サービス提供サーバ

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014221220A Division JP5727661B2 (ja) 2014-10-30 2014-10-30 認証方法、認証システム、サービス提供サーバ、および認証サーバ

Publications (2)

Publication Number Publication Date
JP2014194615A true JP2014194615A (ja) 2014-10-09
JP5662507B2 JP5662507B2 (ja) 2015-01-28

Family

ID=51622212

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013070301A Active JP5662507B2 (ja) 2013-03-28 2013-03-28 認証方法、認証システム、および、サービス提供サーバ

Country Status (2)

Country Link
US (1) US9548975B2 (ja)
JP (1) JP5662507B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016218790A (ja) * 2015-05-21 2016-12-22 富士通株式会社 プログラム、情報処理端末、情報処理方法、及び情報処理システム

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9124911B2 (en) 2013-02-15 2015-09-01 Cox Communications, Inc. Storage optimization in a cloud-enabled network-based digital video recorder
US9450934B2 (en) 2013-03-15 2016-09-20 Cox Communications, Inc. Managed access to content and services
US9369282B2 (en) 2014-01-29 2016-06-14 Red Hat, Inc. Mobile device user authentication for accessing protected network resources
US9401912B2 (en) 2014-10-13 2016-07-26 Netiq Corporation Late binding authentication
US10477260B2 (en) 2014-10-17 2019-11-12 Cox Communications, Inc. Network based digital video recorder playback adapter
US9588745B1 (en) 2015-10-13 2017-03-07 Bank Of America Corporation Customizable service delivery system with scalable workflow
US9992187B2 (en) * 2015-12-21 2018-06-05 Cisco Technology, Inc. Single sign-on authentication via browser for client application
US10091193B2 (en) * 2015-12-30 2018-10-02 Mastercard International Incorporated One time passcode
CN106330918A (zh) * 2016-08-26 2017-01-11 杭州迪普科技有限公司 一种多系统登录的方法和装置
KR101877335B1 (ko) 2017-01-02 2018-08-09 주식회사 코인플러그 블록체인 및 이와 연동되는 머클 트리 구조 기반의 모바일 아이디를 이용하여 사용자를 비대면 인증하는 방법, 단말 및 이를 이용한 서버
KR101877333B1 (ko) 2017-01-02 2018-08-09 주식회사 코인플러그 블록체인 기반의 모바일 아이디를 이용하여 사용자를 비대면 인증하는 방법, 단말 및 이를 이용한 서버
US11281789B2 (en) * 2019-11-21 2022-03-22 Verizon Patent And Licensing Inc. Secure storage of passwords
CN111711602A (zh) * 2020-05-12 2020-09-25 北京奇艺世纪科技有限公司 登录鉴权方法、装置、电子设备以及可读存储介质
CN112905986B (zh) * 2021-04-16 2023-10-20 杭州海康威视数字技术股份有限公司 权限认证方法、装置、系统及计算机可读存储介质
CN113285928A (zh) * 2021-04-30 2021-08-20 杭州安恒信息技术股份有限公司 单点登录方法、装置和系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009080726A (ja) * 2007-09-27 2009-04-16 Nifty Corp ユーザ認証機構
JP2012510655A (ja) * 2008-11-28 2012-05-10 インターナショナル・ビジネス・マシーンズ・コーポレーション 認証のための方法、システム、およびコンピュータ・プログラム(1次認証済み通信チャネルによる2次通信チャネルのトークンベースのクライアント・サーバ認証)
JP2012146100A (ja) * 2011-01-11 2012-08-02 Fujitsu Ltd 攻撃模倣テスト方法、攻撃模倣テスト装置及び攻撃模倣テストプログラム
JP2013061818A (ja) * 2011-09-14 2013-04-04 Konica Minolta Business Technologies Inc 画像処理装置、アクセス制御方法およびプログラム
JP2013196036A (ja) * 2012-03-15 2013-09-30 Fujitsu Ltd サービス要求装置、サービス要求方法およびサービス要求プログラム
JP2013250612A (ja) * 2012-05-30 2013-12-12 Canon Inc 連携システム、その連携方法、情報処理システム、およびそのプログラム。

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6023698A (en) * 1996-12-05 2000-02-08 International Business Machines Corporation System and method for transparently registering and updating information over the internet
US6092196A (en) * 1997-11-25 2000-07-18 Nortel Networks Limited HTTP distributed remote user authentication system
US20040088260A1 (en) * 2002-10-31 2004-05-06 Foster Ward Scott Secure user authentication
US7802295B2 (en) * 2003-08-11 2010-09-21 Sony Corporation Authentication method, authentication system, and authentication server
US20100050243A1 (en) * 2006-12-04 2010-02-25 Sxip Identify Corp. Method and system for trusted client bootstrapping
EP2031820B1 (en) * 2007-08-31 2014-07-30 Alcatel Lucent Method for enriching content of a web page with presence information
US8966594B2 (en) * 2008-02-04 2015-02-24 Red Hat, Inc. Proxy authentication
JP5153591B2 (ja) * 2008-11-26 2013-02-27 株式会社日立製作所 認証仲介サーバ、プログラム、認証システム及び選択方法
CN101826101A (zh) * 2010-01-25 2010-09-08 王平 搜索引擎装置及其方法
US20110219427A1 (en) * 2010-03-04 2011-09-08 RSSBus, Inc. Smart Device User Authentication
JP2012146083A (ja) * 2011-01-11 2012-08-02 Fujitsu Ltd セッション管理システム、セッション管理装置、サーバ装置およびセッション管理方法
US9311462B1 (en) * 2011-03-04 2016-04-12 Zynga Inc. Cross platform social networking authentication system
EP2702745B1 (en) * 2011-04-28 2015-04-08 Interdigital Patent Holdings, Inc. Sso framework for multiple sso technologies
US8881250B2 (en) * 2011-06-17 2014-11-04 Ebay Inc. Passporting credentials between a mobile app and a web browser
US20130007867A1 (en) * 2011-06-30 2013-01-03 Cisco Technology, Inc. Network Identity for Software-as-a-Service Authentication
US9495533B2 (en) * 2011-09-29 2016-11-15 Oracle International Corporation Mobile application, identity relationship management
WO2013080166A1 (en) * 2011-12-02 2013-06-06 Entersekt (Pty) Ltd Mutually authenticated communication
US20130254858A1 (en) * 2012-03-26 2013-09-26 Computer Associates Think, Inc. Encoding an Authentication Session in a QR Code
US8769651B2 (en) * 2012-09-19 2014-07-01 Secureauth Corporation Mobile multifactor single-sign-on authentication

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009080726A (ja) * 2007-09-27 2009-04-16 Nifty Corp ユーザ認証機構
JP2012510655A (ja) * 2008-11-28 2012-05-10 インターナショナル・ビジネス・マシーンズ・コーポレーション 認証のための方法、システム、およびコンピュータ・プログラム(1次認証済み通信チャネルによる2次通信チャネルのトークンベースのクライアント・サーバ認証)
JP2012146100A (ja) * 2011-01-11 2012-08-02 Fujitsu Ltd 攻撃模倣テスト方法、攻撃模倣テスト装置及び攻撃模倣テストプログラム
JP2013061818A (ja) * 2011-09-14 2013-04-04 Konica Minolta Business Technologies Inc 画像処理装置、アクセス制御方法およびプログラム
JP2013196036A (ja) * 2012-03-15 2013-09-30 Fujitsu Ltd サービス要求装置、サービス要求方法およびサービス要求プログラム
JP2013250612A (ja) * 2012-05-30 2013-12-12 Canon Inc 連携システム、その連携方法、情報処理システム、およびそのプログラム。

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016218790A (ja) * 2015-05-21 2016-12-22 富士通株式会社 プログラム、情報処理端末、情報処理方法、及び情報処理システム

Also Published As

Publication number Publication date
JP5662507B2 (ja) 2015-01-28
US20140298441A1 (en) 2014-10-02
US9548975B2 (en) 2017-01-17

Similar Documents

Publication Publication Date Title
JP5662507B2 (ja) 認証方法、認証システム、および、サービス提供サーバ
US20200336310A1 (en) Coordinating access authorization across multiple systems at different mutual trust levels
US11025618B2 (en) Mobile device access to a protected account associated with a website
CN112136303B (zh) 用于耗时操作的刷新令牌的安全委托
KR101929598B1 (ko) 운영체제 및 애플리케이션 사이에서 사용자 id의 공유 기법
EP3208732A1 (en) Method and system for authentication
WO2017157177A1 (zh) 一种网站登录方法和装置
US9654462B2 (en) Late binding authentication
US10455025B2 (en) Multi-factor authentication
JP2019501557A (ja) アクセス管理のためのパスワードレス認証
US20170289261A1 (en) Communications methods and apparatus related to web initiated sessions
JP2019046060A (ja) 権限委譲システム、制御方法、およびプログラム
WO2019239591A1 (ja) 認証システム、認証方法、アプリケーション提供装置、認証装置、及び認証用プログラム
US20200153814A1 (en) Method for authentication with identity providers
CN114175579A (zh) 用于保护计算设备之间的通信的加密密钥的数据传输
JP2007310512A (ja) 通信システム、サービス提供サーバおよびユーザ認証サーバ
CN106161475B (zh) 用户鉴权的实现方法和装置
TWI569167B (zh) 安全的統一雲端儲存
JP5727661B2 (ja) 認証方法、認証システム、サービス提供サーバ、および認証サーバ
CN113746811A (zh) 登录方法、装置、设备及可读存储介质
CN113922982A (zh) 登录方法、电子设备及计算机可读存储介质
JP6699445B2 (ja) 情報処理装置、情報処理プログラムおよび情報処理方法および情報処理システム
US20240089249A1 (en) Method and system for verification of identify of a user
JP2021140821A (ja) 画面制御装置及び画面制御方法
JP5793593B2 (ja) ユーザ識別情報を安全に検証するためのネットワーク認証方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140725

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20140725

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20140829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141031

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141202

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141204

R150 Certificate of patent or registration of utility model

Ref document number: 5662507

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250