呼び出し元への API 役割の割り当て
呼び出し元への API 役割の割り当て方法は、呼び出し元の種類によって異なります。
内部ユーザーへの API 役割の割り当て
内部ユーザーは、ClaimCenter 運用データベースにユーザーとしてリストされている個人です。例えば、Andy Applegate さんは ClaimCenter 担当者であり、内部ユーザーです。
内部ユーザーが(基本認証またはベアラートークン認証のいずれかを使用して)システム API 呼び出しを行う場合、ClaimCenter がこの内部ユーザーのユーザー役割について運用データベースにクエリを実行します。ユーザーに付与されるエンドポイントアクセス権は、すべての API 役割に対するアクセス権であり、当該 API 役割の名前はユーザーのユーザー役割の名前に対応します。
例えば、Andy Applegate さんは内部ユーザーであり、2 つのユーザー役割(Adjuster と Reinsurance Manager)を持つと仮定します。Andy Applegate さんがシステム API 呼び出しをトリガします。API 呼び出しを受信すると、ClaimCenter は Andy Applegate さんのユーザー役割についてデータベースにクエリを実行します。Adjuster と Reinsurance Manager の 2 つのユーザー役割が返されます。 ClaimCenter によって、API 役割(名前は Adjuster と Reinsurance Manager)で定義されたエンドポイントアクセス権が、Andy Applegate さんに付与されます。
API 役割と ClaimCenter ユーザー役割
内部ユーザーの場合、エンドポイントアクセス権の有効化に使用される役割のセットが 2 つあります。論理役割ごとに、同じ名前の ClaimCenter ユーザー役割と API 役割があります。ユーザー役割に見合ったエンドポイントアクセス権を API 役割で付与します。
以下の表は、2 つの種類の役割の比較を示しています。
| 役割の種類 | 役割が指定する内容 | ClaimCenter に直接ログインする内部ユーザーの場合 | システム API 呼び出しをトリガする内部ユーザー場合 | 役割をコンフィギュレーションする場所 |
|---|---|---|---|---|
|
InsuranceSuite のユーザー役割 |
システム権限のセット | これにより、ClaimCenter ユーザーインターフェイスを介してユーザーが実行できる内容が指定されます | ユーザーに割り当てる API 役割を決定するために使用されます | [役割]画面の ClaimCenter[管理]タブ |
| API 役割 | アクセス可能なエンドポイント、操作、およびフィールドのリスト | 該当なし | これにより、ユーザーに付与されるエンドポイントアクセス権が指定されます | Studio 内の一連の YAML ファイル |
外部ユーザーおよびサービスへの API 役割の割り当て
外部ユーザーは、保険会社にとって既知である個人ですが、ClaimCenter 運用データベース内にユーザーとしてリストされていない個人です。サービスは、サービス間アプリケーションです。
外部ユーザーまたはサービスが API 呼び出しを行う場合、呼び出しには JWT(JSON Web Token)が含まれます。この JWT には、呼び出し元に関する認証情報(呼び出し元に割り当てられる API 役割など)が含まれています。
JWT 内の API 役割情報の解析
ClaimCenter は、JWT を受信すると、付与する API 役割を検索します。この情報は、groups トークンクレーム内(外部ユーザーの場合)または scp トークンクレーム内(サービスの場合)にあります。該当トークンクレームの値が API 役割と見なされる条件は、先頭が gwa.<planetclass>.<xc>. であり、<planetclass> が prod、preprod、または lower のいずれかに設定され、<xc> がアプリケーションコード(cc や pc など) の場合です。ClaimCenter によって、値ごとに以下が実行されます。
- 接頭辞の
gwa.<planetclass>.<xc>.サブ文字列が取り除かれます。 - 文字列で残りの部分にあるスペースがすべて、アンダースコアに変換されます。
- 次に、同じ名前を持つ API 役割ファイルがないか検索が実行されます。
例えば、外部ユーザーの JWT に groups トークンクレームがあり、gwa.prod.cc.Customer Service Representative という 1 つの文字列が含まれているとします。 ClaimCenter によって先頭の gwa.prod.cc. が取り除かれ、スペースがアンダースコアに変換されて、Customer_Service_Representative という文字列になります。次に、Customer_Service_Representative.role.yaml というファイル名を持つ API 役割が検索されます。
結果の文字列と API 役割名の間で一致するものがない場合、呼び出し元にエンドポイントアクセス権は付与されません。
結果のサブ文字列と API 役割名の間で一致するものが複数ある場合、一致した役割すべてで指定されているアクセス権の和集合が、呼び出し元に付与されます。つまり、API 役割は論理積になります。
他の種類の呼び出し元への API 役割の割り当て
未認証呼び出し元は、認証情報を提供しないユーザーまたはサービスです。未認証呼び出し元は、メタデータエンドポイントにのみアクセスできます。未認証呼び出し元には、Unauthenticated という API 役割が自動的に割り当てられます。