JP2019139621A - Authentication and approval information integration device and authentication and approval information integration method - Google Patents
Authentication and approval information integration device and authentication and approval information integration method Download PDFInfo
- Publication number
- JP2019139621A JP2019139621A JP2018023847A JP2018023847A JP2019139621A JP 2019139621 A JP2019139621 A JP 2019139621A JP 2018023847 A JP2018023847 A JP 2018023847A JP 2018023847 A JP2018023847 A JP 2018023847A JP 2019139621 A JP2019139621 A JP 2019139621A
- Authority
- JP
- Japan
- Prior art keywords
- api
- authorization information
- authentication
- authentication authorization
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
Abstract
Description
本発明は、アプリケーションを認証認可する技術に関する。 The present invention relates to a technique for authenticating and authorizing an application.
API基盤は、機能や情報をAPI(Application Programing Interface)として提供するAPI提供装置(以下、「イネーブラ」と称する)を束ねて管理する(例えば非特許文献1)。近年、APIを活用して開発されるアプリケーション(以下、「アプリ」と称する)が増えている。 The API base bundles and manages an API providing device (hereinafter referred to as “enabler”) that provides functions and information as an API (Application Programming Interface) (for example, Non-Patent Document 1). In recent years, applications developed using API (hereinafter referred to as “applications”) are increasing.
アプリ開発には、複数のAPI基盤から提供されるAPIを活用することがある。API基盤から払い出されるアプリ認証/認可情報(API−Key、OAuth2.0 Access token等)が多くなると、アプリ認証/認可情報の管理負担や開発コストが増大するという問題があった。 In application development, an API provided from a plurality of API platforms may be used. When application authentication / authorization information (API-Key, OAuth2.0 Access token, etc.) paid out from the API base increases, there is a problem that the management burden and development cost of application authentication / authorization information increase.
非特許文献2のSAMLは、異なるネットドメイン間で統一的なユーザ認証(シングルサインオン等)を実現する規格であるが、事前にサービス間で信頼関係を構築する必要があり、上記の問題を解決するものではない。 SAML of Non-Patent Document 2 is a standard that realizes unified user authentication (single sign-on, etc.) between different net domains, but it is necessary to build a trust relationship between services in advance, It does not solve.
本発明は、上記に鑑みてなされたものであり、複数のAPI基盤のAPIを利用するアプリケーションの開発負担、認証認可情報の管理負担を軽減することを目的とする。 The present invention has been made in view of the above, and an object thereof is to reduce the burden of developing an application that uses a plurality of API-based APIs and the burden of managing authentication authorization information.
第1の本発明に係る認証認可情報統合装置は、複数のAPI基盤の認証認可情報を管理する認証認可情報統合装置であって、前記API基盤から取得した第1の認証認可情報と当該認証認可情報統合装置の生成した第2の認証認可情報とを関連付けて記憶する記憶手段と、前記第2の認証認可情報を含む処理要求を受信した場合、前記記憶手段を参照し、当該処理要求の第2の認証認可情報を当該処理要求に対応する前記API基盤の第1の認証認可情報に変換したうえで、当該処理要求を前記API基盤へ転送する処理手段と、を有することを特徴とする。 An authentication / authorization information integration apparatus according to a first aspect of the present invention is an authentication / authorization information integration apparatus for managing a plurality of API-based authentication / authorization information, wherein the first authentication / authorization information acquired from the API base and the authentication authorization When receiving a storage unit that associates and stores the second authentication authorization information generated by the information integration device and a processing request including the second authentication authorization information, the storage unit is referred to And processing means for transferring the processing request to the API base after converting the authentication authorization information of No. 2 into the API-based first authentication authorization information corresponding to the processing request.
第2の本発明に係る認証認可情報統合方法は、複数のAPI基盤の認証認可情報を管理する認証認可情報統合装置が実行する認証認可情報統合方法であって、前記認証認可情報統合装置は、前記API基盤から取得した第1の認証認可情報と当該認証認可情報統合装置の生成した第2の認証認可情報とを関連付けて記憶する記憶手段を備え、前記第2の認証認可情報を含む処理要求を受信した場合、前記記憶手段を参照し、当該処理要求の第2の認証認可情報を当該処理要求に対応する前記API基盤の第1の認証認可情報に変換するステップと、前記第2の認証認可情報を前記API基盤の第1の認証認可情報に変換した前記処理要求を前記API基盤へ転送するステップと、を有することを特徴とする。 An authentication authorization information integration method according to a second aspect of the present invention is an authentication authorization information integration method executed by an authentication authorization information integration apparatus that manages a plurality of API-based authentication authorization information, A processing request comprising storage means for associating and storing the first authentication authorization information acquired from the API base and the second authentication authorization information generated by the authentication authorization information integration device, and including the second authentication authorization information The second authentication authorization information of the processing request is converted into the API-based first authentication authorization information corresponding to the processing request, with reference to the storage means, and the second authentication And transferring the processing request obtained by converting the authorization information into the API-based first authentication authorization information to the API platform.
本発明によれば、複数のAPI基盤のAPIを利用するアプリケーションの開発負担、認証認可情報の管理負担を軽減することができる。 According to the present invention, it is possible to reduce the burden of developing an application that uses a plurality of API-based APIs and the burden of managing authentication authorization information.
以下、本発明の実施の形態について図面を用いて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本実施形態の認証認可情報統合システムを含む全体構成図である。 FIG. 1 is an overall configuration diagram including an authentication authorization information integration system according to this embodiment.
API基盤2は、1つ以上のイネーブラ3を管理し、管理するイネーブラ3を利用するためのAPIを提供する。API基盤2は、イネーブラ3を利用する権利を示すアプリ認証/認可情報を払い出し、アプリ認証/認可情報を含むAPIリクエストを受け付け、アプリ認証/認可情報が有効であれば、APIリクエストの処理をイネーブラ3に依頼する。なお、図1では、1つのAPI基盤2のみを図示しているが、複数のAPI基盤2が認証認可情報統合システム1に接続される。
The API platform 2 manages one or more enablers 3 and provides an API for using the managed enabler 3. The API base 2 issues application authentication / authorization information indicating the right to use the enabler 3, accepts an API request including the application authentication / authorization information, and if the application authentication / authorization information is valid, the API request processing is enabled. 3 is requested. In FIG. 1, only one API base 2 is illustrated, but a plurality of API bases 2 are connected to the authentication authorization
イネーブラ3は、例えば音声合成や雑談対話などの機能を提供する装置である。図1では、1つのイネーブラ3のみを図示しているが、1つのAPI基盤2が複数のイネーブラ3を管理してもよい。 The enabler 3 is a device that provides functions such as speech synthesis and chat conversation. In FIG. 1, only one enabler 3 is illustrated, but one API base 2 may manage a plurality of enablers 3.
APIクライアント4は、API基盤2の提供するAPIを実行するアプリケーションである。APIクライアント4は、複数のAPI基盤2のAPIを利用してもよい。APIクライアント4は、ユーザ毎に配布されてユーザ利用端末5で実行されるクライアントサイドアプリの場合と、サーバで実行されるサーバサイドアプリの場合がある。 The API client 4 is an application that executes an API provided by the API base 2. The API client 4 may use a plurality of API infrastructure 2 APIs. The API client 4 may be a client-side application distributed for each user and executed on the user use terminal 5, or a server-side application executed on the server.
ユーザ利用端末5は、ユーザがアプリを利用するために用いる端末であり、例えば、パーソナルコンピュータやタブレット等の携帯端末である。クライアントサイドアプリの場合は、ユーザ利用端末5がアプリを実行する。サーバサイドアプリの場合は、ユーザはユーザ利用端末5を用いてサーバにアクセスし、サーバがアプリを実行する。 The user use terminal 5 is a terminal used for a user to use an application, and is, for example, a portable terminal such as a personal computer or a tablet. In the case of a client side application, the user using terminal 5 executes the application. In the case of a server side application, the user accesses the server using the user use terminal 5, and the server executes the application.
アプリ開発者利用端末6は、APIクライアント4の開発者が利用する端末である。開発者は、アプリ開発者利用端末6を用いて、アプリ情報、API基盤2から取得したアプリ認証/認可情報を認証認可情報統合システム1に入力する。
The application developer use
認証認可情報統合システム1は、複数のAPI基盤2のアプリ認証/認可情報を管理し、APIクライアント4に対しては、自身の発行したAPI−Key(アプリ認証/認可情報)を払い出す。APIクライアント4がクライアントサイドアプリの場合は、ユーザ利用端末5のAPIクライアント4のそれぞれに対してAPI−Keyを払い出す。APIクライアント4がサーバサイドアプリの場合は、サーバに対して1つのAPI−Keyを払い出す。APIクライアント4は、API基盤2のAPIを呼び出すときに、認証認可情報統合システム1の払い出したAPI−Keyを含むAPIリクエストを送信する。
The authentication / authorization
認証認可情報統合システム1は、自身が払い出したAPI−Keyを含むAPIリクエストを受信すると、そのAPI−Keyの有効性を確認したうえで、そのAPI−Keyを適切なAPI基盤2のアプリ認証/認可情報に変換し、変換後のアプリ認証/認可情報を含むAPIリクエストをAPI基盤2へ転送する。
Upon receiving an API request including the API-Key issued by itself, the authentication authorization
なお、特に指定しない限り、各装置間は、HTTP(Hypertext Transfer Protocol)にて通信する。 Unless otherwise specified, the apparatuses communicate with each other using HTTP (Hypertext Transfer Protocol).
次に、認証認可情報統合システム1の構成について説明する。
Next, the configuration of the authentication authorization
図1に示す認証認可情報統合システム1は、認証認可情報管理部11、認証認可情報記憶部12、リクエスト処理部13、及びトークン取得部14を備える。認証認可情報統合システム1が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは認証認可情報統合システム1が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。
The authentication / authorization
認証認可情報管理部11は、アプリ開発者利用端末6からアプリ情報とそのアプリが利用する1つ以上のAPI基盤2から払い出されたアプリ認証/認可情報を受け付け、アプリに対するAPI−Keyを払い出し、アプリ情報、アプリ認証/認可情報、および払い出したAPI−Keyを認証認可情報記憶部12に記録する。
The authentication authorization
また、認証認可情報管理部11は、APIクライアント4がクライアントサイドアプリである場合に、APIクライアント4からのAPI−Keyの発行要求に対してAPI−Keyを生成し、生成したAPI−Keyを認証認可情報記憶部12に記録する。
Further, when the API client 4 is a client-side application, the authentication authorization
認証認可情報記憶部12は、アプリの開発者から入力したアプリ情報、API基盤2のアプリ認証/認可情報、及びアプリに払い出したAPI−Keyを記憶する。図2〜図6に、認証認可情報記憶部12の記憶するデータの例を示す。 The authentication authorization information storage unit 12 stores application information input from an application developer, application authentication / authorization information of the API base 2, and API-Key paid out to the application. 2 to 6 show examples of data stored in the authentication / authorization information storage unit 12.
図2は、アプリ情報テーブルの例である。認証認可情報統合システム1のAPI−Keyとアプリ種別(サーバサイドアプリ又はクライアントサイドアプリ)を記憶する。
FIG. 2 is an example of the application information table. The API-Key of the authentication authorization
図3は、アプリ認証/認可情報種別テーブルの例である。API基盤2のドメインとアプリ認証/認可情報種別を記憶する。 FIG. 3 is an example of an application authentication / authorization information type table. Stores the API platform 2 domain and application authentication / authorization information type.
図4は、API−Key変換テーブルの例である。認証認可情報統合システム1のAPI−KeyとAPI基盤2のAPI−Keyを記憶する。API基盤2のアプリ認証/認可情報種別がAPI−Keyの場合に、認証認可情報統合システム1のAPI−KeyをAPI基盤2のAPI−Keyに変換するときに用いる。
FIG. 4 is an example of an API-Key conversion table. The API-Key of the authentication authorization
図5は、Access token変換テーブルの例である。認証認可情報統合システム1のAPI−KeyとAPI基盤2のAccess tokenを記憶する。API基盤2のアプリ認証/認可情報種別がAccess tokenの場合に、認証認可情報統合システム1のAPI−KeyをAPI基盤2のAccess tokenに変換するときに用いる。
FIG. 5 is an example of an Access token conversion table. The API-Key of the authentication authorization
図6は、OAuth2.0情報テーブルの例である。図5のAccess tokenを取得するために必要な情報を記憶する。 FIG. 6 is an example of an OAuth 2.0 information table. Information necessary for acquiring the Access token of FIG. 5 is stored.
リクエスト処理部13は、APIクライアント4からAPIリクエストを受信し、APIリクエストに含まれるAPI−Keyの有効性を確認し、そのAPI−Keyを適切なAPI基盤2のアプリ認証/認可情報へ変換する。そして、リクエスト処理部13は、変換後のアプリ認証/認可情報を含むAPIリクエストをAPI基盤2へ転送し、API基盤2から受信した処理結果をAPIクライアント4に返却する。
The
リクエスト処理部13は、API−Key発行要求を受信すると、認証認可情報管理部11にAPI−Keyの生成を依頼し、生成されたAPI−Keyを返却する。
Upon receiving the API-Key issuance request, the
トークン取得部14は、API基盤2のアプリ認証/認可情報種別がAccess tokenである場合に、API基盤2からAccess tokenを取得し、認証認可情報記憶部12に記録する。
When the application authentication / authorization information type of the API platform 2 is Access token, the
次に、認証認可情報統合システム1の各部の処理について説明する。
Next, processing of each unit of the authentication authorization
まず、認証認可情報管理部11の処理について説明する。
First, the process of the authentication authorization
図7は、認証認可情報管理部11によるアプリ認証/認可情報の事前登録処理の流れを示すフローチャートである。
FIG. 7 is a flowchart showing a flow of pre-registration processing of application authentication / authorization information by the authentication / authorization
認証認可情報管理部11は、アプリ開発者利用端末6からアプリ情報及びAPI基盤2のアプリ認証/認可情報を受信すると(ステップS11)、アプリに対してAPI−Keyを払い出し(ステップS12)、API−Keyと受信したアプリ情報及びアプリ認証/認可情報を認証認可情報記憶部12に記録する(ステップS13)。
Upon receiving the application information and the application authentication / authorization information of the API base 2 from the application developer using terminal 6 (Step S11), the authentication authorization
なお、アプリ種別がクライアントサイドアプリである場合は、ここで記録するAPI−Keyは仮API−Keyとなる。ユーザ利用端末5のAPIクライアント4からAPI−Key発行要求を受信した際に、本API−Keyを発行して記録する。 When the application type is a client-side application, the API-Key recorded here is a temporary API-Key. When the API-Key issuance request is received from the API client 4 of the user use terminal 5, the API-Key is issued and recorded.
また、Access tokenテーブルのAccess token及びその有効期限は、APIクライアント4からAPIリクエストを受信したときの認可処理の過程でAPI基盤2から取得するため、この時点では記録されない。 Further, since the access token and the validity period of the access token table are acquired from the API base 2 in the course of the authorization process when the API request is received from the API client 4, they are not recorded at this time.
図8は、認証認可情報管理部11によるAPI−Keyの払い出し処理の流れを示すフローチャートである。
FIG. 8 is a flowchart showing a flow of API-Key payout processing by the authentication authorization
認証認可情報管理部11は、API−Key発行要求を受信すると(ステップS221)、API−Key発行要求に含まれる情報からAPI−Keyを生成して認証認可情報記憶部12に記録し(ステップS222)、生成したAPI−Keyをリクエスト処理部13に返却する(ステップS223)。
Upon receiving the API-Key issuance request (Step S221), the authentication authorization
認証認可情報管理部11は、API−Key発行要求内の、仮API−Key、ユーザIDとパスワードを基にしたハッシュ値からAPI−Keyを生成する。ここでのユーザIDとパスワードは、認証認可情報統合システム1のユーザIDとパスワードであり、事前にユーザに通知しておく。
The authentication authorization
続いて、リクエスト処理部13の処理について説明する。
Subsequently, processing of the
図9は、リクエスト処理部13によるクライアントサイドアプリに対するAPI−Keyの払い出し処理の流れを示すフローチャートである。
FIG. 9 is a flowchart showing the flow of API-Key payout processing for the client-side application by the
リクエスト処理部13は、クライアントサイドアプリであるAPIクライアント4からAPI−Key発行要求を受信すると(ステップS21)、認証認可情報管理部11にAPI−Keyの生成を依頼し、API−Keyを生成する(ステップS22)。認証認可情報管理部11は、図8で示した処理を実行し、API−Keyを生成する。
When the
リクエスト処理部13は、生成したAPI−KeyをAPIクライアント4へ返却する(ステップS23)。
The
図10は、リクエスト処理部13によるAPIリクエストを受信したときの処理の流れを示すフローチャートである。
FIG. 10 is a flowchart showing the flow of processing when an API request is received by the
リクエスト処理部13は、APIクライアント4からAPIリクエストを受信すると(ステップS31)、APIリクエストに含まれるAPI−Keyが正規のものであるか否か判定する(ステップS32)。
When receiving the API request from the API client 4 (step S31), the
API−Keyが正規のものでない場合(ステップS32のNo)、リクエスト処理部13は、エラーをAPIクライアント4に返却する(ステップS39)。
If the API-Key is not regular (No in step S32), the
API−Keyが正規のものである場合(ステップS32のYes)、リクエスト処理部13は、アプリ認証/認可情報種別テーブルを参照し、APIリクエストの転送先のAPI基盤2のアプリ認証/認可情報種別がAPI−Keyであるか否か判定する(ステップS33)。APIリクエストの転送先のAPI基盤2は、APIリクエストに含まれるURL(Uniform Resource Locator)に基づいて特定できる。
If the API-Key is valid (Yes in step S32), the
転送先のAPI基盤2のアプリ認証/認可情報種別がAPI−Keyの場合(ステップS33のYes)、ステップS36に進む。 When the application authentication / authorization information type of the API base 2 of the transfer destination is API-Key (Yes in step S33), the process proceeds to step S36.
転送先のAPI基盤2のアプリ認証/認可情報種別がAccess tokenの場合(ステップS33のNo)、リクエスト処理部13は、Access token変換テーブルを参照し、APIクライアント4について転送先のAPI基盤2のAccess tokenが取得されており、有効期限内であるか否か判定する(ステップS34)。
When the application authentication / authorization information type of the API platform 2 at the transfer destination is “Access token” (No in step S33), the
Access tokenが取得されており、有効である場合(ステップS34のYes)、ステップS36に進む。 If Access token has been acquired and is valid (Yes in step S34), the process proceeds to step S36.
Access tokenが取得されていないか、取得したAccess tokenの有効期限を過ぎている場合(ステップS34のNo)、リクエスト処理部13は、トークン取得部14にOAuth2.0認可処理を依頼し、Access tokenを取得する(ステップS35)。トークン取得部14は、後述の図11で示す処理を実行し、API基盤2からAccess tokenを取得する。
If the access token has not been acquired or if the acquired access token has expired (No in step S34), the
リクエスト処理部13は、APIリクエストに含まれるAPI−Keyを転送先のAPI基盤2のアプリ認証/認可情報に変換し、適切なAPI基盤2へAPIリクエストを送信する(ステップS36)。リクエスト処理部13は、転送先のAPI基盤2のアプリ認証/認可情報がAPI−Keyの場合は、API−Key変換テーブルを参照してAPIリクエストを書き換え、転送先のAPI基盤2のアプリ認証/認可情報がAccess tokenの場合は、Access token変換テーブルを参照してAPIリクエストを書き換える。
The
リクエスト処理部13は、API基盤2からAPIリクエストの処理結果を受信すると(ステップS37)、その処理結果をAPIクライアント4に返却する(ステップS38)。
When receiving the processing result of the API request from the API base 2 (Step S37), the
続いて、トークン取得部14の処理について説明する。
Next, processing of the
図11は、トークン取得部14によるAPI基盤2からAccess tokenを取得する処理の流れを示すフローチャートである。
FIG. 11 is a flowchart showing a flow of processing for acquiring an Access token from the API base 2 by the
トークン取得部14は、OAuth2.0認可処理要求を受信すると(ステップS351)、OAuth2.0情報テーブルから必要な情報を抽出して、API基盤2に対して認可処理を実施する(ステップS352)。
When receiving the OAuth 2.0 authorization processing request (Step S351), the
API基盤2からAccess tokenを取得すると、Access tokenをAccess token変換テーブルに記録して、リクエスト処理部13へ通知する(ステップS353)。 When the access token is acquired from the API base 2, the access token is recorded in the access token conversion table and notified to the request processing unit 13 (step S353).
次に、システム全体の処理の流れについて説明する。 Next, the processing flow of the entire system will be described.
図12は、APIクライアント4がサーバサイドアプリであり、API基盤のアプリ認証/認可情報種別がAPI−Keyである場合の処理の流れを示すシーケンス図である。 FIG. 12 is a sequence diagram showing the flow of processing when the API client 4 is a server-side application and the API-based application authentication / authorization information type is API-Key.
ユーザは、ユーザ利用端末5を用いて、サーバサイドアプリにアクセスする(ステップS41)。 The user accesses the server side application using the user use terminal 5 (step S41).
サーバサイドアプリは、認証認可情報統合システム1の払い出したAPI−Key(aaa−key)を含むAPIリクエストを認証認可情報統合システム1へ送信する(ステップS42)。
The server-side application transmits an API request including the API-Key (aaa-key) issued by the authentication / authorization
認証認可情報統合システム1は、APIリクエストを受信すると、APIリクエストに含まれるAPI−Key(aaa−key)を認証し、API−Key(aaa−key)をAPI基盤AのAPI−Key(key1)に変換する(ステップS43)。
Upon receiving the API request, the authentication authorization
認証認可情報統合システム1は、API基盤AのAPI−Key(key1)を含むAPIリクエストをAPI基盤Aに送信する(ステップS44)。
The authentication authorization
API基盤Aは、イネーブラA−1に処理を依頼し(ステップS45)、処理結果を受信する(ステップS46)。API基盤とイネーブラが一体の場合もある。 The API base A requests the enabler A-1 for processing (step S45) and receives the processing result (step S46). In some cases, the API board and enabler are integrated.
認証認可情報統合システム1は、API基盤AからAPIリクエストのレスポンスを受信し、サーバサイドアプリへ返却する(ステップS47)。
The authentication authorization
その後、サーバサイドアプリは、API基盤Bに対するAPIリクエストを認証認可情報統合システム1へ送信する(ステップS48)。このAPIリクエストには、認証認可情報統合システム1のAPI−Key(aaa−key)が含まれる。
Thereafter, the server-side application transmits an API request for the API base B to the authentication authorization information integration system 1 (step S48). This API request includes the API-Key (aaa-key) of the authentication authorization
認証認可情報統合システム1は、APIリクエストを受信すると、APIリクエストに含まれるAPI−Key(aaa−key)を認証し、API−Key(aaa−key)をAPI基盤BのAPI−Key(key2)に変換し(ステップS49)、API基盤BのAPI−Key(key2)を含むAPIリクエストをAPI基盤Bへ送信する(ステップS50)。
Upon receiving the API request, the authentication authorization
API基盤Bは、イネーブラB−1に処理を依頼し(ステップS51)、処理結果を受信する(ステップS52)。 The API base B requests the enabler B-1 for processing (step S51) and receives the processing result (step S52).
認証認可情報統合システム1は、API基盤BからAPIリクエストのレスポンスを受信し、サーバサイドアプリへ返却する(ステップS53)。
The authentication authorization
図13は、APIクライアント4がサーバサイドアプリであり、API基盤のアプリ認証/認可情報種別がAccess tokenである場合の処理の流れを示すシーケンス図である。図13では、OAuth2.0の認可方式のうち、アプリケーションだけの認証(Client Credentials Grants)の場合を示す。 FIG. 13 is a sequence diagram showing a flow of processing when the API client 4 is a server-side application and the API-based application authentication / authorization information type is Access token. FIG. 13 shows a case of authentication only for an application (Client Credentials Grants) among the authorization methods of OAuth 2.0.
図12の処理と同様に、ユーザがサーバサイドアプリにアクセスすると(ステップS41)、サーバサイドアプリは、認証認可情報統合システム1のAPI−Key(aaa−key)を含むAPIリクエストを認証認可情報統合システム1へ送信し(ステップS42)、認証認可情報統合システム1は、APIリクエストに含まれるAPI−Key(aaa−key)に基づいてサーバサイドアプリを認証する(ステップS43)。
12, when the user accesses the server-side application (step S41), the server-side application integrates an API request including the API-Key (aaa-key) of the authentication authorization
API基盤AのAccess tokenを取得していないか、有効期限を超えているので、認証認可情報統合システム1は、Access tokenリクエストをAPI基盤Aへ送信し(ステップS61)、API基盤AからAccess tokenを受信する(ステップS62)。受信したAccess token(token1)は、Access token変換テーブルに記録される。
Since the API token A access token has not been acquired or has expired, the authentication authorization
認証認可情報統合システム1は、サーバサイドアプリから受信したAPIリクエストのアプリ認証/認証認可情報をAccess token(token1)に変換し(ステップS63)、Access token(token1)を含むAPIリクエストをAPI基盤Aに送信する(ステップS64)。
The authentication authorization
API基盤Aは、イネーブラA−1に処理を依頼し(ステップS65)、処理結果を受信する(ステップS66)。 The API base A requests the enabler A-1 for processing (step S65) and receives the processing result (step S66).
認証認可情報統合システム1は、API基盤AからAPIリクエストのレスポンスを受信し、サーバサイドアプリへ返却する(ステップS67)。
The authentication authorization
API基盤Bに対するAPIリクエストも上記と同様に処理される。API基盤Bのアプリ認証/認可情報種別がAPI−Keyの場合は、図12で示した処理が行われる。 An API request for the API base B is processed in the same manner as described above. When the application authentication / authorization information type of API base B is API-Key, the processing shown in FIG. 12 is performed.
図14は、APIクライアント4がクライアントサイドアプリである場合の処理の流れを示すシーケンス図である。サーバサイドアプリの場合とは、認証認可情報統合システム1がAPIクライアント4からの要求に応じてAPI−Keyを払い出す点で相違する。
FIG. 14 is a sequence diagram showing the flow of processing when the API client 4 is a client-side application. It differs from the server side application in that the authentication authorization
ユーザは、ユーザ利用端末5を操作し、クライアントサイドアプリにユーザIDとパスワードを入力する(ステップS71)。 The user operates the user use terminal 5 and inputs a user ID and a password to the client side application (step S71).
クライアントサイドアプリは、仮API−Key、ユーザIDとパスワードを基にしたハッシュ値を含むAPI−Key発行要求を認証認可情報統合システム1へ送信する(ステップS72)。 The client-side application transmits an API-Key issuance request including the temporary API-Key and a hash value based on the user ID and password to the authentication authorization information integration system 1 (step S72).
認証認可情報統合システム1は、API−Key発行要求内の仮API−Key、ユーザIDとパスワードを基にしたハッシュ値からAPI−Keyを生成し(ステップS73)、生成したAPI−Key(bbb−key)をクライアントサイドアプリへ返却する(ステップS74)。生成したAPI−Keyは認証認可情報記憶部12に記録する。
The authentication authorization
クライアントサイドアプリは、API−Key(bbb−key)を含むAPIリクエストを認証認可情報統合システム1へ送信する(ステップS75)。 The client-side application transmits an API request including API-Key (bbb-key) to the authentication / authorization information integration system 1 (step S75).
APIリクエストの処理は、図12,13で説明したサーバサイドアプリの場合の処理と同様である。 The API request processing is the same as the processing for the server-side application described with reference to FIGS.
APIリクエストの実行後、認証認可情報統合システム1は、APIリクエストのレスポンスをクライアントサイドアプリへ返却する(ステップS76)。
After executing the API request, the authentication authorization
以上説明したように、本実施の形態によれば、API基盤2のアプリ認証/認可情報とアプリに払い出したAPI−Keyとを関連付けて認証認可情報記憶部12に記憶し、認証認可情報統合システム1が払い出したAPI−Keyを含むAPIリクエストを受信した場合、リクエスト処理部13は、認証認可情報記憶部12を参照し、APIリクエストに含まれるAPI−KeyをAPIリクエストの転送先のAPI基盤2のアプリ認証/認可情報に変換したうえで、API基盤2へ転送することにより、アプリの開発者は、認証認可情報統合システム1の払い出したAPI−Keyのみを用いて複数のAPI基盤2のAPIを活用するアプリを開発できるので、複数のAPI基盤2の認証認可処理のそれぞれに対応する開発負担と、複数のAPI基盤2のアプリ認証/認可情報の管理負担を軽減できる。
As described above, according to the present embodiment, the application authentication / authorization information of the API base 2 and the API-Key paid out to the application are associated and stored in the authentication authorization information storage unit 12, and the authentication authorization information integrated system When the API request including the API-Key issued by 1 is received, the
1…認証認可情報統合システム
11…認証認可情報管理部
12…認証認可情報記憶部
13…リクエスト処理部
14…トークン取得部
2…API基盤
3…イネーブラ
4…APIクライアント
5…ユーザ利用端末
6…アプリ開発者利用端末
DESCRIPTION OF
Claims (4)
前記API基盤から取得した第1の認証認可情報と当該認証認可情報統合装置の生成した第2の認証認可情報とを関連付けて記憶する記憶手段と、
前記第2の認証認可情報を含む処理要求を受信した場合、前記記憶手段を参照し、当該処理要求の第2の認証認可情報を当該処理要求に対応する前記API基盤の第1の認証認可情報に変換したうえで、当該処理要求を前記API基盤へ転送する処理手段と、
を有することを特徴とする認証認可情報統合装置。 An authentication / authorization information integration device for managing a plurality of API-based authentication / authorization information,
Storage means for storing the first authentication authorization information acquired from the API base and the second authentication authorization information generated by the authentication authorization information integration device in association with each other;
When the processing request including the second authentication authorization information is received, the storage unit is referred to and the second authentication authorization information of the processing request is used as the API-based first authentication authorization information corresponding to the processing request. Processing means for transferring the processing request to the API base,
An authentication authorization information integration device characterized by comprising:
前記第2の認証認可情報を含む処理要求を受信した場合、前記記憶手段に前記処理要求に対応する前記API基盤の第1の認証認可情報が記憶されていない場合又は前記記憶手段に記憶された前記第1の認証認可情報が有効でない場合は、前記取得情報を用いて前記API基盤から第1の認証認可情報を取得し、取得した前記第1の認証認可情報を前記記憶手段に記録する取得手段を有することを特徴とする請求項1に記載の認証認可情報統合装置。 The storage means stores acquisition information for acquiring first authentication authorization information from the API base,
When the processing request including the second authentication authorization information is received, the API-based first authentication authorization information corresponding to the processing request is not stored in the storage unit or stored in the storage unit When the first authentication authorization information is not valid, the first authentication authorization information is obtained from the API base using the obtained information, and the obtained first authentication authorization information is recorded in the storage unit The authentication authorization information integration device according to claim 1, further comprising: means.
前記認証認可情報統合装置は、前記API基盤から取得した第1の認証認可情報と当該認証認可情報統合装置の生成した第2の認証認可情報とを関連付けて記憶する記憶手段を備え、
前記第2の認証認可情報を含む処理要求を受信した場合、前記記憶手段を参照し、当該処理要求の第2の認証認可情報を当該処理要求に対応する前記API基盤の第1の認証認可情報に変換するステップと、
前記第2の認証認可情報を前記API基盤の第1の認証認可情報に変換した前記処理要求を前記API基盤へ転送するステップと、
を有することを特徴とする認証認可情報統合方法。 An authentication authorization information integration method executed by an authentication authorization information integration apparatus that manages a plurality of API-based authentication authorization information,
The authentication authorization information integration device includes storage means for storing the first authentication authorization information acquired from the API base and the second authentication authorization information generated by the authentication authorization information integration device in association with each other,
When the processing request including the second authentication authorization information is received, the storage unit is referred to and the second authentication authorization information of the processing request is used as the API-based first authentication authorization information corresponding to the processing request. Converting to
Transferring the processing request obtained by converting the second authentication authorization information into the API-based first authentication authorization information to the API board;
An authentication authorization information integration method characterized by comprising:
前記第2の認証認可情報を含む処理要求を受信した場合、前記記憶手段に前記処理要求に対応する前記API基盤の第1の認証認可情報が記憶されていない場合又は前記記憶手段に記憶された前記第1の認証認可情報が有効でない場合は、前記取得情報を用いて前記API基盤から第1の認証認可情報を取得し、取得した前記第1の認証認可情報を前記記憶手段に記録するステップを有することを特徴とする請求項3に記載の認証認可情報統合方法。 The storage means stores acquisition information for acquiring first authentication authorization information from the API base,
When the processing request including the second authentication authorization information is received, the API-based first authentication authorization information corresponding to the processing request is not stored in the storage unit or stored in the storage unit If the first authentication authorization information is not valid, the first authentication authorization information is obtained from the API base using the obtained information, and the obtained first authentication authorization information is recorded in the storage means The authentication authorization information integration method according to claim 3, further comprising:
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018023847A JP2019139621A (en) | 2018-02-14 | 2018-02-14 | Authentication and approval information integration device and authentication and approval information integration method |
PCT/JP2019/004862 WO2019159894A1 (en) | 2018-02-14 | 2019-02-12 | Authentication approval information integration device and authentication approval information integration method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018023847A JP2019139621A (en) | 2018-02-14 | 2018-02-14 | Authentication and approval information integration device and authentication and approval information integration method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019139621A true JP2019139621A (en) | 2019-08-22 |
Family
ID=67618751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018023847A Pending JP2019139621A (en) | 2018-02-14 | 2018-02-14 | Authentication and approval information integration device and authentication and approval information integration method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2019139621A (en) |
WO (1) | WO2019159894A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11163621B1 (en) * | 2020-07-08 | 2021-11-02 | Fujitsu Limited | Automated API access using machine learning |
US11627127B2 (en) | 2019-12-05 | 2023-04-11 | Hitachi, Ltd. | Authentication and authorization system and authentication and authorization method using access tokens |
KR20230110065A (en) * | 2022-01-14 | 2023-07-21 | 주식회사 에어큐브 | Method for security conformity verification and apparatus thereof |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112738167A (en) * | 2020-12-18 | 2021-04-30 | 福建新大陆软件工程有限公司 | File service opening method, device, equipment and medium based on API gateway |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BR112013022905A2 (en) * | 2011-03-08 | 2017-11-14 | Telefonica Sa | method of providing authorized access to a service application to use a protected end-user resource |
JP6245949B2 (en) * | 2013-11-11 | 2017-12-13 | キヤノン株式会社 | Authorization server system, control method thereof, and program thereof. |
JP6353471B2 (en) * | 2016-02-09 | 2018-07-04 | 日本電信電話株式会社 | API linkage apparatus, API linkage method, and API linkage program |
-
2018
- 2018-02-14 JP JP2018023847A patent/JP2019139621A/en active Pending
-
2019
- 2019-02-12 WO PCT/JP2019/004862 patent/WO2019159894A1/en active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11627127B2 (en) | 2019-12-05 | 2023-04-11 | Hitachi, Ltd. | Authentication and authorization system and authentication and authorization method using access tokens |
US11163621B1 (en) * | 2020-07-08 | 2021-11-02 | Fujitsu Limited | Automated API access using machine learning |
KR20230110065A (en) * | 2022-01-14 | 2023-07-21 | 주식회사 에어큐브 | Method for security conformity verification and apparatus thereof |
KR102636628B1 (en) | 2022-01-14 | 2024-02-15 | 주식회사 에어큐브 | Method for security conformity verification and apparatus thereof |
Also Published As
Publication number | Publication date |
---|---|
WO2019159894A1 (en) | 2019-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104255007B (en) | OAUTH frameworks | |
WO2019159894A1 (en) | Authentication approval information integration device and authentication approval information integration method | |
JP6141076B2 (en) | System, control method therefor, access management service system, control method therefor, and program | |
US9467457B2 (en) | Identity management and authentication system for resource access | |
TWI400922B (en) | Authentication of a principal in a federation | |
TWI439883B (en) | Digital rights management (drm)-enabled policy management for an identity provider in a federated environment | |
JP5614340B2 (en) | System, authentication information management method, and program | |
CN1514569B (en) | Method and system used for checking in different united environment | |
KR101504801B1 (en) | System and method for accessing private digital content | |
KR101467174B1 (en) | Method and apparatus for communication and method and apparatus for controlling communication | |
US9432353B2 (en) | Serialized authentication and authorization services | |
CN108306877A (en) | Verification method, device and the storage medium of subscriber identity information based on NODE JS | |
US9923906B2 (en) | System, method and computer program product for access authentication | |
EP2954663B1 (en) | Mechanism and protocol to authorize bilateral sessions between websites based on open authorization | |
US8910257B2 (en) | Representing security identities using claims | |
CN108632291A (en) | A kind of third party authorizes login method and system | |
Singh et al. | Identity management in cloud computing through claim-based solution | |
JP4932154B2 (en) | Method and system for providing user authentication to a member site in an identity management network, method for authenticating a user at a home site belonging to the identity management network, computer readable medium, and system for hierarchical distributed identity management | |
JP6626466B2 (en) | API providing apparatus and API use right transfer consent method | |
JP2005346571A (en) | Authentication system and authentication method | |
Siriwardena et al. | UMA Evolution | |
JP2004302907A (en) | Network device and authentication server | |
WO2023160632A1 (en) | Method for setting cloud service access permissions of enclave instance, and cloud management platform | |
JP2005293088A (en) | Authentication system and method | |
Tanmoy | Single Sign-On Feature for Customer Life-Cycle Management Application |