JP7271147B2 - SERVICE AUTHORIZATION PROCESSING APPARATUS, SYSTEM, METHOD AND PROGRAM - Google Patents
SERVICE AUTHORIZATION PROCESSING APPARATUS, SYSTEM, METHOD AND PROGRAM Download PDFInfo
- Publication number
- JP7271147B2 JP7271147B2 JP2018224487A JP2018224487A JP7271147B2 JP 7271147 B2 JP7271147 B2 JP 7271147B2 JP 2018224487 A JP2018224487 A JP 2018224487A JP 2018224487 A JP2018224487 A JP 2018224487A JP 7271147 B2 JP7271147 B2 JP 7271147B2
- Authority
- JP
- Japan
- Prior art keywords
- authorization
- service
- information
- services
- 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.)
- Active
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Description
本発明の実施形態は、サービス認可処理装置、システム、方法及びプログラムに関する。 TECHNICAL FIELD Embodiments of the present invention relate to a service authorization processing device, system, method and program.
近年、例えばWebサービスを提供するためのシステムやソフトウェアの開発において、サービスの全機能を、いわゆるモノリス(monolith)構成ではなく、マイクロサービスを利用して構成する方式が注目されている。マイクロサービスアーキテクチャは、複数のサービスを組み合わせて連携させることにより、所定の全機能を実現する仕組みである。マイクロサービスを利用する方式であれば、外部のサービスを利用できるために、開発コストの削減を実現できる。また、組み合わせる各サービスは独立性があるため、サービス(機能)ごとの変更や追加が容易となる。 In recent years, for example, in the development of systems and software for providing Web services, attention has been paid to methods of configuring all functions of services using microservices instead of so-called monolith configurations. A microservices architecture is a mechanism that realizes all predetermined functions by combining and linking multiple services. If you use a method that uses microservices, you can use external services, so you can reduce development costs. In addition, since each service to be combined is independent, it becomes easy to change or add each service (function).
ところで、マイクロサービスを利用して、連携元のサービスが連携先のサービスを呼び出して利用する場合に、例えばOAuth2というプロトコルを利用した認可が必要となることがある。この場合、例えばアクセストークン(access token)のような、認可に必要な認可情報を取得するための認可処理が必要となる。 By the way, when using microservices, when a linking service calls and uses a linking service, authorization using a protocol called OAuth2, for example, may be required. In this case, an authorization process is required to acquire authorization information required for authorization, such as an access token.
マイクロサービスを利用する方式では、認可を必要としない連携元のサービスが、認可が必要である連携先のサービスを呼び出して利用する場合、当該連携元サービスは認可処理を実行する機能を実装することが要求されることになる。このため、マイクロサービスの利点に含まれる各サービスの独立性を確保できなくなる。 In the method that uses microservices, when a linking service that does not require authorization calls and uses a linking service that requires authorization, the linking service must implement a function to perform authorization processing. will be required. This makes it impossible to ensure the independence of each service included in the benefits of microservices.
そこで、目的は、認可を必要とするサービスを含む複数のサービスを連携して、所定の機能を実現する方式に適用できると共に、各サービスの独立性を確保できるサービス認可処理装置を提供することにある。 Accordingly, it is an object of the present invention to provide a service authorization processing device which can be applied to a method of realizing a predetermined function by coordinating a plurality of services, including services requiring authorization, and which can ensure the independence of each service. be.
本実施形態のサービス認可処理装置は、複数のサービスを連携して、所定の機能を実現するシステムに適用するサービス認可処理装置であって、認可判定手段と、認可情報管理手段と、認可処理情報作成手段と、第2の記憶装置とを有する。前記認可判定手段は、連携する各サービスを実行する際に、認可が必要であるか否かを判定する。前記認可情報管理手段は、認可が必要であるサービスに対して認可に利用する認可情報を提供するために、前記認可情報を取得して管理する。認可処理情報作成手段は、前記連携する各サービスの起動時に、前記システムに含まれるサーバから取得する情報に基づいて、前記連携する各サービス毎に、呼び出し関係を示す第1の情報と、認可の必要性が有るか又は無いかを特定する第2の情報とを含む認可処理情報を作成する。前記第2の記憶装置は、前記認可処理情報作成手段によって作成された前記認可処理情報を格納する。前記認可判定手段はさらに、前記認可処理情報において、前記第2の情報に、許可の必要性が無いと特定されているサービスが認可を必要としないと判定する。 The service authorization processing device of this embodiment is a service authorization processing device that is applied to a system that implements a predetermined function by coordinating a plurality of services, and comprises authorization determination means, authorization information management means, and authorization processing information . It has a creating means and a second storage device. The authorization determination means determines whether or not authorization is required when executing each linked service. The authorization information management means acquires and manages the authorization information in order to provide the authorization information used for authorization to a service that requires authorization. The authorization processing information creating means generates, for each of the cooperating services, first information indicating a calling relationship and authorization information for each of the cooperating services based on information obtained from a server included in the system when each of the cooperating services is activated. and second information specifying whether or not there is a need. The second storage device stores the authorization processing information created by the authorization processing information creating means . The authorization determining means further determines that the service specified as not requiring authorization in the second information in the authorization processing information does not require authorization.
以下図面を参照して、実施形態を説明する。
[システムの構成]
図1は、本実施形態に関するシステム1の構成を示す図である。図1に示すように、本実施形態のシステム1は、認可処理装置10、認可サーバ13、リソースサーバ14、及び各種のサービス(機能)A~Eを実現するサービス提供サーバ15を有する。サービス提供サーバ15は、各サービスA~Eをそれぞれ独立して実現する複数のサーバ群であり、後述するように、各サービスA~Eを連携させるマイクロサービスを実現する。マイクロサービスは、複数のサービスを連携して所定のサービス(機能)を実現する方式である。
Embodiments will be described below with reference to the drawings.
[System configuration]
FIG. 1 is a diagram showing the configuration of a
認可処理装置10は、主としてコンピュータ及び記憶装置により実現する、APIゲートウエイ(Application Programming Interface Gateway)11及びサービスレジストリ12を含む。本実施形態のAPIゲートウエイ11は、クライアント2とサービス(A~E)との間で各種の情報を交換する中継機能を実現すると共に、後述する認可判定機能を有する。APIゲートウエイ11は、通信の制御を実行する通信部101及び認可判定部102を含む。認可判定部102は、後述する認可情報取得部103により取得されたデータに基づいて、サービスを利用する上での認可が必要であるか否かを判定する認可判定処理を実行する。
The
サービスレジストリ12は情報管理用のサーバに相当し、認可情報取得部103、アクセストークン(Access Token)管理部104、認可情報記憶部105、及びサービス関連作成部106を含む。認可情報取得部103は、認可情報記憶部105から、後述するサービス関連テーブル20、認可情報テーブル21、及びユーザ情報テーブル22を取得する。これらの各テーブル20、21、22は、認可処理装置10において使用される認可処理情報である。
The
アクセストークン管理部104は、認可サーバ13により発行されるアクセストークンを認可情報記憶部105に登録する処理や、認可情報記憶部105からアクセストークンを取得する処理を実行する。認可情報記憶部105は、サービス関連テーブル20、認可情報テーブル21、及びユーザ情報テーブル22を格納すると共に、登録対象のアクセストークンを格納する。サービス関連作成部106は、後述するように、サービス関連テーブル20及び認可情報テーブル21を作成して、認可情報記憶部105に格納する。
The access
認可サーバ13は、APIゲートウエイ11の通信部101と接続し、ユーザが操作するクライアント2からのリクエストに基づいて、リソースサーバ14にアクセスするか否かの判定処理や、アクセストークンを発行する処理を実行する。本実施形態では、リソースサーバ14は、例えばサービスEと連携する外部のサービス(F)を提供する。ここで、サービスEが当該サービス(F)にアクセスするためには、例えばOAuth2のプロトコルを利用した認可が必要であるとする。なお、本実施形態では、当該OAuth2のプロトコルを利用した認可を、単に認可と表記する。
The
図2は、サービス関連テーブル20の一例を示す図である。サービス関連テーブル20は、マイクロサービスを実現するために、連携する各サービスの呼び出し関係を表す情報である。図5は、当該各サービスの呼び出し関係の一例を示す図である。図5に示すように、クライアント2からのリクエストにより、サービスA(パス:/service a-1)が呼び出されると、サービスAはサービスB(パス:/service b-1)とサービスD(パス:/service d-1)を呼び出す。さらに、サービスBは、サービスC(パス:/service c-1)とサービスE(パス:/service e-1)を呼び出す関係になっている。
FIG. 2 is a diagram showing an example of the service related table 20. As shown in FIG. The service relation table 20 is information representing the calling relation of each linked service in order to realize the microservice. FIG. 5 is a diagram showing an example of the calling relationship of each service. As shown in FIG. 5, when service A (path: /service a-1) is called by a request from
図2に示すように、サービス関連テーブル20は、図5で示すような各サービスの呼び出し関係を、サービス名とパスにより一意に特定できる情報である。即ち、サービス関連テーブル20は、行単位のデータにより、どのサービスがどのサービスを呼び出しているかを定義している。例えば、1行目のデータは、サービスA(パス:/service a-1)が、サービスB(パス:/service b-1)を呼び出すことを定義している。ここで、パスとは、サービス名のサービスにアクセスするためのルートを示し、例えばURL(Uniform Resource Locator)のパス名に相当する情報である。 As shown in FIG. 2, the service relation table 20 is information that can uniquely identify the calling relationship of each service as shown in FIG. 5 by the service name and path. That is, the service relation table 20 defines which service calls which service by row-by-row data. For example, the data in the first row defines that service A (path: /service a-1) calls service B (path: /service b-1). Here, the path indicates a route for accessing the service of the service name, and is information corresponding to the path name of URL (Uniform Resource Locator), for example.
図3は、認可情報テーブル21の一例を示す図である。図3に示すように、認可情報テーブル21は、各サービスA~Eにアクセスする(呼び出す)ために、認可を必要とするか否かを示す情報である。認可情報テーブル21は、例えば、サービスAからサービスDについては認可を必要とせず、サービスEについては認可を必要とすることを示している。 FIG. 3 is a diagram showing an example of the authorization information table 21. As shown in FIG. As shown in FIG. 3, the authorization information table 21 is information indicating whether or not authorization is required to access (call) each service A to E. FIG. The authorization information table 21 indicates that, for example, service A to service D do not require authorization, and service E requires authorization.
図4は、ユーザ情報テーブル22の一例を示す図である。図4に示すように、ユーザ情報テーブル22は、ユーザ毎に、サービスにアクセスする際の認可に必要なアクセストークン(Access Token)を設定している情報である。即ち、アクセストークンは、認可に使用する認可情報である。ユーザ情報テーブル22は、例えば、ユーザIDとして「User C」が設定されたユーザが、クライアント2からサービスEにアクセスするためのアクセストークン「accVkjcJyb4BWCx」、及び、その有効期限が「2020/11/30 00:00:00」であることを示している。
[システムの動作]
図6は、本実施形態の認可処理装置10及び認可サーバ13による認可処理の概要を説明するための図である。ここでは、ユーザIDとして「User A」が設定されたユーザがクライアント2から、サービスA(パス:/service a-1)にアクセスする例として説明する。
FIG. 4 is a diagram showing an example of the user information table 22. As shown in FIG. As shown in FIG. 4, the user information table 22 is information that sets an access token required for authorization when accessing a service for each user. That is, the access token is authorization information used for authorization. The user information table 22 includes, for example, an access token "accVkjcJyb4BWCx" for a user whose user ID is set to "User C" to access service E from the
[System operation]
FIG. 6 is a diagram for explaining an outline of authorization processing by the
APIゲートウエイ11は、クライアント2からサービスAに対してアクセスがあると(60)、認可判定部102がアクセス先のサービスが認可を必要とするか否かを判定する。認可判定部102は、サービスレジストリ12にアクセスし(61)、認可情報記憶部105に格納されたサービス関連テーブル20及び認可情報テーブル21を参照して、認可の有無を判定する。なお、クライアント2は、例えば、パーソナルコンピュータのディスプレイ200及びPC本体201からなる。
When the
ここで、APIゲートウエイ11は、例えばサービスAと連携してアクセス先となるサービス(E)が認可を必要とする場合には、クライアント2のPC本体201に対して認可を行うためにリダイレクトする(62)。クライアント2は、認可サーバ13にリダイレクトすることで(63)、認可サーバ13からログイン画面情報を受信する(64)。クライアント2は、ディスプレイ200上の表示されたログイン画面上にユーザIDやパスワードを入力して、認可サーバ13に送信する(65)。認可サーバ13は、ユーザIDやパスワードが正しい場合には、認可コードをクライアント2及びAPIゲートウエイ11に返信する(66)。
Here, for example, when the service (E) to be accessed in cooperation with the service A requires authorization, the
APIゲートウエイ11は、認可サーバ13から取得する認可コードを利用して、認可サーバ13により発行される認可情報であるアクセストークンを取得する(67)。本実施形態では、APIゲートウエイ11は、認可サーバ13から取得したアクセストークンを、サービスレジストリ12の認可情報記憶部105に格納する(61)。
The
このような認可処理の実行後に、APIゲートウエイ11は、サービスAに対してアクセスする(68)。図5に示すような呼び出し関係により、各サービスAからEは連携して、所定のサービスの全機能を実現する。即ち、サービスAは、連携先であるサービスB及びサービスDを呼び出す。さらに、サービスBは、連携先であるサービスC及びサービスEを呼び出す。
After executing such authorization processing, the
ここで、サービスEは、リソースサーバ14にアクセスするために、サービスレジストリ12の認可情報記憶部105に格納されたアクセストークンを取得する(69)。サービスEは、リソースサーバ14に当該アクセストークンを送信する(70)。即ち、サービスEは、アクセストークンを使用してサービスFを呼び出し、必要なリソースを取得できる(71)。
Here, in order to access the
図7から図10は、本実施形態の認可処理装置10及び認可サーバ13による認可処理を、さらに詳細に説明するためのフローチャートである。
7 to 10 are flow charts for explaining in more detail the authorization processing by the
図7に示すように、APIゲートウエイ11は、通信部101がクライアント2から、サービスAに対してアクセスするためのリクエストを受け付けると(S1)、認可判定部102により認可が必要であるか否かを判定する(S2)。
As shown in FIG. 7, when the
図8は、認可判定部102の判定処理を説明するためのフローチャートである。認可判定部102は、サービスレジストリ12の認可情報取得部103にアクセスする。図8に示すように、認可情報取得部103は、認可情報記憶部105からサービス関連テーブル20及び認可情報テーブル21を取得する(S20)。認可判定部102は、サービス関連テーブル20を参照して、パスとサービス名が一致する項目のデータを取得する(S21)。ここでは、サービスA(パス:/service a-1)にアクセスしているので、サービス関連テーブル20の1行目と2行目の各データを取得する。
FIG. 8 is a flowchart for explaining the determination processing of the
次に、認可判定部102は、認可情報テーブル21を参照して、パスとサービス名が一致する項目のデータを取得する(S22)。認可判定部102は、認可情報テーブル21のデータから、認可の有無を判定する(S23)。具体的には、認可情報テーブル21の1行目のデータは、認可の値が無しなっているため、認可判定部102は、サービスAが認可を行わない(認可を必要としない)と判定する。
Next, the
次に、認可判定部102は、サービス関連テーブル20を参照して、パスを含むサービス名(A)に対応する、利用サービスパスを含む利用サービス名(B,D)を取得する(S24)。利用サービスパスと利用サービス名が無しの場合は、対応するサービスから呼び出されるサービスが無いことを示す。
Next, the
具体的には、サービス関連テーブル20の1行目のデータから、サービスAがする利用サービスが利用サービス名B(利用サービスパス:/service b-1)であるため、認可判定部102は、サービス関連テーブル20の3及び4行目のデータ(いずれもサービス名B)を取得する。同様に、サービス関連テーブル20の2行目のデータ(利用サービス名D)から、サービス関連テーブル20の6行目のデータ(サービス名D)を取得する。 Specifically, from the data in the first row of the service relation table 20, the service used by service A is the service used name B (used service path: /service b-1). The data on the 3rd and 4th rows of the relation table 20 (both are service name B) are acquired. Similarly, the data (service name D) in the sixth line of the service relation table 20 is obtained from the data in the second line (service name D) of the service relation table 20 .
認可判定部102は、サービス関連テーブル20からデータを取得できなくなるまで、S21からの処理を繰り返す(S25のYES)。認可判定部102は、データを取得できなかった場合に処理を終了する(S25のNO)。このような認可判定部102の処理により、サービスA(パス:/service a-1)にアクセスするためには、提携先のサービスE(パス:/service e-1)において認可が必要であることが判定できる。
The
図7に戻って、APIゲートウエイ11は、サービスAにアクセスするために、認可判定部102により認可が必要でないと判定された場合(S3のNO)、通信部101を経由してサービスAを実行して処理を終了する(S17)。即ち、クライアント2は、APIゲートウエイ11を介して、サービスAからEが連携して実現される、所定のサービスの全機能が提供される。
Returning to FIG. 7, when the
一方、認可判定部102は認可が必要と判定した場合、アクセストークン管理部104にアクセスする(S3のYES)。アクセストークン管理部104は、認可情報記憶部105にアクセストークンが登録(格納)されている否かを確認する(S4)。
On the other hand, when the
図9は、アクセストークン管理部104の処理を説明するためのフローチャートである。図9に示すように、アクセストークン管理部104は、認可情報記憶部105からユーザ情報テーブルを取得する(S30)。アクセストークン管理部104は、ユーザ情報テーブル(図4を参照)から、ユーザID、パス、サービス名(E)が一致するデータを取得する(S31)。具体的には、ユーザ情報テーブル22から、例えば、ユーザIDとして「User C」、パスが「/service e-1」、及びサービス名Eのデータを取得する。即ち、サービスA(パス:/service a-1)にアクセスするためには、提携先のサービスE(パス:/service e-1)において認可が必要であるという、認可判定部102の判定結果に基づいている。
FIG. 9 is a flowchart for explaining the processing of the access
アクセストークン管理部104は、ユーザ情報テーブル22から、アクセストークンが登録済みであるか否かを確認する(S32)。ここで、アクセストークン管理部104は、ユーザ情報テーブル22の1行目のデータにはアクセストークンの値がないため、この場合には、アクセストークンが登録済みでないと判定し(S32のNO)、その旨を認可判定部102に返信する(S34)。
The access
アクセストークン管理部104は、ユーザ情報テーブル22の3行目のデータにはアクセストークンの値があるため、アクセストークンが登録済みであると判定し(S32のYES)、その旨を認可判定部102に返信する(S33)。但し、アクセストークン管理部104は、有効期限の値が現在より前であれば、アクセストークンが登録済みでないと判定し、有効期限の値が現在より後であれば、アクセストークンが登録済みであると判定する。
The access
図7に戻って、APIゲートウエイ11は、認可判定部102がアクセストークン管理部104からアクセストークンが登録済みであるとの返信を受けると(S5のYES)、通信部101を経由してサービスAを実行する(S14)。即ち、図5に示すような呼び出し関係により、各サービスAからEは連携して、所定のサービスの全機能を実現する。
Returning to FIG. 7, when the
この場合、サービスEは、サービスBからの呼び出しに応じて、アクセストークン管理部104から、認可情報記憶部105に登録(格納)されているアクセストークンを取得する(S15)。サービスEは、APIゲートウエイ11から送信される、ユーザ情報テーブル22のユーザID、パス、サービス名を含む情報を利用して、アクセストークン管理部104から所定のアクセストークンを取得する。サービスEは、当該アクセストークンを利用してリソースサーバ14にアクセスし、サービスFを呼び出して必要なリソースを取得する(S16)。これにより、クライアント2は、APIゲートウエイ11を介して、サービスAからEが連携して実現される、所定のサービスの全機能が提供される。
In this case, service E acquires an access token registered (stored) in authorization
一方、APIゲートウエイ11は、認可判定部102がアクセストークン管理部104からアクセストークンが登録済みでないとの返信を受けると(S5のNO)、通信部101を経由して認可サーバ13にリダイレクトする(S6)。以下、図6を参照して前述したように、アクセストークン管理部104は、認可サーバ13が発行するアクセストークンを、認可情報記憶部105に登録(格納)する処理を実行する。
On the other hand, when the
即ち、認可サーバ13は、クライアント2にログイン画面を表示する(S7)。クライアント2は、ユーザがログイン画面に入力した、ユーザIDとパスワードを、認可サーバ13に送信する(S8)。認可サーバ13は、送信されたユーザIDとパスワードが正しくない場合には、クライアント2にログイン画面を再度表示する(S9のNO)。
That is, the
一方、認可サーバ13は、送信されたユーザIDとパスワードが正しい場合には(S9のYES)、通信部101に認可コードを返信する(S10)。APIゲートウエイ11は、通信部101を経由し、認可コードを利用して認可サーバ13からアクセストークンを取得する(S11)。通信部101は、取得したアクセストークンを、アクセストークン管理部104に渡す(S12)。アクセストークン管理部104は、アクセストークンを認可情報記憶部105に登録する(S13)。具体的には、アクセストークン管理部104は、認可情報記憶部105に格納されているユーザ情報テーブル22に対して、ユーザID、パス、サービス名(E)、アクセストークン、アクセストークンの有効期限を登録する(図4を参照)。
On the other hand, when the transmitted user ID and password are correct (YES in S9), the
ここで、サービス関連作成部106は、APIゲートウエイ11からの通知に応じたサービス起動時に、サービス関連テーブル20及び認可情報テーブル21を作成して認可情報記憶部105に格納する。図10は、サービス関連作成部106の処理を示すフローチャートである。
Here, the service
図10に示すように、サービス起動時に、サービス関連作成部106は、APIゲートウエイ11を経由して、サービス提供サーバ15により呼び出される。サービス関連作成部106は、サービス提供サーバ15からAPIゲートウエイ11を経由して提供される情報に基づいて、サービス関連テーブル20を作成して認可情報記憶部105に格納(登録)する(S40)。この場合、サービス関連作成部106は、サービスのソースコードや設定ファイルなどに基づいて各サービスの呼び出し関係を取得し、サービス関連テーブル20を作成する。
As shown in FIG. 10 , the service-related
次に、サービス関連作成部106は、サービス提供サーバ15からAPIゲートウエイ11を経由して提供される情報に基づいて、認可情報テーブル21を作成して認可情報記憶部105に格納(登録)する(S41)。この場合、サービス関連作成部106は、サービスのソースコードや設定ファイルなどに基づいて、該当するサービスが認可を必要とするか否かの情報を取得し、認可情報テーブル21を作成する。
Next, the service
以上のように本実施形態によれば、クライアントからのリクエストに応じて、複数のサービスが連携して所定のサービスの全機能を実現する、マイクロサービスを提供することが可能となる。このようなマイクロサービスにおける各サービスの呼び出し関係において、呼び出し先のサービスで認可が必要となる場合に、当該サービスが認可に必要なアクセストークンを利用することができる。これにより、連携する複数のサービスの中で、認可を必要としない呼び出し元のサービスは、呼び出し先の認可に必要な認可処理機能の実装が不要となる。従って、各サービスが連携してマイクロサービスを実現する場合に、各サービスの独立性を確保することができる。 As described above, according to this embodiment, it is possible to provide microservices in which a plurality of services cooperate to realize all the functions of a predetermined service in response to a request from a client. In such a relationship of calling each service in a microservice, if the called service requires authorization, the service can use the access token required for authorization. As a result, the caller service that does not require authorization among the multiple linked services does not need to implement the authorization processing function required for authorization of the callee. Therefore, the independence of each service can be ensured when each service cooperates and realizes a microservice.
なお、本実施形態では、OAuth2というプロトコルを利用する認可について説明したが、これに限ることなく、別の方式による認可にも適用できる。また、本実施形態の各サービスの呼び出し関係は一例であり、別の呼び出し関係にも適用できる。 In this embodiment, authorization using a protocol called OAuth2 has been described, but the present invention is not limited to this, and can be applied to authorization using another method. Also, the calling relationship of each service in this embodiment is an example, and can be applied to other calling relationships.
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。 While several embodiments of the invention have been described, these embodiments have been presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and modifications can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the scope of the invention described in the claims and equivalents thereof.
1…システム、2…クライアント、10…認可処理装置、11…APIゲートウエイ、
12…サービスレジストリ、13…認可サーバ、14…リソースサーバ、
15…サービス提供サーバ、101…通信部、102…認可判定部、
103…認可情報取得部、104…アクセストークン管理部、
105…認可情報記憶部、106…サービス関連作成部。
1... system, 2... client, 10... authorization processing device, 11... API gateway,
12... service registry, 13... authorization server, 14... resource server,
15... Service providing server, 101... Communication unit, 102... Authorization determination unit,
103... authorization information acquisition unit, 104... access token management unit,
105... Authorization information storage unit, 106... Service related creation unit.
Claims (7)
連携する各サービスを実行する際に、認可が必要であるか否かを判定する認可判定手段と、
認可が必要であるサービスに対して認可に利用する認可情報を提供するために、前記認可情報を取得して管理する認可情報管理手段と、
前記連携する各サービスの起動時に、前記システムに含まれるサーバから取得する情報に基づいて、前記連携する各サービス毎に、呼び出し関係を示す第1の情報と、認可の必要性が有るか又は無いかを特定する第2の情報とを含む認可処理情報を作成する認可処理情報作成手段と、
前記認可処理情報作成手段によって作成された前記認可処理情報を格納する第2の記憶装置とを具備し、
前記認可判定手段は、前記認可処理情報において、前記第2の情報に、許可の必要性が無いと特定されているサービスが認可を必要としないと判定する、
サービス認可処理装置。 A service authorization processing device applied to a system that realizes a predetermined function by linking a plurality of services,
authorization determination means for determining whether or not authorization is required when executing each linked service;
authorization information management means for acquiring and managing the authorization information in order to provide authorization information used for authorization to a service that requires authorization;
When each of the services to be linked is activated, based on information acquired from a server included in the system, first information indicating a calling relationship and whether or not authorization is required for each of the services to be linked authorization processing information creating means for creating authorization processing information including second information specifying whether
a second storage device for storing the authorization processing information created by the authorization processing information creating means ;
The authorization determination means determines that a service specified as not requiring authorization in the second information in the authorization processing information does not require authorization.
Service Authorization Processor.
前記システムに含まれるサーバから、前記認可判定手段により認可が必要であると判定されるサービスに対応する認可情報を取得し、
前記認可情報を第1の記憶装置に格納し、
前記認可情報を利用するサービスからの要求に基づいて、前記第1の記憶装置から前記認可情報を取り出して前記サービスに提供する、請求項1に記載のサービス認可処理装置。 The authorization information management means
Acquiring authorization information corresponding to a service judged to require authorization by the authorization judgment means from a server included in the system;
storing the authorization information in a first storage device;
2. The service authorization processing device according to claim 1, which retrieves said authorization information from said first storage device and provides said authorization information to said service based on a request from said service using said authorization information.
前記サービス認可処理装置と通信して、複数のサービスを連携して実行する第1のサーバと、
前記サービス認可処理装置と通信して、前記認可情報を生成して前記サービス認可処理装置に提供する第2のサーバと
を具備する、システム。 a service authorization processing device according to claim 1 or 2 ;
a first server that communicates with the service authorization processing device and executes a plurality of services in cooperation;
and a second server in communication with the service authorization processing device to generate and provide the authorization information to the service authorization processing device.
前記第1のサーバ及び前記第2のサーバと通信し、各種の情報を交換する中継手段を含む、請求項3に記載のシステム。 The service authorization processing device,
4. The system according to claim 3 , comprising relay means for communicating with said first server and said second server and exchanging various information.
連携する各サービスを実行する際に、認可が必要であるか否かを判定する処理と、
認可が必要であるサービスに対して認可に利用する認可情報を提供するために、前記認可情報を取得して管理する処理と、
前記連携する各サービスの起動時に、前記システムに含まれるサーバから取得する情報に基づいて、前記連携する各サービス毎に、呼び出し関係を示す第1の情報と、認可の必要性が有るか又は無いかを特定する第2の情報とを含む認可処理情報を作成して、第2の記憶装置に格納する処理と、
前記認可処理情報において、前記第2の情報に、許可の必要性が無いと特定されているサービスが認可を必要としないと判定する処理とを実行する、方法。 A service authorization processing method applied to a system realizing a predetermined function by linking a plurality of services,
a process of determining whether or not authorization is required when executing each linked service;
a process of acquiring and managing the authorization information in order to provide the authorization information used for authorization to a service that requires authorization;
When each of the services to be linked is activated, based on information acquired from a server included in the system, first information indicating a calling relationship and whether or not authorization is required for each of the services to be linked a process of creating authorization process information including second information specifying whether the
and determining, in the authorization processing information, that the service identified as not requiring authorization in the second information does not require authorization.
前記認可情報を第1の記憶装置に格納する処理と、
前記認可情報を利用するサービスからの要求に基づいて、前記第1の記憶装置から前記認可情報を取り出して前記サービスに提供する処理と
を実行する、請求項5に記載の方法。 a process of acquiring the authorization information corresponding to a service determined to require authorization from a server included in the system;
a process of storing the authorization information in a first storage device;
6. The method according to claim 5 , further comprising retrieving said authorization information from said first storage device and providing said authorization information to said service based on a request from said service using said authorization information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018224487A JP7271147B2 (en) | 2018-11-30 | 2018-11-30 | SERVICE AUTHORIZATION PROCESSING APPARATUS, SYSTEM, METHOD AND PROGRAM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018224487A JP7271147B2 (en) | 2018-11-30 | 2018-11-30 | SERVICE AUTHORIZATION PROCESSING APPARATUS, SYSTEM, METHOD AND PROGRAM |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020087235A JP2020087235A (en) | 2020-06-04 |
JP7271147B2 true JP7271147B2 (en) | 2023-05-11 |
Family
ID=70908432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018224487A Active JP7271147B2 (en) | 2018-11-30 | 2018-11-30 | SERVICE AUTHORIZATION PROCESSING APPARATUS, SYSTEM, METHOD AND PROGRAM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7271147B2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013105442A (en) | 2011-11-16 | 2013-05-30 | Canon Inc | System and control method |
JP2017059219A (en) | 2015-09-18 | 2017-03-23 | 株式会社リコー | Information processing system, information processing apparatus, and information processing method |
US20170083697A1 (en) | 2015-09-18 | 2017-03-23 | Ricoh Company, Ltd. | Information processing system, information processing apparatus, and method for processing information |
JP2017204073A (en) | 2016-05-10 | 2017-11-16 | 株式会社リコー | Information processing apparatus, approval method and program |
-
2018
- 2018-11-30 JP JP2018224487A patent/JP7271147B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013105442A (en) | 2011-11-16 | 2013-05-30 | Canon Inc | System and control method |
JP2017059219A (en) | 2015-09-18 | 2017-03-23 | 株式会社リコー | Information processing system, information processing apparatus, and information processing method |
US20170083697A1 (en) | 2015-09-18 | 2017-03-23 | Ricoh Company, Ltd. | Information processing system, information processing apparatus, and method for processing information |
JP2017204073A (en) | 2016-05-10 | 2017-11-16 | 株式会社リコー | Information processing apparatus, approval method and program |
Also Published As
Publication number | Publication date |
---|---|
JP2020087235A (en) | 2020-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5270697B2 (en) | publish / subscribe message broker | |
CN102202078B (en) | The method and system of a kind of multiple foreign peoples roles for configuration server field | |
US9652206B2 (en) | Rule engine system controlling devices of disparate types and protocols | |
US20140149194A1 (en) | Granting of benefits | |
CA2843284C (en) | Computer system, computer-implemented method and computer program product for sequencing incoming messages for processing at an application | |
EP3355183A1 (en) | System and method to distribute firmware updates in a hierarchical network structure using a publish/subscribe message broker | |
US20220172196A1 (en) | Electronic money exchanging apparatus, electronic money exchanging method, and electronic money exchanging system | |
JP2009099131A (en) | Access authorization system, access control server, and business process execution system | |
JP7271147B2 (en) | SERVICE AUTHORIZATION PROCESSING APPARATUS, SYSTEM, METHOD AND PROGRAM | |
JP2017068295A (en) | Settlement processing device mail order ordering and order receiving system, settlement processing method, and program | |
JP6316999B1 (en) | Reservation management call system, reservation management call program, and reservation management call method | |
JP6163170B2 (en) | Service cooperation system, service cooperation apparatus, terminal device, service cooperation method, and service cooperation program | |
KR20170035574A (en) | Method and apparatus for providing digital goods using synchronization of user account | |
JP7556311B2 (en) | Information management server, information management method, and program | |
KR20070061067A (en) | Method and system for handling the network events in application server using open api based web services | |
JP2020009274A (en) | Application information providing system and application information providing method | |
JP4737537B2 (en) | Content information transmitting apparatus, content information transmitting method, and program | |
JP6522490B2 (en) | Network system, control device, and program | |
JP2018181012A (en) | Business cooperation system and business cooperation method | |
JP6649527B2 (en) | Message management device and message management method | |
JP5324276B2 (en) | Information acquisition system, connection destination information acquisition server, and program | |
US20230135722A1 (en) | Distributed system, method, computer program, and computer-readable medium directed to user interaction with media content | |
JP2009157676A (en) | Information providing system | |
JP2007265311A (en) | Customer management system | |
JP2004145499A (en) | Authentication support system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211028 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220728 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220823 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221024 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20221122 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20230111 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230222 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20230222 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20230303 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20230307 |
|
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: 20230328 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230426 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7271147 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |