OAuth 2.0 および OpenID Connect に対する InterSystems IRIS のサポート
OAuth 2.0 および OpenID Connect に対する InterSystems IRIS のサポートは、以下の要素で構成されます。
-
管理ポータルの構成ページ。
クライアント (またはリソース・サーバ) を構成する場合は、[システム管理]→[セキュリティ]→[OAuth 2.0]→[クライアント構成] のオプションを使用します。
承認サーバを構成する場合は、[システム管理]→[セキュリティ]→[OAuth 2.0]→[サーバ構成] のオプションを使用します。
-
%SYS.OAuth2 パッケージのクラス。これらのクラスはクライアント API です。InterSystems IRIS Web アプリケーションを OAuth 2.0 クライアントとして定義すると、そのクライアントはこれらのクラスのメソッドを使用します。
-
%OAuth2 パッケージのクラス。OAuth 2.0 承認サーバとして InterSystems IRIS インスタンスを使用する場合は、%OAuth2.Server パッケージの 1 つ以上のクラスからサブクラスを作成することでサーバをカスタマイズします。%OAuth2 の他のクラスは、コードが呼び出すユーティリティ・メソッドを提供します。
-
OAuth2 パッケージのクラス (IRISSYS データベース内)。このクラスには、InterSystems IRIS 内部で使用される永続クラスが含まれます。そのほとんどは無視できます。ただし、構成項目をプログラムで作成する場合は、このパッケージに含まれるクラスのサブセットを使用することになります。
以下のサブセクションに構成項目の概要を示します。
クライアントの構成項目
OAuth 2.0 クライアントとして機能している InterSystems IRIS インスタンス内で、サーバ記述 (承認サーバを記述) と クライアント構成 (クライアントを構成) という 2 つの結合された構成項目を指定クライアント・アプリケーションに対して定義する必要があります。特定のインスタンスでは、任意の数のサーバ記述を定義できます。下図が示すように、それぞれのサーバ記述は複数のクライアント構成があります。この図は、これらの構成項目に格納されている情報の一部も示しています。
このアーキテクチャにより、同じ承認サーバを使用する複数のクライアント構成を定義することが可能になり、承認サーバの詳細を繰り返し定義する必要がなくなるため構成を簡素化することができます。
"OAuth 2.0 クライアントとしての InterSystems IRIS Web アプリケーションの使用法" に記載されているように、これらの項目は管理ポータルで作成できます。また、"プログラムによる構成項目の作成方法" に記載されているように、プログラムで構成項目を作成することもできます。
サーバの構成項目
OAuth 2.0 承認サーバとして機能している InterSystems IRIS インスタンス内で、サーバ構成 (承認サーバを構成) と複数のクライアント記述を定義する必要があります。下図は、これらの構成項目に格納されている情報の一部を示しています。
特定の InterSystems IRIS インスタンスは、1 つのサーバ構成と複数のクライアント記述を持つことができます。クライアント・アプリケーションごとに 1 つのクライアント記述が必要になります。クライアント記述は、承認サーバのエンドポイントを使用する各リソース・サーバでもそれぞれ 1 つ必要になります。承認サーバのエンドポイントを使用しないリソース・サーバでは、クライアント記述を作成する必要はありません。
"OAuth 2.0 承認サーバとしての InterSystems IRIS の使用法" に記載されているように、これらの項目は管理ポータルで作成できます。また、"プログラムによる構成項目の作成方法" に記載されているように、プログラムで構成項目を作成することもできます。