JP2014203267A - システムおよびその制御方法、アクセス管理サービスシステムおよびその制御方法、並びにプログラム - Google Patents

システムおよびその制御方法、アクセス管理サービスシステムおよびその制御方法、並びにプログラム Download PDF

Info

Publication number
JP2014203267A
JP2014203267A JP2013078986A JP2013078986A JP2014203267A JP 2014203267 A JP2014203267 A JP 2014203267A JP 2013078986 A JP2013078986 A JP 2013078986A JP 2013078986 A JP2013078986 A JP 2013078986A JP 2014203267 A JP2014203267 A JP 2014203267A
Authority
JP
Japan
Prior art keywords
user
service
authority
service system
client
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
JP2013078986A
Other languages
English (en)
Other versions
JP6141076B2 (ja
Inventor
俊介 茂垣
Shunsuke Mogaki
俊介 茂垣
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 JP2013078986A priority Critical patent/JP6141076B2/ja
Priority to US14/216,236 priority patent/US9282104B2/en
Publication of JP2014203267A publication Critical patent/JP2014203267A/ja
Application granted granted Critical
Publication of JP6141076B2 publication Critical patent/JP6141076B2/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/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/104Grouping of entities
    • 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/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】クラウドサービス同士の連携において、外部サービスに対してユーザーの権限を委譲する技術がある。ここで、ユーザーによって認可されていたとしても、特定の外部サービス以外からはユーザーの情報にアクセスさせてはいけない場合がある。
【解決手段】リソースサービスシステムが提供するサービスの利用を管理するアクセス管理サービスシステムであって、前記サービスを利用する権限を有するユーザーからの指示に起因して前記クライアントシステムから当該サービスに対する利用の認可要求を受け付けた場合、前記ユーザーが所属するグループと前記クライアントシステムが所属するグループとが一致するか否かを判定する判定手段と、前記判定手段によりグループが一致すると判定された場合、前記ユーザーの権限を前記クライアントシステムに委譲することを許可するか否かを指示するための画面を前記ユーザーに提示する提示手段とを有する。
【選択図】 図1

Description

本願発明は、システムおよびその制御方法、アクセス管理サービスシステムおよびその制御方法、並びにプログラムに関する。
近年、クラウドが一般化するに伴い、複数のサービス(文書作成サービスなど)を連携させて付加価値を創造する機会が増加している。一方、サービスが連携することにより、いくつかの課題が生まれる。
例えば、サービス間の連携により、ユーザーが望んだ以上の情報がサービス間で交換されるため、ユーザーデータや個人情報の漏えいリスクがある。例えば、様々なサービス間でサービス連携が実現される際に、ユーザーが望む結果を提供するサービス以外のサービスがユーザーデータ、個人情報等を取得することは望ましくない。一方で、サービスの提供者からすると、サービス連携の仕組みは容易に実装できるものが好ましい。
このような状況において、OAuthと呼ばれる、認可の連携を実現させるための標準プロトコルが策定されている(例えば、非特許文献1参照)。OAuthによれば、例えばあるサービスAが管理するユーザーのデータに、そのユーザーから認められた外部サービスBがアクセスすることができる。このときサービスAは、外部サービスBからアクセスされる範囲を明らかにした上で、外部サービスBによるアクセスに対してユーザーの明示的な認可を得ることになっている。ユーザーが明示的に認可を行うことを“認可操作”と称する。
ユーザーが認可操作を行うと、外部サービスBはサービスAからアクセスを認められたことを証明するトークン(以下、“認可トークン”と称する)を受け取り、以降のアクセスはその認可トークンを用いて実現できる。これにより、ユーザーのサービスAの権限を、外部サービスBに委譲する事ができる。そして、認可トークンを用いると外部サービスBは、ユーザーの認証情報なしに、認可を行ったユーザーの権限でサービスAにアクセスできる。これに伴い、ユーザーから認可を受け認可トークンを取得した外部サービスBは、その認可トークンを厳重かつ適正に管理する責務を負う。
さらにOAuthによれば、権限を委譲する側の確認に加え、権限が委譲される側の確認も行う事ができる。例えば、ユーザーが外部サービスBに対してサービスAへのアクセスを認可する際に、ユーザーがサービスAの利用権限を持つかの確認と、外部サービスBがサービスAの利用権限を持つかの確認を行う事ができる。
また権限が委譲される側の確認について、ユーザーが認可操作をする際に、権限を委譲する外部サービスを明示的に指定する方法がある(例えば、参考文献1)。この方法により外部サービスを制限しながら、認可によるサービス連携が行える。
特表2006−254464号公報
D.Hardt、"The OAuth 2.0 Authorization Framework"、[online]、2012年7月31日、[平成25年3月25日検索]、インターネット<URL: http://tools.ietf.org/html/draft-ietf-oauth-v2-31>
認可によるサービス連携において、ユーザーに認可されていたとしても、特定の外部サービス以外からはアクセスさせたくない場合がある。例えば、A社の社内システムである外部サービスXとクラウドサービスYとを連携させる場合がある。A社のユーザーAがクラウドサービスYを利用する権限を持つ場合、外部サービスXに対してクラウドサービスの利用権限を委譲すると、外部サービスXはクラウドサービスY上のA社の情報にアクセスできるようになる。
ここで、クラウドサービスYは、同一のサービス上で複数の会社の情報をテナントという単位で管理するモデルであるとする。その場合、クラウドサービスYには、A社とは別テナントとしてB社が存在し、かつクラウドサービスYの利用権限を持つB社のユーザーBが存在する場合がある。このユーザーBが外部サービスXに対してクラウドサービスYの利用権限を委譲すると、外部サービスXはクラウドサービスY上のB社の情報にアクセスできるようになる。この場合、A社の社内システムである外部サービスXが、B社の情報にアクセスできてしまうため、セキュリティ上問題となると考えられる。このように、例えユーザーから認可されていても、外部サービスによってはアクセスを許可してはいけない場合が考えられる。
しかしながら、現状のOAuthでは、ユーザーBと外部サービスXのそれぞれがクラウドサービスYの利用権限を持っている場合には、ユーザーBから外部サービスXに対してクラウドサービスYの利用権限が委譲出来てしまう。そのため、外部サービスXがB社の情報にアクセスできないようにするためには、クラウドサービスYにおいて、外部サービスXがアクセスできる情報の範囲を管理する必要がある。
しかし、この方法では認可操作自体は防げないため、無駄な権限委譲の処理が行えてしまうという課題を持つ。つまり、上記の方法では認可操作自体は防げないため、ユーザーBが認可操作を行い、外部サービスXに対してクラウドサービスYの利用権限を委譲することにより、認可トークンを発行できる。しかし、外部サービスXがこの認可トークンを利用してクラウドサービスYにアクセスしようとすると、クラウドサービスYでの判定により、権限がないとしてアクセスが拒否される。このように、利用できない権限の委譲が行えてしまい、利用できない認可トークンを無駄に発行出来てしまう。また、ユーザーが外部サービスに対して、外部サービスがアクセスできない情報へのアクセス権を委譲できることは好ましくない。
また、上記の方法はクラウドサービス側の負担が大きいという課題も持つ。例えば、クラウドサービスが全テナントそれぞれに対して、アクセスできる外部サービスを管理する必要がある。その上、外部サービスからアクセス要求があるたびに、クラウドサービスがアクセス可否判定を行う必要もある。
上記課題を解決するために本願発明は以下の構成を有する。すなわち、サービスを提供するリソースサービスシステムと、前記サービスの利用を管理するアクセス管理サービスシステムとを含むシステムであって、前記アクセス管理サービスシステムは、ユーザーの情報およびクライアントシステムの情報を記憶部に保持する保持手段と、前記サービスを利用する権限を有するユーザーからの指示に起因して前記クライアントシステムから当該サービスに対する利用の認可要求を受け付けた場合、前記記憶部にて保持する情報に基づいて、前記ユーザーが所属するグループと前記クライアントシステムが所属するグループとが一致するか否かを判定する判定手段と、前記判定手段によりグループが一致すると判定された場合、前記ユーザーの権限を前記クライアントシステムに委譲することを許可するか否かを指示するための画面を前記ユーザーに提示する提示手段とを有し、前記リソースサービスシステムは、前記画面を介してユーザーの権限の委譲を許可することが指示されたことに応じて発行されるアクセス制御情報を前記クライアントシステムから受信した場合、前記アクセス制御情報の正当性が確認されたことに応じてサービスを提供する提供手段とを有する。
本願発明により、サービス連携において、無駄な権限委譲が防げる。また、サービス連携を行う際に、クラウドサービス側の負担を増やすことなく、適切な情報の範囲で認可連携を行う事ができる。
システム全体図。 サーバーのハードウェアの構成例の図。 外部サービスシステムのソフトウェアの構成例の図。 アクセス管理サービスシステムのソフトウェアの構成例の図。 リソースサービスシステムのソフトウェアの構成例の図。 外部サービスシステムが保持するデータ構造を示したテーブルの例を示す図。 アクセス管理サービスシステムが保持するアカウントテーブルの例を示す図。 アクセス管理サービスシステムが保持する認可トークンのデータ構造を示したテーブルの図。 アクセス管理サービスシステムが保持するクライアント証明書のデータ管理テーブルの図。 認可トークン発行のフローチャート。 認可画面の一例を示した図。 シングルテナントクライアント発行処理のフローチャート。 マルチテナントクライアント発行処理のフローチャート。 マルチテナントクライアント作成のためのクライアント証明書登録のフローチャート。 クライアント発行画面の一例を示した図。 クライアント発行処理のフローチャート。
以下、本発明を実施するための形態について図面を用いて説明する。
<実施形態1>
インターネット上で、様々なサービス提供者が様々なオンラインサービスを提供している。単一のサービス提供者が運営している単体のオンラインサービスもあれば、複数のサービス提供者が運営している複数のオンラインサービスを組み合わせて、1つのソリューションを実現するという手法も存在する。後者は、「マッシュアップ」と呼ばれ、表向きはあたかも1つのWebサイトあるいはWebサービスとして見える。しかしながら、実際にはバックエンドでは、複数のオンラインサービスが連携・連動して、必要な機能を組み合わせてソリューションを実現する。なお、ここで言うオンラインサービスとは、Webサイト、Webアプリケーション、Webサービスなどが提供する機能群のことである。Webサイト、Webアプリケーション、Webサービスなどは、サーバーコンピューターで実行されるソフトウェアである。
また、本明細書内で述べる認可トークン、リフレッシュトークン、認可コード等の用語は、OAuthにて定義されているものであり、これに準ずるものとする。
[システム構成]
図1は、各種オンラインサービスが存在するネットワーク構成を示している。インターネット100は、インターネットなどの外部から接続可能なパブリックなネットワークである。イントラネット101は、LAN(Local Area Network)などの外部から接続不可能なプライベートなネットワークである。
情報機器端末102は、インターネット100を介してオンラインサービスを利用する際に使用されるパーソナルコンピューターやモバイル端末などの情報処理装置である。OAuthにおいては、情報機器端末102を操作するユーザーを“オーナー”、情報機器端末102が備えるWebブラウザを“ユーザーエージェント”と呼ぶ。
外部サービスシステム103は、後述するリソースサービスシステム105をオンラインでマッシュアップしたオンラインサービスシステムである。外部サービスシステム103は、OAuthにおいては“クライアント”と呼ばれるため、本実施形態では外部サービスシステム103をクライアント(または、クライアントシステム)と称することもある。
アクセス管理サービスシステム104は、ユーザーの認証情報及び認可情報を管理する認可サービスシステムである。OAuthにおいては“認可サーバー”と呼ばれる。
リソースサービスシステム105は、印刷サービスや帳票サービスといったリソースサービスを提供しているオンラインサービスシステムである。OAuthにおいては“リソースサーバー”と呼ばれる。リソースサービスシステム105は、インターネット100を介した情報機器端末102あるいは外部サービスシステム103からのリクエストに応じて、リソースサービスを提供する。なおリソースサービスシステムに設置されるリソースサービスは1つでもよく、複数でもよい。
なお、情報機器端末102、外部サービスシステム103、アクセス管理サービスシステム104、およびリソースサービスシステム105はそれぞれ個別のLAN上に構成されていてもよいし、同一のLAN上に構成されていてもよい。また、アクセス管理サービスシステム104とリソースサービスシステム105は物理的に同一の装置上に構成されていてもよい。
認可サーバー、およびリソースサーバーは1台ではなく複数台で構成されるサーバー群であっても良い。認可サーバーシステムと称した場合、認可サービスモジュールを備えた1台のサーバー、または複数台のサーバー群を指す。また、リソースサーバーシステムについても同様で、リソースサービスを備えた1台のサーバー、または複数台のサーバーを指す。
[ハードウェア構成]
図2は、図1に示した各種サービスが配置されているサーバーのハードウェア構成の例である。ユーザーインターフェース201は、ディスプレイ、キーボード、マウスなどの情報の入出力を行うためのハードウェアである。これらのハードウェアを備えないコンピューターは、リモートデスクトップなどにより、他のコンピューターから接続・操作することも可能である。
ネットワークインターフェース202は、LANなどのネットワークに接続して、他のコンピューターやネットワーク機器との通信を行うハードウェアである。CPU203は、ROM204、RAM205、二次記憶装置206などから読み込んだプログラムを実行し、各種サービスを実現する。ROM204は、組込済みプログラムおよびデータが記録されている記憶装置である。RAM205は、一時メモリ領域である。二次記憶装置206は、HDDに代表されるような外部記憶装置である。各部は入出力インターフェース207を介して接続されている。
[ソフトウェア構成]
図3は、外部サービスシステム103のソフトウェア構成の例を示したブロック図である。
リクエスト処理部301は、外部サービスシステム103がインターネット100を経由して受信した機能リクエストを処理する。機能制御部302は、リクエスト処理部301からの要求を受け、要求に応じて必要な処理を行い、応答データを呼び出し元に返す。機能連携データ303は、外部サービスシステム103が連携しているシステムに対するリクエストを生成するためのデータを管理する。認可コード管理部304は、認可コードのデータを管理する。トークン管理部305は、認可情報のデータを管理する。
図4は、アクセス管理サービスシステム104のソフトウェア構成の例を示したブロック図である。
アクセス管理リクエスト処理部401は、アクセス管理サービスシステム104がインターネット100及びイントラネット101を経由して受信した認証および認可リクエストを処理する。また、アクセス管理リクエスト処理部401は、アクセス制御部402から返される応答データを呼び出し元に返す。アクセス制御部402は、認証データ管理部403及び認可データ管理部404から取得するデータに基づき、認証および認可リクエストに対して応答データを生成し、アクセス管理リクエスト処理部401に応答データを返す。認証データ管理部403は、ユーザーアカウントのデータを管理する。認可データ管理部404は、認可情報のデータを管理する。
図5は、リソースサービスシステム105のソフトウェア構成の例を示したブロック図である。
リクエスト処理部501は、インターネット100を経由してリソースサービスへのリクエストを受け取る。例えばリソースサービスが帳票サービスの場合、リクエスト処理部501は、リクエストとして帳票データ生成リクエスト及び帳票データ取得リクエストを受信する。機能制御部502は、リクエスト処理部501が受信したリクエストに応じて必要な処理を行い、応答データを呼び出し元に返す。また、機能制御部502は、イントラネット101経由でアクセス管理サービスシステム104に対して認証リクエストを送信し、認証結果を受信する。また、機能制御部502は、アクセス管理サービスシステム104に対して認可確認リクエストを送信し、認可確認結果を受信する。処理部503は、機能制御部502からのリクエストを受信して、リクエストに応じた処理を行い、機能制御部502に返す。例えば帳票サービスの場合、処理部503は、帳票データ生成リクエストを受信して、帳票データを生成する。
[管理テーブルの構成例]
図6は、外部サービスシステム103が保持する認可情報および外部サービスシステムの管理情報のデータ構造の例をテーブル形式で示した図である。認可情報および認可に関連する情報は認可情報管理テーブル600にて管理され、外部サービスシステムの管理情報は連携サービス情報テーブル610で管理される。
図6(a)に示す認可情報管理テーブル600は、連携システムを示すクライアントID601、認可情報を示す認可トークンID602、更新認可情報を示すリフレッシュトークンID603、および、システム名を示す連携先システム名604を含む。クライアントID601には、図1の外部サービスシステム103を一意に識別するためのID(識別子)を保存する。認可トークンID602には、アクセス管理サービスシステム104が発行するアクセス制御情報である認可トークンを一意に識別するためのIDを保存する。リフレッシュトークンID603には、アクセス管理サービスシステム104が発行するリフレッシュトークンを一意に識別するためのIDを保存する。
図6(b)に示す連携サービス情報テーブル610は、外部サービスシステム103を認証するためのクライアントID611、パスワード612、認可時に利用するエンドポイントURL613、およびリダイレクトURL614を含む。クライアントID611とパスワード612は、後述のアクセス管理サービスシステム104が発行した情報であり、後述のユーザーテーブル700に同じ情報が記憶される。さらに、リダイレクトURL614も、後述のクライアントテーブル710に同じ情報が記憶される。なお、エンドポイントURL613は、アクセス管理サービスシステム104が公開する、OAuthのためのエンドポイントのURLである。図6の各データ構造に格納されるデータの処理詳細については後述する。
図7は、アクセス管理サービスシステム104が保持するユーザー情報およびシステム情報のデータ構造の例をテーブル形式で示した図である。ユーザー情報はユーザーテーブル700にて管理され、システム情報はクライアントテーブル710で管理される。
ここで管理されているユーザー情報は、アクセス管理サービスシステム104が管理しているユーザーおよび外部サービスシステムのアカウント情報である。なお、外部サービスシステムのアカウント情報は、後述のOAuthのシーケンスで、認可サーバーがクライアント認証するために利用する認証情報である。本実施形態においては、クライアントである外部サービスシステム103のアカウントが登録されている。
図7(a)に示すユーザーテーブル700は、ユーザーID701、パスワード702、ユーザー種別703、およびテナントID704を含む。ユーザー種別703は、そのアカウントがユーザーであるか、クライアントであるかを示す。更に、ユーザー種別703がクライアントである場合は、アクセスできる情報が制限されていないか、制限されているかを示す。本実施形態では、アクセスできる情報が制限されていないクライアントを「マルチテナントクライアント」、アクセスできる情報が制限されているクライアントを「シングルテナントクライアント」と記載する。
マルチテナントクライアントは権限委譲されると、後述する所属グループに関係なく、権限委譲を行ったユーザーが所属するグループの情報にアクセス可能となる。具体的には、グループ「1000001AA」に所属しているマルチテナントクライアントが、グループ「1001AA」に所属しているユーザーから権限委譲を受けると、マルチテナントクライアントは異なるグループ「1001AA」のデータにアクセスできる。そのため、全てのユーザーから権限委譲を受けることができる。一方、シングルテナントクライアントは、後述する所属グループの定義に従い、自身が所属するグループの情報にしかアクセスできない。具体的には、グループ「1001AA」に所属しているシングルテナントクライアントは、「1001AA」内のデータにしかアクセスできない。そのため、同じグループ「1001AA」のユーザーからの権限委譲しか受け付けない。
テナントID704は、そのアカウントが所属するグループを一意に識別するための情報を示す。グループとは、アクセス管理サービスシステム104が管理しているアカウントがアクセス可能な範囲を定義しているものであり、例えば企業単位などで分けるものである。そして同一グループ内であれば、アカウントの権限に従って他のアカウントの情報や自グループの情報へのアクセスを許可する。具体的には、グループ「1001AA」に所属している管理者権限を持つユーザーは、グループ「1001AA」内の他のユーザーアカウント情報の参照や、グループ「1001AA」の情報の参照が行える。しかし、管理者権限を持っていても、グループ「1001AA」のユーザーは、他グループ「1002AA」のアカウント情報や、グループ「1002AA」の情報の参照はできない。
図7(b)に示すクライアントテーブル710は、クライアントID711、クライアント名712、およびリダイレクトURL713を含む。クライアントID711は、ユーザーテーブル700のユーザーID701と関連付いており、互いに参照可能となっている。クライアント名712およびリダイレクトURL713は、後述のOAuthのシーケンスで、認可トークンを発行する際に利用される値である。図7の各データ構造に格納されるデータの処理詳細については後述する。
図8は、アクセス管理サービスシステム104が保持する認可情報のデータ構造の例をテーブル形式で示した図である。認可情報テーブル800は、認可トークンID801、トークン種別802、有効期限803、スコープ804、リフレッシュトークンID805、リフレッシュ期限806、クライアントID807、およびユーザーID808を含む。図8のデータ構造に格納されるデータの処理詳細については後述する。
図9は、アクセス管理サービスシステム104が保持するクライアント証明書管理情報のデータ構造の例をテーブル形式で示した図である。証明書管理テーブル900は、クライアント証明書のシリアル番号901、Subject902、およびDN903を含む。図9のデータ構造に格納されるデータの処理詳細については後述する。
[処理フロー]
図10は、アクセス管理サービスシステム104が情報機器端末102を操作するユーザーからの要求を受け、外部サービスシステム103に対して、リソースサービスシステム105の利用を許可する認可トークンを発行するフローを示す。本例ではリソースサービスを帳票サービスとし、ユーザーが帳票生成を指示したものとして説明を行う。また、外部サービスシステム103は、アクセス管理サービスシステム104上のユーザーテーブル700(図7(a))において、ユーザーID「sys0000002」として管理されているものとする。
なお、外部サービスシステム103と帳票サービスシステム(リソースサービスシステム105)は、それぞれ別のサービス提供者が運営しているオンラインサービスシステムであるとする。また、帳票サービスシステムは、アクセス管理サービスシステム104によって、別のサービスからのアクセスが制御されている。
また、本フローにおける各処理は、処理主体におけるCPUが二次記憶装置等の記憶部に格納された本実施形態に係るプログラムをRAMに読み出して実行することにより実現される。
S1001において、情報機器端末102Aは、ユーザーAからの帳票生成要求を受け、外部サービスシステム103に対して帳票生成指示を行う。
S1002において、外部サービスシステム103は、情報機器端末102Aから帳票生成指示を受け付ける。その後、外部サービスシステム103は、認可情報管理テーブル600(図6(a))を参照し、帳票サービスシステムに対する認可トークンを所持しているかの確認を行う。
帳票サービスシステムに対する認可トークンを所持している場合(S1002にてYES)、認可トークン発行フローを終了する。帳票サービスシステムに対する認可トークンを所持していない場合(S1002にてNO)、外部サービスシステム103はS1003において、ユーザーからの帳票生成指示に起因したアクセス管理サービスシステム104に対する認可要求を行う。この認可要求には、連携サービス情報テーブル610のクライアントID601、リダイレクトURL614の情報が含まれる。この時、OAuthでは、認可を受けたい権限範囲を示すスコープを認可要求に含むよう構成する事もできる。本実施形態では、スコープとしてスコープAがリクエストされたとして説明する。
S1004において、アクセス管理サービスシステム104は、外部サービスシステム103からの認可要求を受けると、ユーザーAに対して認証処理を促す認証画面(不図示)を生成し、情報機器端末102Aが備えるWebブラウザ(不図示)に表示させる。
S1005において、情報機器端末102Aは、情報機器端末102上のWebブラウザ(不図示)に表示した認証画面を介して、ユーザーAからユーザーIDとパスワードを受け付ける。その後、情報機器端末102Aは、アクセス管理サービスシステム104に、受け付けたユーザーIDとパスワードを認証要求として送る。
S1006において、アクセス管理サービスシステム104は、情報機器端末102Aから認証要求を受け、ユーザーIDおよびパスワードを検証する。具体的には、認証要求に含まれるユーザーIDとパスワードとの組み合わせが認証データ管理部403に格納されたユーザーテーブル700(図7(a))に登録されているか否かを確認する。ユーザーIDとパスワードとの組合せがユーザーテーブル700に登録されている場合には(S1006にてYES)、アクセス管理サービスシステム104は、情報機器端末102を操作するユーザーAを帳票サービスシステムのユーザーであると判断する。その後、S1009に進み、処理を継続する。
ユーザーIDとパスワードとの組合せがユーザーテーブル700に登録されていない場合(S1006にてNO)、アクセス管理サービスシステム104は、情報機器端末102Aを操作するユーザーAを帳票サービスシステムのユーザーではないと判断する。その後、アクセス管理サービスシステム104は、外部サービスシステム103に対し、S1004の応答として認証エラーを返す。
S1007において、外部サービスシステム103は、アクセス管理サービスシステム104から認証エラーを受け取ると、認証エラー画面(不図示)を生成し、情報機器端末102Aに送る。その後、S1008において、情報機器端末102Aは、情報機器端末102Aが備えるWebブラウザ(不図示)にエラー画面を表示し、処理を終了する。
S1009において、アクセス管理サービスシステム104は、認可要求元である外部サービスシステム103のユーザー種別を判定する。このとき、アクセス管理サービスシステム104は、外部サービスシステム103のユーザーIDを用いて、ユーザーテーブル700からユーザー種別を取得する。そして、アクセス管理サービスシステム104は、要求元である外部サービスシステムがアクセスできる情報を制限されているクライアントであるか否かを判定する。アクセスできる情報が制限されていないユーザー種別であった場合は(S1009にてYES)、S1011に進む。また、アクセスできる情報が制限されているユーザー種別であった場合は(S1009にてNO)、S1010に進む。
具体的には、要求を行った外部サービスのユーザーIDが「sys0000001」である場合、ユーザーテーブル700においてユーザー種別は「マルチテナントクライアント」となる。この場合、アクセス管理サービスシステム104は、要求を行った外部サービスシステムを、アクセスできる情報が制限されていないクライアントと判断する(S1009にてYES)。一方で、要求を行った外部サービスのユーザーIDが「sys0000002」である場合、ユーザーテーブル700においてユーザー種別は「シングルテナントクライアント」となる。この場合、アクセス管理サービスシステム104は、要求を行った外部サービスを、アクセスできる情報が制限されているクライアントと判断する(S1009にてNO)。
ここで示す例では、外部サービスシステム103のユーザーIDは「sys0000002」であるため、アクセス管理サービスシステム104は、外部サービスシステム103をアクセスできる情報が制限されているクライアントであると判断する。
S1010において、アクセス管理サービスシステム104は、認可要求を行ったユーザーと外部サービスシステム103のそれぞれの所属グループを確認する。このとき、アクセス管理サービスシステム104は、ユーザーテーブル700からユーザーと外部サービスのテナントIDを取得する。そして、アクセス管理サービスシステム104は、取得したテナントIDを比較し、一致するか否かを判定する。クライアントがユーザーと同じグループに所属している場合(S1010にてYES)、アクセス管理サービスシステム104は、ユーザーがアクセスできる情報と同じ情報にクライアントがアクセスしてよいと判断し、S1010に進む。一方、クライアントとユーザーが異なるグループに所属している場合(S1010にてNO)、アクセス管理サービスシステム104は、ユーザーがアクセスできる情報にはクライアントがアクセスしてはいけないと判断し、エラーとしてS1007に進む。
ここで示す例では、外部サービスシステム103のユーザーIDは「sys0000002」であり、テナントIDは「1001AA」となる。ここで、S1006でログインしたユーザーが「uid0000001」の場合、ユーザーのテナントIDは「1001AA」となる。この場合、クライアントとユーザーが同じグループ(テナント)に所属しており、アクセス管理サービスシステム104は、外部サービスシステム103はユーザーがアクセスを許可した情報にアクセスできると判断する。一方、ユーザーが「uid0000002」である場合、ユーザーのテナントIDは「1002AA」となる。この場合、クライアントとユーザーが別グループに所属しており、アクセス管理サービスシステム104は、ユーザーがアクセスを許可してもクライアントはそのデータにアクセスしてはいけない、と判断する。
S1011において、アクセス管理サービスシステム104は、クライアントテーブル710からクライアント情報を取得し、後述する認可画面1100を生成し、情報機器端末102Aが備えるWebブラウザ(不図示)に送信する。
S1012において、情報機器端末102Aは、認可画面1100をWebブラウザを介してユーザーに提示した後、ユーザーから認可画面1100の認可ボタン1102の押下を受け付けると、アクセス管理サービスシステム104に対して認可承認を送信する。
S1013において、アクセス管理サービスシステム104は、受け取った認可承認を元に認可コードを生成し、認可情報テーブル800(図8)に格納する。この際、アクセス管理サービスシステム104は、認可情報テーブル800において、認可トークンID801に発行した認可コードのID、トークン種別802に「認可コード」、有効期限803、スコープ804に指定された「スコープA」を登録する。更に、アクセス管理サービスシステム104は、S1003の認可要求時に外部サービスシステム103から受け取ったクライアントIDをクライアントID807、認証情報に紐付くユーザーIDをユーザーID808に登録する。その後、アクセス管理サービスシステム104は、認可応答として情報機器端末102Aが備えるWebブラウザ(不図示)を外部サービスシステム103にリダイレクトさせる。この際、アクセス管理サービスシステム104は、生成した認可コードの情報を外部サービスシステム103に返す。
S1014において、外部サービスシステム103は受け取った認可コードの情報を認可情報管理テーブル600に格納する。その後、外部サービスシステム103は、アクセス管理サービスシステム104に対して認可トークン要求を行う。この要求には、認可コードに対応する認可トークンID、連携サービス情報テーブル610に格納されているクライアントIDとパスワード、およびリダイレクトURLが含まれる。
S1015において、アクセス管理サービスシステム104は、認可トークン要求を受け、外部サービスシステム103の認証を行う。具体的には、アクセス管理サービスシステム104は、認可トークン要求に含まれるクライアントIDとパスワードの組合せが、認証データ管理部403に格納されたユーザーテーブル700に登録されているかを確認する。クライアントIDとパスワードの組み合わせがユーザーテーブル700に登録されていた場合には(S1015にてYES)、アクセス管理サービスシステム104は、外部サービスシステム103を認証し、S1016に進み処理を継続する。クライアントIDおよびパスワードの組合せがクライアントテーブル710に登録されていない場合には(S1015にてNO)、アクセス管理サービスシステム104は、外部サービスシステム103を認証せず、認証エラーと判断する。その場合、アクセス管理サービスシステム104は、認証エラーを外部サービスシステム103に送信して、S1017に進む。
S1016において、アクセス管理サービスシステム104は、認可トークン要求に含まれる認可コードの検証を行う。具体的には、アクセス管理サービスシステム104は、認可コードに対応する認可トークンIDが認可情報テーブル800に登録されており、かつ有効期限内かを検証する。更に、アクセス管理サービスシステム104は、クライアントIDとリダイレクトURLの組合せが、クライアントテーブル710に登録されているかを確認する。
認可コードの検証に成功すると、アクセス管理サービスシステム104は帳票サービスの利用が許可されていると判断し(S1016にてYES)、S1018に進み、アクセス管理サービスシステム104は、処理を継続する。認可コードの検証に失敗すると、アクセス管理サービスシステム104は、帳票サービスの利用が許可されていないと判断する(S1016にてNO)。その場合、アクセス管理サービスシステム104は、認可エラーを外部サービスシステム103に送信し、S1017に進む。
S1017において、外部サービスシステム103は、アクセス管理サービスシステム104から認証エラー、あるいは認可エラーを受け取る。外部サービスシステム103は、受け取ったエラーに対応した認証エラー画面(不図示)あるいは認可エラー画面(不図示)を生成し、情報機器端末102に送る。S1008において、情報機器端末102Aは、外部サービスシステム103から受け取ったエラー画面を表示し、処理を終了する。
S1018において、アクセス管理サービスシステム104は、認可トークンを生成し、認可情報テーブル800に登録する。その際、アクセス管理サービスシステム104は、認可トークンID801に発行したトークンのID、トークン種別802に「認可トークン」、有効期限803、スコープ804を登録する。そして、アクセス管理サービスシステム104は、認可コードから引き継ぐ情報として、クライアントID807、ユーザーID808を登録する。この際、アクセス管理サービスシステム104は、認可トークンをリフレッシュするためのリフレッシュトークンを発行してもよい。リフレッシュトークンを発行した場合、アクセス管理サービスシステム104は、リフレッシュトークンID805、リフレッシュ期限806を登録する。
その後、アクセス管理サービスシステム104は、生成した認可トークンとリフレッシュトークンをS1014の応答として外部サービスシステム103に返す。
S1019において、外部サービスシステム103は、アクセス管理サービスシステム104から受け取った認可トークンおよびリフレッシュトークンを、トークン管理部305で管理される認可情報管理テーブル600に格納する。具体的には、外部サービスシステム103は、受け取った認可トークンに対応するIDを認可トークンID602に設定し、受け取ったリフレッシュトークンに対応するIDをリフレッシュトークンID603に設定する。
こうして発行した認可トークンおよびリフレッシュトークンを保存することで、認可トークン発行フローを終了する。
上記処理フローにより発行された認可トークンを利用して、外部サービスシステム103は、リソースサービスシステム105が提供する機能を利用できる。例えばリソースサービスが帳票サービスであった場合、外部サービスシステム103は発行された認可トークンを帳票サービスに渡し、帳票サービスを利用できる。以下に外部サービスシステム103が認可トークンを利用し、帳票サービスを利用する際の処理を説明する。
(認可トークンによるサービスの利用例)
帳票サービスは、アクセス管理サービスシステム104に、外部サービスシステム103から受け取った認可トークンと、帳票サービスの利用権限を含むスコープを渡し、認可トークンの検証を依頼する。
アクセス管理サービスシステム104は、受け取ったアクセストークンの検証を行う。具体的には、受け取ったアクセストークンが認可情報テーブル800に登録されているかの確認を行う。登録されている場合は、アクセス管理サービスシステム104は、有効期限803を確認し、アクセストークンが有効期間内かを判定する。さらに、アクセス管理サービスシステム104は、スコープ804を確認し、アクセストークンが指定されたスコープを持っているかを確認する。アクセストークンが登録されており、有効期間内かつ指定されたスコープを持っていた場合、アクセス管理サービスシステム104は、帳票サービスに対しアクセストークン有効を返す。アクセストークンが登録されていなかった場合や、有効期間外であった場合、もしくは、指定されたスコープを持っていなかった場合には、アクセス管理サービスシステム104は、帳票サービスに対しアクセストークン無効を返す。
アクセストークンが有効であった場合、帳票サービスは、アクセス管理サービスシステム104に認可トークンを送り、認可を行ったユーザーの情報を取得する。アクセス管理サービスシステム104は、帳票サービスから受け取った認可トークンを元に、認可情報テーブル800のユーザーID808を確認し、認可を行ったユーザーのユーザーIDを特定する。その上で、アクセス管理サービスシステム104は、認可を行ったユーザーの情報をユーザーテーブル700から取得し、帳票サービスへとユーザー情報を返す。
ここでアクセス管理サービスシステム104は、認可されたクライアントのユーザー種別を確認してもよい。認可されたクライアントがシングルテナントクライアントである場合、アクセス管理サービスシステム104は、認可を行ったユーザーのテナントIDとクライアントのテナントIDを比較する。クライアントがシングルテナントクライアントであり、ユーザーとクライアントのテナントIDが異なっている場合、クライアントは別グループのユーザー情報にアクセスできないため、アクセス管理サービスシステム104は帳票サービスへエラーを返す。
帳票サービスは、認可を行ったユーザー情報を取得すると、自身が管理している情報の内、認可を行ったユーザーが所属するグループ内の帳票データを元に帳票を生成し、外部サービスシステム103に送信する。これにより、外部サービスシステム103は、認可トークンを利用し、当該認可トークンの正当性が確認されたことに応じて帳票サービスが提供する機能を利用する事ができる。
図11は、図10のS1011において、アクセス管理サービスシステム104が生成する認可画面1100を示した図である。認可画面1100は、情報表示部1101と認可ボタン1102、認可キャンセルボタン1103から構成される。
情報表示部1101は、認可されるサービスと、認可されたサービスが実行するサービスの情報をユーザーに対して示す。本実施形態においては、認可されるサービスとは外部サービスシステム103であり、認可されたサービスが実行するサービスとはリソースサービスシステム105を指す。
認可ボタン1102は、認可を承認する際にユーザーによって押下されるボタンである。認可キャンセルボタン1103は、ユーザーが認可を拒否する場合に押下されるボタンである。
(クライアント発行処理)
図12Aおよび図12Bは、アクセス管理サービスシステム104が外部サービスシステム103を識別するためのクライアントの発行処理のフローを示した図である。本実施形態において、核クライアントは、図10のフローが実行される前に作成されて発行されているものとする。
本実施形態によると、マルチテナントクライアントは、認可されれば全てのテナントに対して処理ができるため、強い権限(第1の権限)が付与されたテナントと言える。そのため、安全性確保のため、アクセス管理サービスシステム104が許可した外部サービスのみに、マルチテナントクライアントを発行できるようにする必要がある。
一方、シングルテナントクライアントは、アクセスできる情報が制限されているテナントである。シングルテナントクライアントは、シングルテナントクライアントが所属しているグループ(テナント)内のユーザーからの認可しか受け付けない、弱い権限(第2の権限)が付与されたクライアントである。そのため各グループにおいて、管理者などテナントクライアント作成権限を持つユーザーが、自由に作成できるようにしなくてはならない。
以下の処理フローにおいて、ユーザー(発行要求者)の認証情報、およびクライアント作成の権限情報については予め定義され、記憶部に保持されているものとする。
図12Aは、アクセス管理サービスシステム104における、シングルテナントクライアントの発行処理のフローチャートである。本処理フローは、アクセス管理サービスシステム104のCPU203が、二次記憶装置206に記憶された本実施形態に係るプログラムをRAM205に読み出して実行することで実現される。
S1201において、アクセス管理サービスシステム104は、ユーザーからシングルテナントクライアントの発行要求を受け付ける。S1202において、アクセス管理サービスシステム104は、ユーザーに認証情報の入力を要求する。そして、アクセス管理サービスシステム104は、入力された情報に基づいて、ユーザーの認証を行う。
ユーザーの認証に成功した後、S1203において、アクセス管理サービスシステム104は、ユーザーの権限を確認する。ユーザーがテナントクライアント作成権限を持つ場合(S1203にてYES)、S1205に進む。ユーザーがテナントクライアント作成権限を持たない場合(S1203にてNO)、S1204へと進み、アクセス管理サービスシステム104は、S1201の応答としてエラー画面を返す。そして、本処理フローを終了する。
S1205において、アクセス管理サービスシステム104は、認証したユーザーに対応する所属グループとしてテナントIDをユーザーテーブル700から取得する。その後、S1206において、アクセス管理サービスシステム104は、取得したグループに所属するシングルテナントクライアントを、認証したユーザーの権限に基づいて作成し、ユーザーテーブル700に登録する。ここで登録するシングルテナントクライアントは、ユーザー種別が「シングルテナントクライアント」となり、テナントIDがユーザーと同じテナントIDとなる。以上により、本処理フローを終了する。
図12Bは、アクセス管理サービスシステム104における、マルチテナントクライアントの発行処理のフローチャートである。本処理フローは、アクセス管理サービスシステム104のCPU203が、二次記憶装置206に記憶された本実施形態に係るプログラムをRAM205に読み出して実行することで実現される。
S1211において、アクセス管理サービスシステム104は、ユーザーからマルチテナントクライアントの発行要求を受け付ける。S1212において、アクセス管理サービスシステム104は、ユーザーにクライアント証明書の要求を行う。ここで要求するクライアント証明書は、アクセス管理サービスシステム104が発行し、信頼できる外部サービスシステムに対して本システム外で配布したものであるとする。なお、配布方法については、特に限定するものではない。また、S1212の前に、S1202と同様にユーザーにアクセス管理サービスシステム104への認証情報の入力を要求してもよい。
ユーザーからクライアント証明書を受け付けた後、S1213において、アクセス管理サービスシステム104は、クライアント証明書の正当性の検証を行う。クライアント証明書の検証は予め登録されていたクライアント証明書と比較することにより検証を行う。なお、クライアント証明書の登録方法については、図13を用いて後述する。クライアント証明書の検証により有効であると判断した場合(S1213にてYES)、S1215に進む。クライアント証明書の検証により無効であると判断した場合(S1213にてNO)、S1214へと進み、アクセス管理サービスシステム104は、S1211の応答としてエラー画面をユーザーへ返し、処理を終了する。
S1215において、アクセス管理サービスシステム104は、証明書管理テーブル900から作成するマルチテナントクライアントの情報を取得する。本実施形態において、マルチテナントクライアントは、認可を受ければ複数のグループの情報にアクセスできるクライアントであるため、特別なグループに所属するクライアントとして作成する。DN903には、そのクライアント証明書を持つ外部サービスシステムをマルチテナントクライアントとして登録するグループの情報が含まれている。予め作成されるクライアント証明書とグループの対応関係の作成については、図13を用いて後述する。アクセス管理サービスシステム104は、検証されたクライアント証明書のDN903を取得し、マルチテナントクライアントを作成するグループを特定する。
S1206において、アクセス管理サービスシステム104は、DN903の情報を元に、マルチテナントクライアント作成権限を持つユーザーの認証を行う。その後、アクセス管理サービスシステム104は、認証したユーザーの権限で、特定したグループにマルチテナントクライアントを作成し、ユーザーテーブル700に登録する。ここで登録するマルチテナントクライアントは、ユーザー種別が「マルチテナントクライアント」となり、テナントIDがDN903から特定したテナントIDとなる。以上により、本処理フローを終了する。
(クライアント証明書の登録)
図13は、マルチテナントクライアントの作成を許可するためのクライアント証明書を、アクセス管理サービスシステム104へと登録するフローを示した図である。本処理フローは、アクセス管理サービスシステム104のCPU203が、二次記憶装置206に記憶された本実施形態に係るプログラムをRAM205に読み出して実行することで実現される。
S1301において、アクセス管理サービスシステム104は、クライアント証明書の登録要求を受ける。その際、アクセス管理サービスシステム104は、システム外で作成されたクライアント証明書を受け取る。
S1302において、アクセス管理サービスシステム104は、マルチテナントクライアントを登録するためのアカウントと、マルチテナントクライアント用の特別グループを新規に作成する。作成したアカウントはユーザーテーブル700に登録される。
S1303において、アクセス管理サービスシステム104は、クライアント証明書を証明書管理テーブル900に登録する。ここで、シリアル番号901とsubject902には、受け付けたクライアント証明書に対応付けられた値が登録される。また、DN903には、S1302で作成したアカウントとクライアントの情報に対応付けられた値が登録される。以上により、本処理フローを終了する。
本実施形態により、認可処理の際に認可確認画面をユーザーに表示する前に、アクセス管理サービスシステム104が権限委譲先の外部サービスのアクセス可能範囲を判定することで、不正な権限委譲と、無駄な権限委譲を防ぐ事ができる。これにより、特定のデータにしかアクセスできない外部サービスを管理することができる。更には、外部サービス側でのアクセスの管理が不要となり、負担を抑えることができる。
また、アクセスできる情報が制限されていない権限の強いテナントは自由には発行出来ず、許可されたサービスのみが発行できるように制限される。一方、アクセスできる情報が制限されている権限の弱いサービスは、各サービスで作成権限を持つアカウントであれば自由に発行できる。したがって、システムにおける利便性を維持しつつ、セキュリティの維持も可能となる。
<実施形態2>
次に、アクセス管理サービスシステム104に外部サービスを登録する際の第2の実施形態について図面を用いて説明する。
(クライアント登録画面)
図14は、アクセス管理サービスシステム104が生成するクライアント登録画面1400を示した図である。クライアント登録画面1400は、入力部としてサービス名入力部1401、リダイレクトURL入力部1402を備える。また、クライアント登録画面1400は、クライアント選択部1403、1404、登録ボタン1405、および登録キャンセルボタン1406を備える。
サービス名入力部1401は、クライアントテーブル710のクライアント名712に登録するクライアント名を入力するフォームである。リダイレクトURL入力部1402は、クライアントテーブル710のリダイレクトURL713に登録するURLを入力するフォームである。
クライアント選択部1403、1404は、いずれか1つが選択できるラジオボタンであり、用途に合わせたアクセス範囲を選択する。ここで選択されたアクセス範囲に対応してシステム内ではクライアントが作成される。クライアント選択部1403が選択された場合には、シングルテナントクライアントが作成され、クライアント選択部1404が選択された場合には、マルチテナントクライアントが作成されることとなる。なお、これら選択部はボタン形式ではなく、ドロップダウンによる選択形式などでもよい。
登録ボタン1405は、クライアント登録を要求する際にユーザーによって押下されるボタンである。登録キャンセルボタン1406は、ユーザーが登録を拒否する場合に押下されるボタンである。
(処理フロー)
図15は、アクセス管理サービスシステム104に外部サービスシステム103を登録する際の処理フローを示した図である。なお、図12A、Bと同じ処理については、同じ参照番号を付与しているものとする。本処理フローは、アクセス管理サービスシステム104のCPU203が、二次記憶装置206に記憶された本実施形態に係るプログラムをRAM205に読み出して実行することで実現される。
S1501において、アクセス管理サービスシステム104は、クライアント登録画面1400へのアクセスを受け付ける。S1502において、アクセス管理サービスシステム104は、ユーザーに認証情報の入力を要求する。ユーザーの認証に成功した後、S1503において、アクセス管理サービスシステム104は、クライアント登録画面1400を表示し、ユーザーに対し登録する外部サービスの情報の入力を要求する。
S1504において、アクセス管理サービスシステム104は、登録要求されたアクセス範囲(作成するクライアント)を判定する。アクセス範囲に対応してシングルテナントクライアント作成が要求された場合(S1504にてNO)、S1203へと進み、以降は図12Aと同様のフローとなる。アクセス範囲に対応してマルチテナントクライアント作成が要求された場合(S1504にてYES)、S1212へと進み、以降は図12Bと同様のフローとなる。
実施形態2により、実施例1の効果に加え、ユーザーはマルチテナントクライアントとシングルテナントクライアントを意識せずに、用途に合わせたアクセス範囲を選択してクライアントを作成する事ができる。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (10)

  1. サービスを提供するリソースサービスシステムと、前記サービスの利用を管理するアクセス管理サービスシステムとを含むシステムであって、
    前記アクセス管理サービスシステムは、
    ユーザーの情報およびクライアントシステムの情報を記憶部に保持する保持手段と、
    前記サービスを利用する権限を有するユーザーからの指示に起因して前記クライアントシステムから当該サービスに対する利用の認可要求を受け付けた場合、前記記憶部にて保持する情報に基づいて、前記ユーザーが所属するグループと前記クライアントシステムが所属するグループとが一致するか否かを判定する判定手段と、
    前記判定手段によりグループが一致すると判定された場合、前記ユーザーの権限を前記クライアントシステムに委譲することを許可するか否かを指示するための画面を前記ユーザーに提示する提示手段と
    を有し、
    前記リソースサービスシステムは、前記画面を介してユーザーの権限の委譲を許可することが指示されたことに応じて発行されるアクセス制御情報を前記クライアントシステムから受信した場合、前記アクセス制御情報の正当性が確認されたことに応じてサービスを提供する提供手段と
    を有することを特徴とするシステム。
  2. 前記アクセス管理サービスシステムは、前記提示手段が提示した画面を介して、ユーザーの権限の委譲を許可することが指示されたことに応じて前記アクセス制御情報を発行する発行手段を更に有することを特徴とする請求項1に記載のシステム。
  3. 前記アクセス管理サービスシステムは、クライアントシステムに第1の権限または第2の権限のいずれかを付与して前記保持手段に登録させる登録手段を更に有し、
    前記第1の権限は、全てのリソースサービスシステムが提供するサービスを利用する権限を委譲されることが可能な権限であり、
    前記第2の権限は、予め定義されたリソースサービスシステムが提供するサービスを利用する権限を委譲されることが可能な権限である
    ことを特徴とする請求項1または2に記載のシステム。
  4. 前記認可要求を行ったクライアントシステムが前記第1の権限を付与されているか否かを判定する手段を更に有し、
    前記クライアントシステムが前記第1の権限を付与されている場合、前記提示手段は、所属するグループが一致するか否かに関わらず前記画面を前記ユーザーに提示することを特徴とする請求項3に記載のシステム。
  5. 前記登録手段は、前記第1の権限を付与するようにクライアントシステムの登録を要求された場合、前記アクセス管理サービスシステムが発行したクライアント証明書を要求し、当該クライアント証明書の正当性が確認できたことに応じて当該クライアントシステムの登録を行うことを特徴とする請求項3または4に記載のシステム。
  6. 前記登録手段は、前記第2の権限を付与するようにクライアントシステムの登録を要求された場合、当該登録の要求を行ったユーザーの権限の情報を取得し、当該ユーザーが登録に対する権限を有する場合に当該クライアントシステムの登録を行うことを特徴とする請求項3乃至5のいずれか一項に記載のシステム。
  7. サービスを提供するリソースサービスシステムと、前記サービスの利用を管理するアクセス管理サービスシステムとを含むシステムの制御方法であって、
    前記アクセス管理サービスシステムにおいて、
    ユーザーの情報およびクライアントシステムの情報を記憶部に保持する保持工程と、
    前記サービスを利用する権限を有するユーザーからの指示に起因して前記クライアントシステムから当該サービスに対する利用の認可要求を受け付けた場合、前記記憶部にて保持する情報に基づいて、前記ユーザーが所属するグループと前記クライアントシステムが所属するグループとが一致するか否かを判定する判定工程と、
    前記判定工程によりグループが一致すると判定された場合、前記ユーザーの権限を前記クライアントシステムに委譲することを許可するか否かを指示するための画面を前記ユーザーに提示する提示工程と
    を有し、
    前記リソースサービスシステムにおいて、前記画面を介してユーザーの権限の委譲を許可することが指示されたことに応じて発行されるアクセス制御情報を前記クライアントシステムから受信した場合、前記アクセス制御情報の正当性が確認されたことに応じてサービスを提供する提供工程と
    を有することを特徴とする制御方法。
  8. リソースサービスシステムが提供するサービスの利用を管理するアクセス管理サービスシステムであって、
    ユーザーの情報およびクライアントシステムの情報を記憶部に保持する保持手段と、
    前記サービスを利用する権限を有するユーザーからの指示に起因して前記クライアントシステムから当該サービスに対する利用の認可要求を受け付けた場合、前記保持手段にて保持する情報に基づいて、前記ユーザーが所属するグループと前記クライアントシステムが所属するグループとが一致するか否かを判定する判定手段と、
    前記判定手段によりグループが一致すると判定された場合、前記ユーザーの権限を前記クライアントシステムに委譲することを許可するか否かを指示するための画面を前記ユーザーに提示する提示手段と
    を有することを特徴とするアクセス管理サービスシステム。
  9. リソースサービスシステムが提供するサービスの利用を管理するアクセス管理サービスシステムの制御方法であって、
    ユーザーの情報およびクライアントシステムの情報を記憶部に保持する保持工程と、
    前記サービスを利用する権限を有するユーザーからの指示に起因して前記クライアントシステムから当該サービスに対する利用の認可要求を受け付けた場合、前記記憶部にて保持する情報に基づいて、前記ユーザーが所属するグループと前記クライアントシステムが所属するグループとが一致するか否かを判定する判定工程と、
    前記判定工程によりグループが一致すると判定された場合、前記ユーザーの権限を前記クライアントシステムに委譲することを許可するか否かを指示するための画面を前記ユーザーに提示する提示工程と
    を有することを特徴とする制御方法。
  10. コンピューターを、
    ユーザーの情報およびクライアントシステムの情報を記憶部に保持する保持手段、
    リソースサービスシステムが提供するサービスを利用する権限を有するユーザーからの指示に起因して前記クライアントシステムから当該サービスに対する利用の認可要求を受け付けた場合、前記記憶部にて保持する情報に基づいて、前記ユーザーが所属するグループと前記クライアントシステムが所属するグループとが一致するか否かを判定する判定手段、
    前記判定手段によりグループが一致すると判定された場合、前記ユーザーの権限を前記クライアントシステムに委譲することを許可するか否かを指示するための画面を前記ユーザーに提示する提示手段
    として機能させるためのプログラム。
JP2013078986A 2013-04-04 2013-04-04 システムおよびその制御方法、アクセス管理サービスシステムおよびその制御方法、並びにプログラム Active JP6141076B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013078986A JP6141076B2 (ja) 2013-04-04 2013-04-04 システムおよびその制御方法、アクセス管理サービスシステムおよびその制御方法、並びにプログラム
US14/216,236 US9282104B2 (en) 2013-04-04 2014-03-17 Access management service system and method for controlling same, and non-transitory computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013078986A JP6141076B2 (ja) 2013-04-04 2013-04-04 システムおよびその制御方法、アクセス管理サービスシステムおよびその制御方法、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2014203267A true JP2014203267A (ja) 2014-10-27
JP6141076B2 JP6141076B2 (ja) 2017-06-07

Family

ID=51655478

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013078986A Active JP6141076B2 (ja) 2013-04-04 2013-04-04 システムおよびその制御方法、アクセス管理サービスシステムおよびその制御方法、並びにプログラム

Country Status (2)

Country Link
US (1) US9282104B2 (ja)
JP (1) JP6141076B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017045106A (ja) * 2015-08-24 2017-03-02 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
JP2020119342A (ja) * 2019-01-24 2020-08-06 株式会社リコー 情報処理システム、認証基盤、認可情報検証方法、及びプログラム
CN115001729A (zh) * 2022-02-22 2022-09-02 中国光大银行股份有限公司 用户权限管控方法、装置、设备及介质

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9426156B2 (en) * 2013-11-19 2016-08-23 Care Innovations, Llc System and method for facilitating federated user provisioning through a cloud-based system
WO2015108536A1 (en) * 2014-01-20 2015-07-23 Hewlett-Packard Development Company, L.P. Mapping tenant groups to identity management classes
GB2532853B (en) * 2014-06-13 2021-04-14 Pismo Labs Technology Ltd Methods and systems for managing node
WO2016014068A1 (en) * 2014-07-24 2016-01-28 Hewlett Packard Development Company, L.P. End point identification
US9420463B2 (en) * 2014-09-30 2016-08-16 Sap Se Authorization based on access token
JP2016085641A (ja) * 2014-10-27 2016-05-19 キヤノン株式会社 権限移譲システム、権限移譲システムにて実行される方法、およびそのプログラム
KR102336293B1 (ko) * 2014-12-19 2021-12-07 삼성전자 주식회사 전자기기의 제어 방법 및 장치
CN104869175B (zh) * 2015-06-16 2018-07-27 腾讯科技(北京)有限公司 跨平台的账号资源共享实现方法、装置及系统
US11837031B2 (en) * 2015-07-08 2023-12-05 Arthur Andrew Montgomery Scotson Distributed voting platform
US9692598B2 (en) * 2015-08-07 2017-06-27 Terry L. Davis Multi-use long string authentication keys
US10320844B2 (en) * 2016-01-13 2019-06-11 Microsoft Technology Licensing, Llc Restricting access to public cloud SaaS applications to a single organization
CN106066967A (zh) * 2016-05-26 2016-11-02 北京金山安全软件有限公司 一种权限设置方法及装置
GB2551543A (en) * 2016-06-21 2017-12-27 Eckoh Uk Ltd Methods of authenticating a user for data exchange
JP6729145B2 (ja) * 2016-08-03 2020-07-22 富士通株式会社 接続管理装置、接続管理方法および接続管理プログラム
CN108268780A (zh) * 2016-12-30 2018-07-10 航天信息股份有限公司 一种用于对系统访问进行控制的方法及装置
EP3554038A1 (en) * 2018-04-11 2019-10-16 Barclays Services Limited System for efficient management of invalid access tokens
CN111818368B (zh) * 2020-07-06 2022-07-22 聚好看科技股份有限公司 管理显示设备权限的方法、移动终端以及服务器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012069263A2 (en) * 2010-11-24 2012-05-31 Telefonica, S.A. Method for authorizing access to protected content
JP2012243027A (ja) * 2011-05-18 2012-12-10 Canon Inc 情報処理システム、その情報処理システムを制御する制御方法、およびそのプログラム。
JP2013008229A (ja) * 2011-06-24 2013-01-10 Canon Inc 認証システムおよび認証方法およびプログラム
JP2013041550A (ja) * 2011-08-19 2013-02-28 Canon Inc アクセス管理システム、アクセス管理方法、アクセス管理サーバ、連携サーバ、およびプログラム
JPWO2012004916A1 (ja) * 2010-07-09 2013-09-02 日本電気株式会社 サービス提供システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7770206B2 (en) 2005-03-11 2010-08-03 Microsoft Corporation Delegating right to access resource or the like in access management system
US8539544B2 (en) * 2008-05-30 2013-09-17 Motorola Mobility Llc Method of optimizing policy conformance check for a device with a large set of posture attribute combinations
US8776204B2 (en) * 2010-03-12 2014-07-08 Alcatel Lucent Secure dynamic authority delegation
US8806595B2 (en) * 2012-07-25 2014-08-12 Oracle International Corporation System and method of securing sharing of resources which require consent of multiple resource owners using group URI's

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2012004916A1 (ja) * 2010-07-09 2013-09-02 日本電気株式会社 サービス提供システム
WO2012069263A2 (en) * 2010-11-24 2012-05-31 Telefonica, S.A. Method for authorizing access to protected content
JP2012243027A (ja) * 2011-05-18 2012-12-10 Canon Inc 情報処理システム、その情報処理システムを制御する制御方法、およびそのプログラム。
JP2013008229A (ja) * 2011-06-24 2013-01-10 Canon Inc 認証システムおよび認証方法およびプログラム
JP2013041550A (ja) * 2011-08-19 2013-02-28 Canon Inc アクセス管理システム、アクセス管理方法、アクセス管理サーバ、連携サーバ、およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Twitter クラウドサービス活用で大規模対応 API開放で外部サービス呼び込む", 日経NETWORK, vol. 第118号, JPN6017011856, 28 January 2010 (2010-01-28), JP, pages 38 - 42, ISSN: 0003533661 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017045106A (ja) * 2015-08-24 2017-03-02 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
JP2020119342A (ja) * 2019-01-24 2020-08-06 株式会社リコー 情報処理システム、認証基盤、認可情報検証方法、及びプログラム
JP7131408B2 (ja) 2019-01-24 2022-09-06 株式会社リコー 情報処理システム、認証基盤、認可情報検証方法、及びプログラム
CN115001729A (zh) * 2022-02-22 2022-09-02 中国光大银行股份有限公司 用户权限管控方法、装置、设备及介质
CN115001729B (zh) * 2022-02-22 2024-03-12 中国光大银行股份有限公司 用户权限管控方法、装置、设备及介质

Also Published As

Publication number Publication date
US20140304837A1 (en) 2014-10-09
JP6141076B2 (ja) 2017-06-07
US9282104B2 (en) 2016-03-08

Similar Documents

Publication Publication Date Title
JP6141076B2 (ja) システムおよびその制御方法、アクセス管理サービスシステムおよびその制御方法、並びにプログラム
JP6198477B2 (ja) 権限移譲システム、認可サーバーシステム、制御方法、およびプログラム
JP6166596B2 (ja) 認可サーバーシステムおよびその制御方法、並びにプログラム
EP3525415B1 (en) Information processing system and control method therefor
JP5458888B2 (ja) 証明書生成配布システム、証明書生成配布方法およびプログラム
JP6006533B2 (ja) 認可サーバー及びクライアント装置、サーバー連携システム、トークン管理方法
JP6066647B2 (ja) デバイス装置、その制御方法、およびそのプログラム
JP6124687B2 (ja) 画像形成装置、サーバー装置、情報処理方法及びプログラム
JP6061633B2 (ja) デバイス装置、制御方法、およびそのプログラム。
JP5932344B2 (ja) 権限委譲システム、アクセス管理サービスシステム、および権限委譲システムを制御する制御方法
JP5820188B2 (ja) サーバおよびその制御方法、並びにプログラム
JP6929181B2 (ja) デバイスと、その制御方法とプログラム
US8112790B2 (en) Methods and apparatus for authenticating a remote service to another service on behalf of a user
JP6141041B2 (ja) 情報処理装置及びプログラム、制御方法
JP2018205840A (ja) システム、その方法およびそのプログラム
WO2019159894A1 (ja) 認証認可情報統合装置及び認証認可情報統合方法
JP4932154B2 (ja) アイデンティティ管理ネットワークにおいてユーザーの認証をメンバーサイトに与える方法及びシステム、アイデンティティ管理ネットワークに属するホームサイトでユーザーの認証を行う方法、コンピュータ読み取り可能な媒体、ならびに、階層的分散アイデンティティ管理のためのシステム
JP2016115260A (ja) 権限移譲システム、権限移譲システムに用いられる認可サーバー、リソースサーバー、クライアント、媒介装置、権限移譲方法およびプログラム
JP5177505B2 (ja) シングルサインオンによるグループ内サービス認可方法と、その方法を用いたグループ内サービス提供システムと、それを構成する各サーバ
JP6041537B2 (ja) システムおよび制御方法およびプログラム
JP6128958B2 (ja) 情報処理サーバーシステム、制御方法、およびプログラム
JP2014142732A (ja) 権限委譲システム
JP2018093407A (ja) システム、リソースサーバ、システムの制御方法およびプログラム
JP2005293161A (ja) 認証システム、認証方法及びコンピュータプログラム
KR20100073884A (ko) Id 연계 기반의 고객정보 중개 및 동기화 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160323

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170322

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170502

R151 Written notification of patent or utility model registration

Ref document number: 6141076

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151