JP2017107342A - 認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラム - Google Patents

認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラム Download PDF

Info

Publication number
JP2017107342A
JP2017107342A JP2015239749A JP2015239749A JP2017107342A JP 2017107342 A JP2017107342 A JP 2017107342A JP 2015239749 A JP2015239749 A JP 2015239749A JP 2015239749 A JP2015239749 A JP 2015239749A JP 2017107342 A JP2017107342 A JP 2017107342A
Authority
JP
Japan
Prior art keywords
authorization token
information
server
client
authorization
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
JP2015239749A
Other languages
English (en)
Other versions
JP6677496B2 (ja
Inventor
健介 平田
Kensuke Hirata
健介 平田
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2015239749A priority Critical patent/JP6677496B2/ja
Priority to US15/364,824 priority patent/US9853963B2/en
Priority to CN201611101404.5A priority patent/CN106856475B/zh
Priority to DE102016123651.9A priority patent/DE102016123651B4/de
Publication of JP2017107342A publication Critical patent/JP2017107342A/ja
Application granted granted Critical
Publication of JP6677496B2 publication Critical patent/JP6677496B2/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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/41User authentication where a single sign-on provides access to a plurality of computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • 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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】ローカル認証とクラウドサービス認証との間でユーザーIDプロビジョニングする必要がない認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラムを提供する。
【解決手段】認可トークン生成要求を受信した認可サーバー106は、受信した認可トークンリクエストS10.4(クライアントID、シークレット、スコープ)が認可サーバーが管理するクライアント情報に存在するならば、業務サーバー105への認可トークン生成応答として認可トークンを送信し、認可トークンとクライアント情報とを紐付けて管理する。認可トークン検証要求S10.6を受信した認可サーバーは、パラメータとして受信した認可トークンとスコープに基づいた検証が成功した場合には、帳票サーバー107への認可トークン検証応答として、受信した認可トークンに紐付けて管理されるクライアント情報に基づいて認可トークン情報を送信する。
【選択図】図14

Description

本発明は、たとえばクラウドサービスにおけるサービスとローカルサービスとの認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラムに関する。
近年、サーバーをインターネットに公開しクライアントにサービスを提供するクラウドコンピューティングサービス(或いはクラウドサービス)の形態が注目を集めている。クラウドコンピューティングサービスは、多くのコンピューティング・リソースを用いてデータ変換やデータ処理を分散実行し、多くのクライアントからの要求を分散並列処理により並行して処理することが主な特徴である。現在、このクラウドコンピューティングサービスを実現するクラウドコンピューティングサービス環境上にWebサービスを実装し、多種多様なサービスをWeb上で提供するベンダーが乱立しつつある。クラウドサービスの開発において、すでにWeb上に多く提供されているサービスを有効活用し新しい機能を提供することで、開発スピードや開発コストの面で優位になる。一方で事業者等は従来自らがサーバー等を保有し、運用する自社運用システム(以下、オンプレミスシステムとも呼ぶ。)が数多く運用されている。すべての社内システムをまとめてクラウドサービスに移行することは難しく、その結果、一部のオンプレミスシステムから段階的にクラウドサービスに移行するなど、オンプレミスサービスとクラウドサービスを連携させ両方を利用するユーザーが増えてきている。
特表2015−518198号公報
オンプレミスサービスとクラウドサービスを連携する場合、従来のオンプレミスのようなローカル認証(LDAPなど)とクラウドの認証とが異なるため、シングルサインオン(Single Sign On、以下SSOとも呼ぶ)が強く望まれる。従来技術ではオンプレミスのローカル認証をクラウドサービスに構築されたローカル認証サービスに同期し、クラウドサービスとオンプレミスのログインサービスの両方にログインすることでユーザーIDプロビジョニングを開始する。たとえばユーザーID等、ユーザーアカウントに関する情報の生成や保守などの管理を開始する。その後、ユーザーはクラウドサービスのローカル認証サービスにVPNを使ってログインすると、ユーザーに紐づいたクレデンシャル情報でクラウドサービスにもログインできる。
しかしながら、ローカル認証とクラウドサービス認証とを連携するために全ユーザーのユーザーIDプロビジョニングが必要であるという課題があった。またユーザーの増減のたびにユーザーIDプロビジョニングをメンテナンスする必要があるためユーザー管理の運用コストが高くなってしまうという課題があった。
本発明は上記従来例に鑑みて成されたもので、ローカル認証とクラウドサービス認証との間でユーザーIDプロビジョニングする必要がない認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラムを提供することを目的とする。
上記目的を達成するために本発明は以下の構成を有する。
本発明の一側面によれば、本発明は、認可トークン生成リクエストに応じてクライアント情報に基づいたクライアントの認証が成功した場合には、前記クライアントに対して認可トークンを応答し、前記認可トークン生成リクエストとともに受信したローカルユーザー情報を前記認可トークンと関連付けた認可トークン情報を生成して格納する手段と、
前記クライアントから前記認可トークンとともに処理リクエストを受けたアプリケーションサーバーから、前記認可トークンを含む認可トークン検証リクエストを受信し、受信した前記認可トークンと前記認可トークン情報とに基づいた認可トークンの検証が成功した場合には、前記認可トークン情報に含まれる前記ローカルユーザー情報を前記アプリケーションサーバーへ応答する応答手段と
を有することを特徴とする認可サーバーにある。
他の側面によれば、本発明は、テナントごとのローカル認証連携モードを格納する手段と、
クライアントから認可トークンとともに処理リクエストを受信すると、認可サーバーに対して認可トークン検証リクエストを送信し、前記認可トークン検証リクエストが成功した応答として、前記認可トークンと関連付けられたローカルユーザー情報を含む認可トークン情報を受信する手段と、
前記ローカルユーザー情報で示されるユーザーまたは前記クライアントに対して前記処理リクエストを処理する処理手段と
を有することを特徴とするアプリケーションサーバーにある。
さらに他の側面によれば、本発明は、認可サーバーとアプリケーションサーバーとを含む認証連携システムであって、
前記認可サーバーは、
認可トークン生成リクエストに応じてクライアント情報に基づいたクライアントの認証が成功した場合には、前記クライアントに対して認可トークンを応答し、前記認可トークン生成リクエストとともに受信したローカルユーザー情報を前記認可トークンと関連付けた認可トークン情報を生成して格納する手段と、
前記クライアントから前記認可トークンとともに処理リクエストを受けたアプリケーションサーバーから、前記認可トークンを含む認可トークン検証リクエストを受信し、受信した前記認可トークンと前記認可トークン情報とに基づいた認可トークンの検証が成功した場合には、前記認可トークン情報に含まれる前記ローカルユーザー情報を前記アプリケーションサーバーへ応答する応答手段とを有し、
前記アプリケーションサーバーは、
クライアントから前記認可トークンとともに処理リクエストを受信すると、前記認可サーバーに対して前記認可トークン検証リクエストを送信し、前記認可トークン検証リクエストが成功した応答として、前記認可トークンと関連付けられた前記ローカルユーザー情報を含む前記認可トークン情報を受信する手段と、
前記ローカルユーザー情報で示されるユーザーまたは前記クライアントに対して前記処理リクエストを処理する処理手段と
を有することを特徴とする。
本発明によれば、ローカル認証とクラウドサービス認証との間でIDプロビジョニングする必要もないため運用負荷を下げることができる。
システム構成図 各装置のハードウェア構成図 ローカル認証サーバーで管理するテーブル構造を示す図 業務サーバーで管理するテーブル構造を示す図 認可サーバーで管理するテーブル構造を示す図 帳票サーバーで管理するテーブル構造を示す図 データ変換サーバーで管理するテーブル構造を示す図 ストレージサーバーで管理するテーブル構造を示す図 モバイル端末の画面例を示す図 帳票SVG生成フローを示す図 認可トークン発行フローを示す図 認可トークン利用フローを示す図 各装置のソフトウェア構成図 帳票SVGの生成フローを時系列に示すシーケンス図 帳票SVGの生成フローを時系列に示すシーケンス図
以下、本発明を実施するための形態について図面を用いて説明する。
[実施形態1]
<システム構成>
図1は、本発明の実施形態に係る認証連携システムを含むモバイル印刷システムの全体構成を示す図である。図1において、モバイル端末102はローカルネットワーク101を介して1台又は複数台接続されている。モバイル端末102は、ローカルネットワーク101を介してインターネットワーク100にアクセスし、サーバー104〜109にアクセスすることができる。モバイル端末102は有線または無線LANを介してネットワークに接続する。本実施形態では、モバイル端末102は無線LANアクセスポイント103を介してネットワークに接続することを想定しているが、携帯データ通信キャリアが提供する無線ネットワークを介して接続する場合も本実施形態に含まれる。無線LANアクセスポイント103は、一般的なネットワーク・ルーター機能を有した無線LANの親機であり、家庭内や事務所などの中で無線LANを提供している。なおモバイル端末のことを、クライアント端末あるいはクライアントあるいは端末と呼ぶこともある。
セキュリティドメイン110〜112は認証・認可されたユーザーのアクセス可能範囲を示しておりセキュリティドメインを越えて認証・認可したユーザーや認可トークンを利用することはできない。すなわち認証や認可の効力の範囲を示すともいえる。ローカル認証セキュリティドメイン110はローカル認証サーバー104で認証されたユーザーでアクセス可能な範囲を示しており、業務サーバー105が属する。帳票サービスセキュリティドメイン111は認可サーバー106で発行された認可トークンでアクセス可能な範囲を示しており、帳票サーバー107やデータ変換サーバー108が属する。ストレージサービスセキュリティドメイン112は不図示のストレージサービスセキュリティドメイン認可サーバーで発行された認可トークンでアクセス可能な範囲を示しており、ストレージサーバー109が属する。図1においては、ローカル認証セキュリティドメイン110がオンプレミスシステムであり、帳票サービスセキュリティドメイン111およびストレージサービスセキュリティドメイン112がクラウドシステムに相当する。
ローカル認証サーバー104は業務サーバー105へアクセスするためのユーザー認証を実現するためのサーバーである。ユーザーはローカル認証サーバー104で認証されることで業務サーバー105にアクセスすることができる。ローカル認証方式としてLDAPが用いられることが多いが、本実施形態ではユーザー名、パスワード、ドメインの一致を確認するのみの簡易的な認証方式とする。これは説明の便宜であって、ユーザーごとに固有の認証情報を用いてユーザー認証を行う他の認証方式についても本実施形態の発明を適用することができる。
業務サーバー105はユーザー業務情報を管理するサーバーである。本実施形態では販売する製品を業務サーバー105で顧客毎に管理し、販売員が業務サーバー105の情報を用いて顧客に対して営業を行うユースケースを想定している。業務サーバー105はモバイル端末102からのリクエストに応じてユーザー業務情報を表示・編集するための画面を提供する。認可サーバー106はOAuthを実現するためのサーバーでありクライアント情報の管理や認可トークンの発行・管理を行う。帳票サーバー107は業務サーバー105からユーザー業務情報を受け取り、帳票テンプレートにユーザー業務情報を反映させて帳票PDFを生成し管理するサーバーである。そして帳票サーバー107はデータ変換サーバー108に生成した帳票PDFを帳票SVGに変換するリクエストを行う。データ変換サーバー108は、帳票サーバー107から帳票SVG変換リクエストを受け付け、帳票PDFを帳票SVGにデータ変換し管理するサーバーである。ストレージサーバー109はファイル管理を行うサーバーであり、モバイル端末102や帳票サーバー107、データ変換サーバー108からのファイルアップロード/ダウンロードを受け付ける。なお、OAuthは、ユーザーの権限をそのユーザーの同意を前提としてサービス間で安全に受け渡す(すなわち委譲する)ための仕組みであり、その仕組みを実現するサーバーが認可サーバー106である。たとえばOAuthによりユーザーが第1のサーバーで許諾された権限の全部または一部を第2のサーバーに委譲することで、第2のサーバーは、そのユーザーの権限の範囲内で第1のサーバーによるサービスを受けることができる。OAuthによれば、ユーザーは、第1のサーバーにログインするための認証情報を第2のサーバーに教える必要がない。
ここで、サーバー106〜109の各サーバーはそれぞれ複数台のサーバーで冗長化されたクラウドサービスとしてインターネット上に公開されるが、本実施形態では説明を簡略化するため、それぞれ1台構成としている。またローカル認証サーバー104と業務サーバー105も複数台のサーバーで冗長化された構成をとることもできるが、本実施例では説明を簡略化するため、それぞれ1台構成としている。また、クラウドサービスを実現する各サーバーのうち、認可サーバー106とストレージサーバー109とを除いた、クライアントに対してアプリケーションを提供するためのサーバーをまとめてアプリケーションサーバーと呼ぶこともある。
<モバイル端末102のハードウェア構成>
図2(a)はモバイル端末102のハードウェア構成図である。ハードウェアの各構成要素は、システムバス202に接続されている。 ROM204にはオペレーティングシステム及び、通話、データ通信を制御するアプリケーションが格納されており、CPU203で実行される。 データ通信を制御するアプリケーションとしては、MailソフトやWebブラウザなどがある。RAM205は、プログラムを実行するためのワークメモリエリアである。また、WebブラウザがWebサーバーから取得してきたWebページデータやWebサービスにアクセスするための認証情報などを一時記憶するためのメモリでもある。記憶装置210は不揮発性の記憶装置であり、モバイル端末の再起動後も保持しておく必要のある各種動作モード設定や、稼働ログなどが記憶される。NetworkController206は、無線LAN通信部212、携帯キャリアの提供するネットワークに参加するための携帯電話データ通信部213の通信制御を行う。一般的に無線LANのネットワークに参加できるとき、NetworkController206は、無線LANの接続を優先する。モバイル端末が無線LANのネットワークエリアから外れた場合には、携帯キャリアが提供する無線通信ネットワークへ参加する。音声制御部207は、主に通話アプリケーションが起動しユーザーが電話をしているときに利用する。マイク・スピーカ214にて音声データの入出力を行い、音声制御部207は、その制御プログラムとの仲介を行っている。表示制御部208は、モバイル端末のディスプレイ215にて出力する情報の制御を行っている。入力制御部209は、モバイル端末のボタンやタッチパネル216にてユーザーが指示した情報の制御を行っている。これらの音声制御部207、表示制御部208、入力制御部209を利用して、モバイル端末上でのアプリケーションは、ネットワーク通信情報やモバイル端末のさまざまな情報をユーザーに提供する。位置検出制御部211は、GPSセンサー217からモバイル端末の位置情報を取得しOSに提供する。これらの制御は、CPU203で動くOSにて制御される。
<サーバーのハードウェア構成>
図2(b)は、104〜109の各サーバーのハードウェア構成の一例を示す図である。特に断らない限り、本実施形態に係る発明の機能が実行可能であるならば、単体の機器であっても、複数の機器からなるシステムであっても、本実施形態に係る発明が適用できることは言うまでもない。また、特に断らない限り、本実施形態に係る発明の機能が実行可能であるならば、LAN、WAN等のネットワークを介して接続が為され、処理が行われるシステムであっても本発明を適用できることは言うまでもない。本実施形態ではシステムバス219により各構成要素が接続されているものとして説明する。
CPU220は情報処理装置の制御装置であり、記憶装置226に格納されているアプリケーションプログラム、プリントドライバプログラム、オペレーティングシステムや本発明のモバイル印刷システムプログラムを実行する。また、CPU220はRAM222にプログラム実行に必要な情報、ファイル等を一時的に格納する制御を行う。また、CPU220はディスプレイ227上の不図示マウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ROM221は固定された情報を記憶するROMであり、内部には基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。RAM222は情報を一時記憶するRAMであり、CPU220の主メモリやワークエリア等として機能する。表示制御部224は、ディスプレイ227にて出力する情報の制御を行っている。入力制御部225は、キーボード228より入力される情報を制御し、情報処理装置は入力制御部225を介して外部装置とのデータのやり取りを行う。記憶装置226は外部記憶の一つで、大容量メモリとして機能し、アプリケーションプログラム、プリントドライバプログラム、OS等を格納している。キーボード228は指示入力部であり、ユーザーが各サーバーへの指示等を入力指示するためのものである。ディスプレイ227は表示部であり、キーボード228から入力したコマンド等を表示するものである。
<モバイル端末102のソフトウェア構成>
モバイル端末102およびサーバーのソフトウェア構成を、図13を参照して説明する。モバイル端末102にはブラウザーアプリケーション(Webブラウザーとも呼ぶ。)1021がインストールされる。モバイル端末102にインストールされたブラウザーアプリケーション1021は図2(a)で示した記憶装置210に記憶されており、前述したようにCPU203によってRAM205にロードされ実行される。ユーザーはブラウザーアプリケーション1021がモバイル端末102のディスプレイ215に表示する画面を操作することにより、サーバー105〜109の各サーバーにリクエストを行う。ブラウザーアプリケーション1021は業務サーバー105や帳票サーバー107、ストレージサーバー109からのHTMLデータやSVGデータを解析し画面に表示したりできる。後述する図9はブラウザーアプリケーション1021がモバイル端末102のディスプレイ215に表示する画面の一例である。モバイル端末102にはブラウザーアプリケーション以外にも様々なアプリケーションをインストールすることができる。本実施形態ではブラウザーアプリケーション1021のみを利用するため、以降の記載ではブラウザーアプリケーション1021をモバイル端末102として記載する。
<ローカル認証サーバー104のソフトウェア構成>
ローカル認証サーバー104は認証I/F、認証情報管理部1041、ローカル認証情報300を格納するストレージを有している。各ソフトウェアモジュールは図2(b)で示した記憶装置226に記憶されており、前述したようにCPU220によってRAM222にロードされ実行される。認証I/F1041はローカル認証サーバー104の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。認証情報管理部1042は図3で説明するローカル認証情報300を管理し、認証I/Fが受け付けたリクエストに応じて、ユーザー認証の成否を応答する。
<業務サーバー105のソフトウェア構成>
業務サーバー105はWebサーバー1051、業務情報管理部1052、クライアント情報400およびテンプレート情報410を格納するストレージを有している。各ソフトウェアモジュールは図2(b)で示した記憶装置226に記憶されており、前述したようにCPU220によってRAM222にロードされ実行される。Webサーバー1051は業務サーバー105の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行い、ローカル認証サーバー104で認証を行う。業務情報管理部1052は、図4で説明するクライアント情報400、テンプレート情報410を管理する。そしてまた業務情報管理部1052は、Webサーバー1051が受け付けたリクエストに応じて、後述の図9(a)や図9(b)の業務画面を応答したり、帳票生成リクエストを受けて帳票サーバー107にプレビュー生成リクエストを行ったりする。
<認可サーバー106のソフトウェア構成>
認可サーバー106はWebサーバー1061、認可情報管理部1062、クライアント情報500および認可トークン情報510を格納するストレージを有している。、各ソフトウェアモジュールは図2(b)で示した記憶装置226に記憶されており、前述したようにCPU220によってRAM222にロードされ実行される。Webサーバー1061は認可サーバー106の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。認可情報管理部1062は図5で説明するクライアント情報500と認可トークン情報510を管理し、Webサーバー1061が受け付けたリクエストに応じて、認可トークンの発行・スコープ確認・有効期限確認などを行う。
<帳票サーバー107のソフトウェア構成>
帳票サーバー107は、Webサーバー1071、帳票生成部1072および帳票情報管理部1073、テンプレート情報600、プレビュー情報610、テナント設定情報620を格納するストレージを有している。各ソフトウェアモジュールは図2(b)で示した記憶装置226に記憶されており、前述したようにCPU220によってRAM222にロードされ実行される。Webサーバー1071は帳票サーバー107の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。そして認可サーバー106に対して認可トークン検証リクエストや認可トークン情報取得リクエストを行う。帳票生成部はテンプレートに業務サーバー105から受け取った業務情報を反映させ帳票PDFを生成する。帳票生成部は生成した帳票PDFをストレージサーバー109にアップロードする。帳票情報管理部は図6で説明するテンプレート情報600、プレビュー情報610、テナント設定情報620を管理し、Webサーバーが受け付けたプレビュー生成リクエストに応じて、帳票生成部で帳票PDFを生成し、データ変換サーバー108に帳票SVG生成リクエストを行う。ストレージには、図6で説明する帳票サーバー107が保持している情報が格納されている。なおテナントとは、サービスリソースの提供先を区分する単位であり、ユーザーがクラウドサービスを利用し、管理する単位である。クライアントはクラウドサービスのユーザーであり、特定のテナントのクライアントとして動作し、ひとつのテナントで複数のクライアントが複数のサービスを利用するような構成があり得る。したがって本実施形態では、ローカル認証セキュリティドメイン110ではテナントの管理は行われず、クラウドサービスである帳票サービスセキュリティドメイン111ではテナントの管理が行われる。
<データ変換サーバー108のソフトウェア構成>
データ変換サーバー108は、Webサーバー1081、データ変換部1082およびデータ変換情報管理部1083、文書情報700、データ変換情報710、テナント設定情報720を格納するストレージを有する。各ソフトウェアモジュールは図2(b)で示した記憶装置226に記憶されており、前述したようにCPU220によってRAM222にロードされ実行される。Webサーバー1081はデータ変換サーバー108の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。そして認可サーバー106に対して認可トークン検証リクエストや認可トークン情報取得リクエストを行う。データ変換部は帳票サーバー107がストレージサーバー109にアップロードした帳票PDFを受信し、帳票PDFを帳票SVGに変換を行う。データ変換部は生成した帳票SVGをストレージサーバー109にアップロードする。データ変換情報管理部は図7で説明する文書情報700、データ変換情報710、テナント設定情報720を管理し、Webサーバーが受け付けた帳票SVG生成リクエストに応じて、データ変換部で帳票SVGを生成する。ストレージは図7で説明するデータ変換サーバー108が保持している情報が格納されている。
<ストレージサーバー109のソフトウェア構成>
ストレージサーバー109はWebサーバー1091、ストレージ管理部1092、ファイル情報800を格納するストレージを有する。各ソフトウェアモジュールは図2(b)で示した記憶装置226に記憶されており、前述したようにCPU220によってRAM222にロードされ実行される。Webサーバー1071はストレージサーバー109の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。そして不図示のストレージ認可サーバーに対して認可トークン検証リクエストを行う。ストレージ管理部は図8で説明するファイル情報800を管理し、アップロードリクエストされたファイルの入出力を行う。ストレージは図8で説明するストレージサーバー109が保持している情報やストレージサーバー109受信したファイルが格納されている。
<ローカル認証サーバー104が管理するデータ>
図3はローカル認証サーバー104がストレージに記憶するデータテーブルである。これらのデータテーブルは、ローカル認証サーバー104のストレージではなく、インターネット100やローカルネットワーク101を介して通信可能に構成された別のサーバーに記憶するように構成することもできる。ローカル認証サーバー104が保持するデータテーブルはローカル認証情報300を含む。図3のローカル認証情報300は、業務サーバー105にアクセス可能なユーザーのユーザー情報としてドメイン名(ドメイン識別情報)301、ユーザー名(ユーザー識別情報)302、パスワード303を含む。ローカル認証サーバー104は、ローカル認証の対象となるユーザーにより入力されたユーザー認証情報と、ローカル認証情報300として登録されたユーザー認証情報の一致によりユーザーを認証する。ローカル認証情報300は、ローカル認証セキュリティドメイン110内でローカルに通用する認証情報である。
<業務サーバー105が管理するデータ>
図4(a)、図4(b)は業務サーバー105がストレージに記憶するデータテーブルである。これらのデータテーブルは、業務サーバー105のストレージではなく、インターネット100やローカルネットワーク101を介して通信可能に構成された別のサーバーに記憶するように構成することもできる。業務サーバー105が保持するデータテーブルはクライアント情報400とテンプレート情報410を含む。図4(a)のクライアント情報400は業務サーバー105が帳票サーバー107にアクセスするための情報であり、認可サーバー106で発行される。クライアントID401はクライアントを一意に識別するためのクライアントの識別情報、シークレット402はクライアントID401に対応したパスワードである。スコープ403はクライアントのアクセス権限の範囲を示す文字列である。図4(a)の例では、文字列「SVG_Preview」はたとえば、SVG文書データのプレビュー要求がアクセス権限の範囲に含まれることを示す。図4(b)のテンプレート情報400は業務サーバー105が帳票サーバー107にプレビュー生成リクエストを行う際に指定するテンプレートID411を含む。テンプレートID411は帳票サーバー107のテンプレート情報600に登録されているものを業務サーバー105が保持する。
<認可サーバー106のデータ>
図5(a)、図5(b)は認可サーバー106がストレージに記憶するデータテーブルである。これらのデータテーブルは、認可サーバー106のストレージではなく、インターネット100やローカルネットワーク101を介して通信可能に構成された別のサーバーに記憶するように構成することもできる。認可サーバー106が保持するデータテーブルは、クライアント情報500、認可トークン情報510を含む。
図5(a)のクライアント情報500にはサーバー106〜108にアクセス可能なクライアントの情報が含まれている。本実施形態においてクライアント情報500には、業務サーバー105の情報がクライアントとして登録されている。クライアントID501は、クライアントを一意に識別するための識別子である。本実施形態では業務サーバー105のクライアントIDであるclient0001が登録されている。シークレット502はクライアントの正当性を判断するためのパスワードである。認可サーバー106は、クライアントから受信したクライアントIDとシークレットの組と、クライアント情報のクライアントID501とシークレット502の組との一致によりクライアントを特定する。スコープ503はOAuthのスコープであり認可サーバー106が発行する認可トークンでアクセス可能な範囲を示す。本実施形態のスコープ503の種類はSVG_Previewを定義する。SVG_Previewスコープは業務サーバー10が帳票サーバー107のインターフェースにアクセスする際に必要なスコープである。テナントID504は顧客テナントを一意に識別する識別子である。
図5(b)の認可トークン情報510は、認可サーバー106により認可トークン取得リクエストを受け付けた際に生成される。1つのリクエストについて1レコードが生成される。認可トークン511は認可トークンを一意に識別可能な識別子である。有効期限512は認可トークンの有効期限であり認可トークン取得リクエスト受信時間から一定時間後の値が登録される。有効期限512を過ぎた認可トークン511は無効である。スコープ513は認可トークン511が利用可能なスコープであり、認可サーバー106への認可トークン取得リクエストで渡されるスコープが登録される。クライアントID514には認可サーバー106への認可トークン取得リクエストで渡されるクライアントIDが登録される。アプリケーションID515はクライアントが複数アプリケーションで利用される場合に各アプリケーションを識別する識別子である。アプリケーションID515は認可サーバー106への認可トークン取得リクエストでアプリケーションIDが渡された場合に登録される。認可サーバー106への認可トークン取得リクエストでアプリケーションIDが渡されなかった場合は登録されない。本実施形態では、業務サーバー105から認可サーバー106への認可トークン取得リクエストにおいてアプリケーションIDにローカルユーザー情報(ユーザー名302@ドメイン名301)が指定され、アプリケーションID515として登録される。なお図3に示されたローカル認証情報からパスワードを除いたユーザー名とドメイン名とを除いた情報をローカルユーザー情報と呼ぶことにする。
<帳票サーバー107が管理するデータ>
図6(a)、図6(b)、図6(c)は、帳票サーバー107が外部メモリに記憶するデータテーブルである。これらのデータテーブルは、帳票サーバー107の外部メモリではなく、インターネット100やローカルネットワーク101を介して通信可能に構成された別のサーバーに記憶するように構成することもできる。帳票サーバー107が保持するデータテーブルはテンプレート情報600とプレビュー情報610とを含む。
図6(a)のテンプレート情報600は帳票サーバー107が保持するテンプレートを管理する情報である。テンプレートID601はテンプレートを一意に識別する識別子であり、帳票サーバー107にテンプレートが登録された際に発行される。テナントID602はテンプレートを登録したテナントのテナントIDである。帳票サーバー107はテンプレートに対するアクセスをテナントID602毎に制御する。テンプレートURLパス603はテンプレートが保存されているストレージサーバー109のURLパスである。帳票サーバー107はテンプレートID601を含むURLパスで示されるフォルダ(及びファイル)をストレージサーバー109に生成し、そこにテンプレートを保存する。
図6(b)のプレビュー情報610は帳票サーバー107がプレビュー処理を管理する情報である。プレビューID611は帳票サーバー107がプレビュー生成リクエストを受け付けた際に発行し登録する。テナントID612はプレビュー生成リクエストの要求元のテナントのテナントIDである。ユーザーID613はプレビュー生成リクエストの要求元のユーザーの識別子である。ユーザーID613には、本例では、テナントIDとローカルユーザー情報(ユーザー名302@ドメイン名301)とを組み合わせた識別情報が登録される。このローカルユーザー情報は認可トークン情報510に含まれるアプリケーションID515に対応する。データ変換ID614は、帳票サーバー107が、データ変換サーバー108への帳票SVG生成リクエストに対する応答で受信する、データ変換処理を識別する識別子である。帳票PDFURLパス615は帳票PDFが保存されているストレージサーバー109のURLパスである。帳票サーバー107はプレビューID611を含むURLパスで示されるフォルダ(及びファイル)をストレージサーバー109に生成し、そこに帳票PDFを保存する。
図6(c)のテナント設定情報620は帳票サーバー107におけるテナント毎の設定情報である。テナントID621の設定としてローカル認証連携モード622を保持する。ローカル認証連携モード622はローカル認証セキュリティドメイン110との連携をするか否かをtrue/falseで示す。たとえばtrueは連携することを、falseは連携しないことを示す。テナント設定情報はサーバーごとに設定されてもよいが、特定のサーバーに設定されたテナント共有情報を複数のサーバーで共有するよう構成してもよい。そのために例えば、特定のサーバーでテナント設定情報が更新されたなら、それを他のサーバーに分配するように構成してもよい。
<データ変換サーバー108が管理するデータ>
図7(a)、図7(b)、図7(c)はデータ変換サーバー108が外部メモリに記憶するデータテーブルである。データ変換サーバー108が保持するデータテーブルは、文書情報700、データ変換情報710、テナント設定情報720を含む。
図7(a)の文書情報700は、データ変換サーバー108により帳票SVG生成リクエスト受信時に生成される。1つのリクエストについて1レコードが生成される。文書ID701は、データ変換サーバー108が帳票SVG生成リクエストを受信した際に発行する、文書を一意に識別する識別子である。テナントID702は帳票SVG生成リクエストした要求元のテナントのテナントIDである。ユーザーID703は帳票SVG生成リクエストした要求元のユーザーの識別子である。ユーザーID703には、クライアントIDとローカルユーザー情報(ユーザー名302@ドメイン名301)との組み合わせが登録される。文書URL704は帳票PDFが保存されているストレージサーバー109のURLパスである。帳票サーバー107からの帳票SVG生成リクエストのパラメータとしてデータ変換サーバー108に渡される。
図7(b)のデータ変換情報710は、データ変換サーバー108により帳票SVG生成リクエスト受信時に生成される。1つのリクエストについて1レコードが生成される。データ変換ID711は、データ変換サーバー108が帳票SVG生成リクエストを受信した際に発行する、データ変換処理を一意に識別する識別子である。テナントID712、ユーザーID713、文書ID714は、データ変換サーバー108がデータ変換リクエスト受信時に生成する文書情報700のテナントID702、ユーザーID703、文書ID701とそれぞれ同じ値である。インデックスURL715は、データ変換サーバー108が生成する帳票SVGのURLリストであるインデックスファイルを保存するストレージサーバー109のURLである。生成した帳票SVGが複数ページだった場合には、複数の帳票SVGのストレージサーバー109上のURLがインデックスファイルに記載される。インデックスURL715はデータ変換サーバー108が帳票SVG生成完了時にストレージサーバー109で一意になるようURLパスにデータ変換ID711を含めて生成され保存される。ステータス716はデータ変換サーバー108のデータ変換状況を示しており、データ変換サーバー108がデータ変換状況に応じて更新する。ステータス716には"待機中"や"変換済み"がある。
図7(c)のテナント設定情報720はデータ変換サーバー108におけるテナント毎の設定情報である。テナント設定情報720は帳票サーバー107のテナント設定情報620と同様の情報である。
<ストレージサーバー109のデータ>
図8はストレージサーバー109が外部メモリに記憶するデータテーブルである。これらのデータテーブルは、ストレージサーバー109の外部メモリではなく、インターネット100やローカルネットワーク101を介して通信可能に構成された別のサーバーに記憶するように構成することもできる。ストレージサーバー109が保持するデータテーブルはファイル情報800を含む。図8のファイル情報800はストレージサーバー109に保存するファイルの情報である。データURL801はストレージサーバー109に保存するファイルを一意に特定することができるURLである。ファイルパス802はストレージ上のファイルパスでありファイルの格納場所を示す。データURL801に対してリクエストすることによりストレージのファイル操作を行うことができる。たとえば、データURL801に対してHTTP GETメソッドをリクエストすると対応するファイルがダウンロードできる。データURL801に対してHTTP PUTメソッドにファイル添付してリクエストするとファイルをアップロードし保存できる。データURL801に対してHTTP DELETEメソッドをリクエストすると対応するファイルを削除できる。
<モバイル端末102の画面>
図9(a)、図9(b)、図9(c)はモバイル端末102に表示するブラウザーアプリケーションの画面例であり図2(a)において表示制御部208を介してディスプレイ215に表示されるものである。図9(a)のログイン画面900は、モバイル端末102から業務サーバー105への初回アクセス時に業務サーバー105が応答する、ローカル認証サーバー104へログインを行う画面である。ユーザー名901、パスワード902、ドメイン903が入力されログインボタン904が押下されると、業務サーバー105にローカル認証リクエストが送信される。ローカル認証リクエストとともに送信されるユーザー名901、パスワード902、ドメイン903が、ローカル認証サーバー104に登録されているローカル認証情報300と照合されて認証される。図9(b)の商談画面910はログイン画面900でログインしたユーザーの業務情報を表示する画面である。業務サーバー105はローカル認証リクエストを受け付けローカル認証サーバー104で認証されると、認証されたユーザーの業務情報を含む商談画面910を応答する。商談画面910において帳票生成ボタン911が押下されると、業務サーバー105に帳票生成リクエストが送信される。図9(c)のプレビュー画面920は帳票SVGを表示するための画面であり、帳票サーバー107が生成した帳票SVGがモバイル端末102の画面に表示される。
<帳票SVGプレビューフロー>
図10はログイン画面900でログインボタン904が押下され、プレビュー画面920が表示されるまでの処理フローである。また図14、図15は、処理フローを時系列で示したシーケンス図である。なお以下の説明で「送信する」「受信する」といっても、サーバー等の構成によっては必ずしも電気通信による送受信とは限らず、プロセス間の通信を含む場合もある。また図10では矢印は要求を示しており、煩雑さを避けるために要求に対する応答は図示していない。しかし以下の説明の通り、要求に対しては一定の応答が返される。
S10.1においてログイン画面900でログインボタン904が押下されると、モバイル端末102からユーザー名、パスワード、ドメインをパラメータとして業務サーバー105に対してローカル認証リクエストが送信される。
モバイル端末102からローカル認証リクエストを受信した業務サーバー195は、S10.2においてローカル認証サーバー104に対してローカル認証リクエストを送信する。S10.1とS10.2におけるローカル認証リクエストにおけるパラメータは同じものである。ローカル認証リクエストを受け付けたローカル認証サーバー104は、リクエストパラメータのユーザー名、パスワード、ドメインをローカル認証情報300のドメイン名301、ユーザー名302、パスワード303と照合して認証する。そしてその認証結果を業務サーバー105に応答する。業務サーバー105はローカル認証サーバー104から受信した認証結果が成功だった場合、認証されたユーザーの業務情報で商談画面910を生成し、S10.1の応答としてモバイル端末102に返す。認証が失敗であればその旨を示す画面がローカル認証サーバー104から業務サーバー105を介してモバイル端末102に応答されて表示される。
S10.3において商談画面910で帳票生成ボタン911が押下されるとモバイル端末から業務サーバー105に帳票生成リクエストが送信される。S10.3の帳票生成リクエストを受け付けた業務サーバー105は後述のS10.4、S10.5、S10.7のステップを処理し、S10.9でモバイル端末102にプレビュー画面のURLを、認可トークンおよびプレビューIDとともに応答する。
S10.4において業務サーバー105は認可サーバー106に認可トークン生成リクエストを送信する。業務サーバー105は認可トークン生成リクエストのパラメータとして、クライアントID401、シークレット402、スコープ403を含むクライアント情報と、アプリケーションIDとしてS10.2で認証されたユーザーのローカルユーザー情報(ユーザー名302@ドメイン名301)とを送信する。クライアント情報はクレデンシャル情報とも呼ぶことがある。また、ローカルユーザー情報は、クラウドサービスのクライアントである業務サーバー105が、クラウドサービスを要求する元となった要求(この例ではS10.3の帳票作成要求)の要求元ユーザーの識別情報であるともいえる。S10.4の認可トークン生成リクエストを受信した認可サーバー106は、パラメータのクライアントID、シークレット、スコープがクライアント情報500に存在するか判定する。そして、一致するクライアントID501、シークレット502、スコープ503が存在した場合に、認可トークン511を発行し認可トークン情報510に発行した認可トークンに対応するレコードの追加を行う。この時、認可サーバー106はS10.4の認可トークン生成リクエストのパラメータで受信したスコープ、クライアントID、アプリケーションIDを認可トークン情報510に追加したレコードに登録する。そして認可サーバー106はS10.4の認可トークン生成リクエストの応答として発行した認可トークン511を業務サーバー105に返す。
S10.5において、認可トークン511を受信した業務サーバー105は帳票サーバー107にプレビュー生成リクエストを送信する。業務サーバー105はS10.5のプレビュー生成リクエストのパラメータとして、S10.4の認可トークン生成リクエストの応答として受信した認可トークン、テンプレートID411、S10.2で商談画面910生成時に利用した業務情報を送信する。
S10.6において帳票サーバー107はS10.5のプレビュー生成リクエストで受信した認可トークンと、スコープとをパラメータとして、認可サーバー106に認可トークン検証リクエストを送信する。このとき、指定するスコープは例えばプレビュー生成リクエストに対応するSVG_Previewである。S10.6の認可トークン検証リクエストを受信した認可サーバー106は、パラメータとして受信した認可トークンとスコープとが一致するレコードが認可トークン情報510の中にあるか検証する。そして、一致したレコードがあればそのレコード情報(以下、認可トークン情報と呼ぶ。)を応答する。なおここでは、応答する認可トークン情報にはさらに、認可トークン情報に含まれたクライアントID514に対応するテナントIDも含まれる。クライアント情報500全体を含めてもよいが、本実施形態ではテナントIDだけで十分である。受信した認可トークン及びスコープに一致するレコードがない場合エラーを応答する。帳票サーバー107は認可トークン検証リクエストの応答として認可トークン情報を受信すると、プレビューID611を発行し、プレビュー情報610にレコードを登録する。そのレコードのテナントID612には受信した認可トークン情報のテナントIDが、ユーザーID613には認可トークン情報のアプリケーションIDが記録される。そして帳票サーバー107は発行したプレビューID611をS10.5のプレビュー生成リクエストの応答として業務サーバー105に返す。
S10.6−1において帳票サーバー107はS10.5のプレビュー生成リクエストのパラメータとして受信したテンプレートIDと一致するテンプレートID601のテンプレートをテンプレート情報600から特定する。そして、特定したテンプレートのテンプレートURLパス603からテンプレートファイルを取得する。そして帳票サーバー107はそのテンプレートファイルに業務情報を反映させ帳票PDFを生成する。帳票PDFとは、PDF形式の帳票データである。帳票サーバー107は、S10.6で生成したプレビューIDからストレージサーバー109上のURLパスを生成し、プレビュー情報610においてそのプレビューID611に対応する帳票PDF URLパス615に生成したURLパスを登録する。そして帳票PDF URLパス615に、生成した帳票PDFをアップロードする。
S10.6−2において帳票サーバー107はデータ変換サーバー108に帳票SVG生成リクエストを送信する。帳票サーバー107は帳票SVG生成リクエストのパラメータとして、S10.5のプレビュー生成リクエストとともに受信した認可トークンと、S10.6−1で生成した帳票PDF URLパス615を指定する。
S10.6−3においてデータ変換サーバー108は、S10.6−2の帳票SVG生成リクエストとともに受信した認可トークンと、スコープとをパラメータとして、認可サーバー106に認可トークン検証リクエストを送信する。指定するスコープは例えば帳票SVG生成リクエストに対応するSVG_Previewである。認可トークン検証リクエストの処理は前述のS10.6と同様である。
データ変換サーバー108はS10.6−3の認可トークン検証リクエストの応答として認可トークン情報を受信すると、文書ID701とデータ変化ID711とを発行し、文書情報700とデータ変換情報710とに新たなレコードとしてそれぞれ登録する。ここでテナントID702、712にはS10.6−3で受信した認可トークン情報のテナントIDを登録する。ユーザーID703、713にはS10.6−3で受信した認可トークン情報のアプリケーションIDを登録する。文書URLパス704にはS10.6−2で受信した帳票SVG生成リクエストのパラメータである帳票PDF URLパスを登録する。文書ID714には文書情報700の文書ID701と同じものを登録する。そしてデータ変換サーバー108はS10.6−2の帳票SVG生成リクエストの応答として、発行したデータ変換ID711を帳票サーバー107に返す。S10.6−2の帳票SVG生成リクエストの応答としてデータ変換IDを受け取った帳票サーバー107は、受信したデータ変換IDをプレビュー情報610のデータ変換ID614として登録する。
S10.6−4においてデータ変換サーバー108は帳票PDF URLパス704から帳票PDFを取得し帳票PDFを帳票SVGに変換する。なお帳票SVGとはSVG形式の帳票データである。
S10.6−5においてデータ変換サーバー108はストレージサーバー109上の帳票SVG URLパスとインデックスURLパスとを生成し、帳票SVG URLパスに、S10.6−4で変換された帳票SVGをアップロードする。そしてデータ変換サーバー108は帳票SVG URLパスのリストであるインデックスファイルをインデックスURLパスにアップロードする。データ変換サーバー108はデータ変換情報710にインデックスURLパス715を登録する。
S10.7において業務サーバー105は帳票サーバー107にプレビューURL取得リクエストを送信する。業務サーバー105はS10.7のプレビューURL取得リクエストのパラメータとして、S10.4の認可トークン生成リクエストの応答で受信した認可トークンとS10.5のプレビュー生成リクエストの応答で受信したプレビューIDとを指定する。なお業務サーバー105はS10.7のプレビューURL取得リクエストをS10.5のプレビュー生成リクエストの応答を受信した直後に先述のS10.6−1〜S10.6−5の処理とは非同期で行う。したがって、図14のS10.6−1〜S10.6−5までの処理と、図15bのS10.7以降の処理とは非同期に進行する。したがって、S10.14でインデックス及び帳票SVGが要求された時点でS10.6−5のインデックス及び帳票SVG保存が完了していなければ帳票SVGはモバイル端末102に応答できない。その場合にはモバイル端末102はS10.14の試行を成功するまで繰り返し行うことになろう。
S10.8において、プレビューURL取得リクエストを受信した帳票サーバー107は、そのパラメータの認可トークンとスコープとをパラメータに指定し、認可サーバー106に認可トークン検証リクエストを行う。指定するスコープは例えばプレビューURL取得リクエストに対応するSVG_Previewである。認可トークン検証リクエストの処理は前述のS10.6と同様である。
帳票サーバー107は、S10.8の認可トークン検証リクエストの応答として認可トークン情報を受信すると、S10.7のプレビューURL取得リクエストのパラメータとして受信したプレビューIDと一致するレコードをプレビュー情報610から特定する。そして、帳票サーバー107はS10.7のプレビューURL取得リクエストの応答として帳票サーバー107のプレビューURLを返す。ここで返す帳票サーバー107のプレビュー画面URLにはURLパラメータとしてS10.7で受信したプレビューIDと認可トークンとを指定する。
S10.9において、業務サーバー105はS10.3の帳票生成リクエストの応答としてモバイル端末102にS10.7で受信した帳票サーバー107のプレビュー画面URLを返す。またプレビュー画面URLとともに、S10.7のプレビューURL取得リクエストの応答として受信したプレビューIDおよび認可トークンをモバイル端末102に送信する。
S10.10においてモバイル端末102は、S10.9で受信したプレビュー画面URLへプレビュー画面取得リクエストを行う。プレビュー画面URLにより指定されたサーバー(ここでは帳票サーバー107)は、指定されたURLのコンテンツとして、S10.10−2を実行するためのスクリプトをモバイル端末102に応答する。
S10.10−2において、モバイル端末102は受信したスクリプトを実行してインデックスURL取得リクエストを帳票サーバー107に送信する。このときインデックスURL取得リクエストのパラメータとして、S10.9において受信したプレビューIDおよび認可トークンも送信される。
S10.11において、インデックスURL取得リクエストを受信した帳票サーバー107はURLパラメータで指定された認可トークンと、スコープとをパラメータに指定し、認可サーバー106に認可トークン検証リクエストを行う。指定するスコープは例えばインデックスURL取得リクエストに対応するSVG_Previewである。認可トークン検証リクエストの処理は前述のS10.6と同様である。
帳票サーバー107はS10.11の認可トークン検証リクエストの応答で認可トークン情報を受信すると、インデックスURL取得リクエストのURLパラメータで指定された認可トークンプレビューIDと一致するレコードをプレビュー情報610から特定する。ここで帳票サーバー107は特定したプレビュー情報610にデータ変換ID614が登録されていない場合、帳票PDFがまだ生成されていないとしてS10.10にエラー応答する。
S10.12において、帳票サーバー107は、特定したプレビュー情報610にデータ変換ID614が登録されていた場合、データ変換ID614とS10.7で受信した認可トークンとをパラメータとしてデータ変換サーバー108にインデックスURL取得リクエストを送信する。
S10.13においてデータ変換サーバー108はインデックスURL取得リクエストのパラメータである認可トークンとスコープとをパラメータに指定し、認可サーバー106に認可トークン検証リクエストを行う。認可トークン検証リクエストの処理は前述のS10.6と同様である。指定するスコープは例えばインデックスURL取得リクエストに対応するSVG_Previewである。
データ変換サーバー108はS10.13の認可トークン検証リクエストの応答で認可トークン情報を受信すると、データ変換情報710から、S10.12のインデックスURL取得リクエストのパラメータとして受信したデータ変換IDと一致するレコードを特定する。そして特定したデータ変換情報710のステータス716が"変換済み"だった場合に、インデックスURLパス715をS10.12のインデックスURL取得リクエストへの応答として帳票サーバー107に返す。そして帳票サーバー107は、S10.10−2のインデックスURL取得リクエストへの応答として、受信したインデックスURLパスをモバイル端末102に返す。ここで、特定したデータ変換情報710のステータス716が"変換済み"以外だった場合、データ変換サーバー108は帳票サーバー107に帳票SVGがまだ生成されていないとしてS10.12の応答としてエラーを返す。そして帳票サーバー107はS10.10−2のインデックスURL取得リクエストにエラー応答する。モバイル端末102はS10.10−2に対する応答として、帳票SVGが生成され、そのインデックスURLパスを受信できるまでリトライする。
S10.14においてモバイル端末102はS10.10−2のインデックスURL取得リクエストへの応答として取得したインデックスURLパスからインデックスを取得する。そしてインデックスに記載された帳票SVG URLから帳票SVGを取得しプレビュー画面920に帳票SVGを表示する。すなわち図10、図15では簡略化しているが、インデックス取得に引き続いて帳票SVGのリクエストが送信され、帳票SVGが応答される。
<認可サーバー106の認可トークン発行フロー>
図11は認可サーバー106が認可トークンリクエスト(S10.4)を受信したときの認可トークン発行の処理フローの詳細である。
S11.1において認可サーバー106は認可トークンリクエストを受信する。認可サーバー106は認可トークンリクエストのパラメータとしてクライアントID、シークレット、スコープ、アプリケーションIDを受け取る。
S11.2において認可サーバー106はクライアント情報500からS11.1で受信したクライアントIDと一致するレコードを特定する。
S11.3において認可サーバー106はS11.2で特定したクライアント情報500のクライアントID501、シークレット502が、S11.1で受信したクライアントID、シークレットと一致するか判定する。一致しない場合エラーとする(S11.5)。
S11.4において認可サーバー106はS11.2で特定したクライアント情報500のスコープ503が、S11.1で受信したスコープと一致するか判定する。一致しない場合エラーとする(S11.5)。
S11.5において認可サーバー106は認可トークンID511を発行し、S11.1で受信したクライアントID、スコープ、アプリケーションIDを認可トークン情報510にレコード登録する。前述のS10.4のフローにおいてアプリケーションIDにローカルユーザー情報(ユーザー名302@ドメイン名301)が指定されるが、ローカル認証連携しないクライアントからのリクエストの場合、アプリケーションIDには空または異なる値が登録される。
以上の手順により、認可トークン情報510として、認可トークンと関連付けて、ローカルユーザーを特定できるローカルユーザー情報が登録される。認可トークン情報500は、認可サーバー106により認可トークンの検証が成功すると、検証の要求元に返される。そのため、リクエストともに受信した認可トークンの検証を要求したサーバーは、リクエストの要求元がローカルユーザーであれば、そのローカルユーザー情報も併せて取得できる。
<帳票サーバー107・データ変換サーバー108の認可トークン検証フロー>
図12は帳票サーバー107またはデータ変換サーバー108が各種リクエスト(S10.5、S10.6−1、S10.7、S10.10、S10.11、S10.12)を受信したときの認可トークン検証の処理フローの詳細である。
S12.1において帳票サーバー107またはデータ変換サーバー108はリクエストを受信する。またリクエストのパラメータとして認可トークンを受信する。
S12.2において帳票サーバー107またはデータ変換サーバー108は認可サーバー106に対して認可トークン検証リクエストを行う。認可トークン検証リクエストの結果、認可トークン情報が得られなかった場合エラーとする(S12.6)。認可トークン検証が成功すると、その応答として認可トークン情報が返され、返される情報にはテナントIDが含まれている。
S12.3において帳票サーバー107またはデータ変換サーバー108は、テナント設定情報620または720から認可トークン情報のテナントIDと一致するレコードを特定する。そして、そのテナントのローカル認証連携モード622または722が有効になっているかどうか判断する。
S12.4においてテナントのローカル認証連携モードが有効だった場合、帳票サーバー107またはデータ変換サーバー108は、認可トークン情報のテナントIDとアプリケーションIDに登録されているローカルユーザー情報(ユーザー名302@ドメイン名301)を一意のユーザーとしてリクエストを処理する。
S12.5においてテナントのローカル認証連携モードが無効だった場合、帳票サーバー107またはデータ変換サーバー108は、認可トークン情報のクライアントIDを一意のユーザーとしてリクエストを処理する。
以上のように、認可トークン発行時に、ローカルユーザー情報によってローカル認証情報を認可トークンと紐付けておくことで、認可トークンを利用して検証を受けた時に認可トークン情報からローカルユーザー情報を取得することができる。そのローカルユーザー情報を利用することで、帳票サーバー107やデータ変換サーバー108において、ユーザーをローカル認証サーバー104のユーザーとして一意に認識することができる。例えば認可トークンに紐づいたローカルユーザー情報を帳票サーバー107やデータ変換サーバー108の課金処理や処理集計処理で一意のユーザーを示す識別情報として処理することで、ローカル認証サーバー104と連動して運用することができる。これによりローカル認証セキュリティドメイン110と帳票サービスセキュリティドメイン111の間でIDプロビジョニングする必要がなく、運用負荷を下げることができる。また、業務サーバー105は一つのクライアントを使いまわして認可トークンを発行しているが、発行した認可トークンの利用はローカル認証情報で限定されるため、認可トークンで他のユーザーの情報にアクセスすることはできない。そのためセキュアに認証連携することができる。
さらに、ローカル認証連携モードの有効/無効をテナント毎の設定として持つことによって、マルチテナント時に特定のテナントのみローカル認証連携を行うことができ、認証・認可において柔軟に顧客ニーズに応えることが出来る。
またローカルユーザー情報に代えてローカル認証情報を認可トークンと関連付けてもよい。また本実施形態では処理リクエストとして帳票生成リクエストを示したが、他の処理リクエストについても本実施形態に係る発明を適用することはできる。
[その他の実施例]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
102 モバイル端末、104 ローカル認証サーバー、106 認可サーバー、107 帳票サーバー、108 データ変換サーバー、109 ストレージサーバー

Claims (14)

  1. 認可トークン生成リクエストに応じてクライアント情報に基づいたクライアントの認証が成功した場合には、前記クライアントに対して認可トークンを応答し、前記認可トークン生成リクエストとともに受信したローカルユーザー情報を前記認可トークンと関連付けた認可トークン情報を生成して格納する手段と、
    前記クライアントから前記認可トークンとともに処理リクエストを受けたアプリケーションサーバーから、前記認可トークンを含む認可トークン検証リクエストを受信し、受信した前記認可トークンと前記認可トークン情報とに基づいた認可トークンの検証が成功した場合には、前記認可トークン情報に含まれる前記ローカルユーザー情報を前記アプリケーションサーバーへ応答する応答手段と
    を有することを特徴とする認可サーバー。
  2. 前記クライアント情報には、クライアントの識別情報と、該クライアントのテナントの識別情報とを含み、
    前記応答手段は、検証が成功した前記認可トークンの生成を要求したクライアントのテナントの識別情報を、前記認可トークン情報の一部として応答することを特徴とする請求項1に記載の認可サーバー。
  3. 前記ローカルユーザー情報は、ローカル認証サーバーにより認証されたユーザーのアクセス可能なドメインを示す情報と、前記ドメインにおけるユーザー識別情報とを含むことを特徴とする請求項1又は2に記載の認可サーバー。
  4. 前記認可トークン検証リクエストは、前記認可トークンと共に前記クライアントから処理リクエストを受け付けたアプリケーションサーバーから受信され、
    前記ローカルユーザー情報は、前記アプリケーションサーバーにより、前記処理リクエストの要求元のユーザーの識別のために用いられることを特徴とする請求項3に記載の認可サーバー。
  5. テナントごとのローカル認証連携モードを格納する手段と、
    クライアントから認可トークンとともに処理リクエストを受信すると、認可サーバーに対して認可トークン検証リクエストを送信し、前記認可トークン検証リクエストが成功した応答として、前記認可トークンと関連付けられたローカルユーザー情報を含む認可トークン情報を受信する手段と、
    前記ローカルユーザー情報で示されるユーザーまたは前記クライアントに対して前記処理リクエストを処理する処理手段と
    を有することを特徴とするアプリケーションサーバー。
  6. テナントごとのローカル認証連携モードを格納する手段を更に有し、
    前記認可トークン情報には、前記クライアントのテナントの識別情報がさらに含まれており、
    前記処理手段は、前記テナントの識別情報で示されるテナントの前記ローカル認証連携モードが連携を示している場合には、前記ローカルユーザー情報で示されるユーザーに対して前記処理リクエストを処理し、連携を示していない場合には、前記処理リクエストを送信したクライアントに対して前記処理リクエストを処理することを特徴とする請求項5に記載のアプリケーションサーバー。
  7. 認可サーバーとアプリケーションサーバーとを含む認証連携システムであって、
    前記認可サーバーは、
    認可トークン生成リクエストに応じてクライアント情報に基づいたクライアントの認証が成功した場合には、前記クライアントに対して認可トークンを応答し、前記認可トークン生成リクエストとともに受信したローカルユーザー情報を前記認可トークンと関連付けた認可トークン情報を生成して格納する手段と、
    前記クライアントから前記認可トークンとともに処理リクエストを受けたアプリケーションサーバーから、前記認可トークンを含む認可トークン検証リクエストを受信し、受信した前記認可トークンと前記認可トークン情報とに基づいた認可トークンの検証が成功した場合には、前記認可トークン情報に含まれる前記ローカルユーザー情報を前記アプリケーションサーバーへ応答する応答手段とを有し、
    前記アプリケーションサーバーは、
    クライアントから前記認可トークンとともに処理リクエストを受信すると、前記認可サーバーに対して前記認可トークン検証リクエストを送信し、前記認可トークン検証リクエストが成功した応答として、前記認可トークンと関連付けられた前記ローカルユーザー情報を含む前記認可トークン情報を受信する手段と、
    前記ローカルユーザー情報で示されるユーザーまたは前記クライアントに対して前記処理リクエストを処理する処理手段と
    を有することを特徴とする認証連携システム。
  8. 前記クライアント情報には、クライアントの識別情報と、該クライアントのテナントの識別情報とを含み、
    前記応答手段は、検証が成功した前記認可トークンの生成を要求したクライアントのテナントの識別情報を、前記認可トークン情報の一部として応答することを特徴とする請求項7に記載の認証連携システム。
  9. 前記ローカルユーザー情報は、ローカル認証サーバーにより認証されたユーザーのアクセス可能なドメインを示す情報と、前記ドメインにおけるユーザー識別情報とを含むことを特徴とする請求項7又は8に記載の認証連携システム。
  10. 前記認可トークン検証リクエストは、前記認可トークンと共に前記クライアントから処理リクエストを受け付けた前記アプリケーションサーバーから受信され、
    前記ローカルユーザー情報は、前記アプリケーションサーバーにより、前記処理リクエストの要求元のユーザーの識別のために用いられることを特徴とする請求項9に記載の認証連携システム。
  11. 前記アプリケーションサーバーは、テナントごとのローカル認証連携モードを格納する手段を更に有し、
    前記認可トークン情報には、前記クライアントのテナントの識別情報がさらに含まれており、
    前記処理手段は、前記テナントの識別情報で示されるテナントの前記ローカル認証連携モードが連携を示している場合には、前記ローカルユーザー情報で示されるユーザーに対して前記処理リクエストを処理し、連携を示していない場合には、前記処理リクエストを送信したクライアントに対して前記処理リクエストを処理することを特徴とする請求項7乃至10のいずれか一項に記載の認証連携システム。
  12. コンピュータを、
    認可トークン生成リクエストに応じてクライアント情報に基づいたクライアントの認証が成功した場合には、前記クライアントに対して認可トークンを応答し、前記認可トークン生成リクエストとともに受信したローカルユーザー情報を前記認可トークンと関連付けた認可トークン情報を生成して格納する手段と、
    前記クライアントから前記認可トークンとともに処理リクエストを受けたアプリケーションサーバーから、前記認可トークンを含む認可トークン検証リクエストを受信し、受信した前記認可トークンと前記認可トークン情報とに基づいた認可トークンの検証が成功した場合には、前記認可トークン情報に含まれる前記ローカルユーザー情報を前記アプリケーションサーバーへ応答する応答手段と
    して機能させるためのプログラム。
  13. コンピュータを、
    テナントごとのローカル認証連携モードを格納する手段と、
    クライアントから認可トークンとともに処理リクエストを受信すると、認可サーバーに対して認可トークン検証リクエストを送信し、前記認可トークン検証リクエストが成功した応答として、前記認可トークンと関連付けられたローカルユーザー情報を含む認可トークン情報を受信する手段と、
    前記ローカルユーザー情報で示されるユーザーまたは前記クライアントに対して前記処理リクエストを処理する処理手段と
    して機能させるためのプログラム。
  14. 認可サーバーとアプリケーションサーバーとを含む認証連携システムにより実行される認証連携方法であって、
    前記認可サーバーが、認可トークン生成リクエストに応じてクライアント情報に基づいたクライアントの認証が成功した場合には、前記クライアントに対して認可トークンを応答し、前記認可トークン生成リクエストとともに受信したローカルユーザー情報を前記認可トークンと関連付けた認可トークン情報を生成して格納し、
    前記アプリケーションサーバーが、クライアントから前記認可トークンとともに処理リクエストを受信すると、前記認可サーバーに対して前記認可トークン検証リクエストを送信し、
    前記認可サーバーが、前記クライアントから前記認可トークンとともに処理リクエストを受けたアプリケーションサーバーから、前記認可トークンを含む認可トークン検証リクエストを受信し、受信した前記認可トークンと前記認可トークン情報とに基づいた認可トークンの検証が成功した場合には、前記認可トークン情報に含まれる前記ローカルユーザー情報を前記アプリケーションサーバーへ応答し、
    前記アプリケーションサーバーが、前記認可トークン検証リクエストが成功した応答として、前記認可トークンと関連付けられた前記ローカルユーザー情報を含む前記認可トークン情報を受信し、前記ローカルユーザー情報で示されるユーザーまたは前記クライアントに対して前記処理リクエストを処理する
    ことを特徴とする認証連携方法。
JP2015239749A 2015-12-08 2015-12-08 認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラム Active JP6677496B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2015239749A JP6677496B2 (ja) 2015-12-08 2015-12-08 認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラム
US15/364,824 US9853963B2 (en) 2015-12-08 2016-11-30 Authorization server, authentication cooperation system, and storage medium storing program
CN201611101404.5A CN106856475B (zh) 2015-12-08 2016-12-02 授权服务器以及认证协作系统
DE102016123651.9A DE102016123651B4 (de) 2015-12-08 2016-12-07 Authentisierungskooperationssystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015239749A JP6677496B2 (ja) 2015-12-08 2015-12-08 認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラム

Publications (2)

Publication Number Publication Date
JP2017107342A true JP2017107342A (ja) 2017-06-15
JP6677496B2 JP6677496B2 (ja) 2020-04-08

Family

ID=58722494

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015239749A Active JP6677496B2 (ja) 2015-12-08 2015-12-08 認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラム

Country Status (4)

Country Link
US (1) US9853963B2 (ja)
JP (1) JP6677496B2 (ja)
CN (1) CN106856475B (ja)
DE (1) DE102016123651B4 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106330988B (zh) * 2015-06-16 2020-01-03 阿里巴巴集团控股有限公司 一种超文本传输请求的补发方法、装置及客户端
US10621272B1 (en) * 2017-07-21 2020-04-14 Slack Technologies, Inc. Displaying a defined preview of a resource in a group-based communication interface
WO2019036390A1 (en) * 2017-08-14 2019-02-21 Zumigo, Inc. MOBILE NUMBER VERIFICATION FOR AUTHENTICATION BASED ON A MOBILE NETWORK
US10355864B2 (en) 2017-08-29 2019-07-16 Citrix Systems, Inc. Policy based authentication
JP6473879B1 (ja) 2017-10-12 2019-02-27 宜浩 川村 クライアントサーバシステム
JP2019106629A (ja) * 2017-12-12 2019-06-27 キヤノン株式会社 情報処理システム、制御方法及びそのプログラム
CN108616502B (zh) * 2018-03-12 2020-11-06 广东睿江云计算股份有限公司 一种web安全存储的方法
CN109379336B (zh) * 2018-09-18 2021-07-09 中汇信息技术(上海)有限公司 一种统一认证方法、分布式系统和计算机可读存储介质
CN109286627A (zh) * 2018-10-10 2019-01-29 四川长虹电器股份有限公司 基于双因子认证的身份认证方法
US11245682B2 (en) * 2018-10-18 2022-02-08 Oracle International Corporation Adaptive authorization using access token
CN110336776B (zh) * 2019-04-28 2021-09-28 杭州电子科技大学 一种基于用户图像智能采集的多点协同认证系统及方法
CN110134531A (zh) * 2019-05-06 2019-08-16 广州华多网络科技有限公司 虚拟资产流转数据的处理方法、装置和计算机设备
US11182086B2 (en) * 2019-07-19 2021-11-23 Cignet Technology, Inc. Method and system for application-based management of user data storage rights
CN110768968B (zh) * 2019-10-11 2022-08-19 支付宝(杭州)信息技术有限公司 基于可验证声明的授权方法、装置、设备及系统
CN110990796B (zh) * 2019-11-26 2022-02-11 广州至真信息科技有限公司 一种应用处理方法、装置、应用服务器和存储介质
CN111343262B (zh) * 2020-02-20 2022-04-29 中国建设银行股份有限公司 分布式集群登录方法、装置、设备和存储介质
CN111597365B (zh) * 2020-04-27 2023-03-28 国网内蒙古东部电力有限公司 基于图元特征属性的变电站svg图形和模型关联校验方法
CN114040398A (zh) * 2020-07-21 2022-02-11 中国电信股份有限公司 服务质量保障提供方法、系统、网络设备和存储介质
CN113810426B (zh) * 2021-09-30 2023-04-07 完美世界(北京)软件科技发展有限公司 即时通讯服务的接入系统及方法、装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013041552A (ja) * 2011-08-19 2013-02-28 Canon Inc 連携サーバおよびその制御方法、印刷システム、およびプログラム
JP2013508854A (ja) * 2009-10-23 2013-03-07 マイクロソフト コーポレーション クラウド認証を使用する認証
JP2013246655A (ja) * 2012-05-25 2013-12-09 Canon Inc 認可サーバー及びクライアント装置、サーバー連携システム、トークン管理方法
US20150180948A1 (en) * 2012-07-06 2015-06-25 Zte Corporation United cloud disk client, server, system and united cloud disk serving method

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7324972B1 (en) * 1997-03-07 2008-01-29 Clickshare Service Corporation Managing transactions on a network: four or more parties
US6510236B1 (en) 1998-12-11 2003-01-21 International Business Machines Corporation Authentication framework for managing authentication requests from multiple authentication devices
US7221935B2 (en) * 2002-02-28 2007-05-22 Telefonaktiebolaget Lm Ericsson (Publ) System, method and apparatus for federated single sign-on services
US7685206B1 (en) 2004-02-12 2010-03-23 Microsoft Corporation Authorization and access control service for distributed network resources
US7519596B2 (en) 2004-03-30 2009-04-14 Microsoft Corporation Globally trusted credentials leveraged for server access control
US8010783B1 (en) * 2004-04-15 2011-08-30 Aol Inc. Service provider invocation
US10140596B2 (en) * 2004-07-16 2018-11-27 Bryan S. M. Chua Third party authentication of an electronic transaction
US8151116B2 (en) * 2006-06-09 2012-04-03 Brigham Young University Multi-channel user authentication apparatus system and method
US8239927B2 (en) * 2008-02-29 2012-08-07 Microsoft Corporation Authentication ticket validation
US20090271847A1 (en) * 2008-04-25 2009-10-29 Nokia Corporation Methods, Apparatuses, and Computer Program Products for Providing a Single Service Sign-On
US20100125894A1 (en) * 2008-11-19 2010-05-20 At&T Intellectual Property I, L.P. Systems, methods and computer program products that facilitate remote access of devices in a subscriber network
CN101414907B (zh) * 2008-11-27 2011-10-26 北京邮电大学 一种基于用户身份授权访问网络的方法和系统
US20100235882A1 (en) * 2009-03-13 2010-09-16 Gidah, Inc. Method and system for using tokens in a transaction handling system
US8707404B2 (en) * 2009-08-28 2014-04-22 Adobe Systems Incorporated System and method for transparently authenticating a user to a digital rights management entity
US8739260B1 (en) * 2011-02-10 2014-05-27 Secsign Technologies Inc. Systems and methods for authentication via mobile communication device
US9648006B2 (en) * 2011-05-23 2017-05-09 Twilio, Inc. System and method for communicating with a client application
US20140044123A1 (en) * 2011-05-23 2014-02-13 Twilio, Inc. System and method for real time communicating with a client application
CN102546648B (zh) * 2012-01-18 2015-04-01 Ut斯达康通讯有限公司 一种资源访问授权的方法
US10176335B2 (en) 2012-03-20 2019-01-08 Microsoft Technology Licensing, Llc Identity services for organizations transparently hosted in the cloud
CN102638473B (zh) * 2012-05-04 2014-12-10 盛趣信息技术(上海)有限公司 一种用户数据授权方法、装置及系统
US11424930B2 (en) * 2012-05-22 2022-08-23 Barclays Bank Delaware Systems and methods for providing account information
JP6066647B2 (ja) 2012-09-27 2017-01-25 キヤノン株式会社 デバイス装置、その制御方法、およびそのプログラム
GB2509895A (en) * 2012-11-22 2014-07-23 Visa Europe Ltd Activation and Use of a Digital Wallet via Online Banking
US9374369B2 (en) * 2012-12-28 2016-06-21 Lookout, Inc. Multi-factor authentication and comprehensive login system for client-server networks
US20140245411A1 (en) * 2013-02-22 2014-08-28 Nokia Corporation Method and apparatus for providing account-less access via an account connector platform
JP6177020B2 (ja) 2013-06-18 2017-08-09 キヤノン株式会社 認証システム、その制御方法、サービス提供装置およびコンピュータプログラム
SG10201800626RA (en) * 2013-07-24 2018-02-27 Visa Int Service Ass Systems and methods for interoperable network token processing
US10496986B2 (en) * 2013-08-08 2019-12-03 Visa International Service Association Multi-network tokenization processing
US9106642B1 (en) * 2013-09-11 2015-08-11 Amazon Technologies, Inc. Synchronizing authentication sessions between applications
US20150281225A1 (en) * 2014-03-27 2015-10-01 Microsoft Corporation Techniques to operate a service with machine generated authentication tokens
CN106462843A (zh) 2014-05-13 2017-02-22 维萨国际服务协会 用于安全远程支付处理的主小应用程序
US20150339663A1 (en) 2014-05-21 2015-11-26 Mastercard International Incorporated Methods of payment token lifecycle management on a mobile device
US9419962B2 (en) * 2014-06-16 2016-08-16 Adobe Systems Incorporated Method and apparatus for sharing server resources using a local group
US20160065552A1 (en) * 2014-08-28 2016-03-03 Drfirst.Com, Inc. Method and system for interoperable identity and interoperable credentials
US9420463B2 (en) 2014-09-30 2016-08-16 Sap Se Authorization based on access token
US9871821B2 (en) 2014-11-11 2018-01-16 Oracle International Corporation Securely operating a process using user-specific and device-specific security constraints
US9794329B2 (en) 2014-11-28 2017-10-17 Sap Se Cloud application with secure local access
KR20170091138A (ko) 2014-12-09 2017-08-08 캐논 가부시끼가이샤 정보 처리 장치, 정보 처리 장치의 제어 방법, 정보 처리 시스템, 및 저장 매체
CN104639562B (zh) * 2015-02-27 2018-03-13 飞天诚信科技股份有限公司 一种推送认证的系统和设备的工作方法
US10148522B2 (en) 2015-03-09 2018-12-04 Avaya Inc. Extension of authorization framework
US10104084B2 (en) 2015-07-30 2018-10-16 Cisco Technology, Inc. Token scope reduction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013508854A (ja) * 2009-10-23 2013-03-07 マイクロソフト コーポレーション クラウド認証を使用する認証
JP2013041552A (ja) * 2011-08-19 2013-02-28 Canon Inc 連携サーバおよびその制御方法、印刷システム、およびプログラム
JP2013246655A (ja) * 2012-05-25 2013-12-09 Canon Inc 認可サーバー及びクライアント装置、サーバー連携システム、トークン管理方法
US20150180948A1 (en) * 2012-07-06 2015-06-25 Zte Corporation United cloud disk client, server, system and united cloud disk serving method

Also Published As

Publication number Publication date
US20170163635A1 (en) 2017-06-08
JP6677496B2 (ja) 2020-04-08
US9853963B2 (en) 2017-12-26
DE102016123651A1 (de) 2017-06-08
DE102016123651B4 (de) 2023-10-05
CN106856475B (zh) 2020-11-10
CN106856475A (zh) 2017-06-16

Similar Documents

Publication Publication Date Title
JP6677496B2 (ja) 認証連携システム及び認証連携方法、認可サーバー、アプリケーションサーバー及びプログラム
JP6682254B2 (ja) 認証連携システム及び認証連携方法、認可サーバー及びプログラム
US20220276910A1 (en) Dynamically integrating a client application with third-party services
US9455970B2 (en) Information processing system, information processing apparatus, and authentication method
US9230078B2 (en) Authentication system, control method thereof, service provision device, and storage medium
US11799841B2 (en) Providing intercommunication within a system that uses disparate authentication technologies
JP6124687B2 (ja) 画像形成装置、サーバー装置、情報処理方法及びプログラム
US20120229838A1 (en) Print server, printing system, control method, and computer-readable medium
JP6248641B2 (ja) 情報処理システム及び認証方法
JP5988699B2 (ja) 連携システム、その連携方法、情報処理システム、およびそのプログラム。
JP6064636B2 (ja) 情報処理システム、情報処理装置、認証方法及びプログラム
JP2014092823A (ja) システム及びサービス提供装置
JP2013041552A (ja) 連携サーバおよびその制御方法、印刷システム、およびプログラム
US10496342B2 (en) Printing system, method, and program for implementing service coordination among a plurality of security domains
JP6197286B2 (ja) 通信装置、情報処理システム及び情報処理システムの制御方法
JP2016009466A (ja) Webサービスシステム、認証認可装置、情報処理装置、情報処理方法及びプログラム
US10735399B2 (en) System, service providing apparatus, control method for system, and storage medium
JP6237868B2 (ja) クラウドサービス提供システム及びクラウドサービス提供方法
JP6303312B2 (ja) サービス提供システム及び画像提供方法
JP6447766B2 (ja) サービス提供システム、データ提供方法及びプログラム
JP6848275B2 (ja) プログラム、認証システム及び認証連携システム
JP2015118459A (ja) 画像形成装置、情報端末、サーバ装置、データ処理システム、画像形成装置の通信方法、情報端末の通信方法、サーバ装置の通信方法、及びプログラム
JP2013235338A (ja) ストレージサービスシステム
JP2014186707A (ja) 文書生成システム
US20230388311A1 (en) Network system and control method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191018

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191024

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: 20200214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200313

R151 Written notification of patent or utility model registration

Ref document number: 6677496

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151