2.6. Financial-grade API (FAPI) サポート
Red Hat build of Keycloak を使用すると、管理者はクライアントが以下の仕様に準拠していることを簡単に確認できます。
このコンプライアンスは、Red Hat build of Keycloak サーバーが、これらの仕様に記載されている認可サーバーの要件を検証することを意味します。Red Hat build of Keycloak アダプターには FAPI に対する特別なサポートがないため、クライアント (アプリケーション) 側で必要な検証は、引き続き手動で行うか、その他のサードパーティーソリューションを介して実行する必要がある場合があります。
2.6.1. FAPI クライアントプロファイル リンクのコピーリンクがクリップボードにコピーされました!
クライアントが FAPI に準拠していることを確認するには、サーバー管理ガイド の説明に従って、レルムでクライアントポリシーを設定し、FAPI サポート用のグローバルクライアントプロファイルにリンクします。このプロファイルは、各レルムで自動的に使用可能になります。クライアントが準拠する必要のある FAPI プロファイルに基づいて、fapi-1-baseline または fapi-1-advanced プロファイルのいずれかを使用できます。また、FAPI 2 Draft 仕様に準拠させる場合は、プロファイル fapi-2-security-profile または fapi-2-message-signing を使用できます。
Pushed Authorization Request (PAR) を使用する場合は、クライアントが fapi-1-baseline プロファイルおよび fapi-1-advanced の両方を PAR 要求に使用することが推奨されます。具体的には、fapi-1-baseline プロファイルには、pkce-enforcer エグゼキューターが含まれています。これにより、クライアントはセキュリティーで保護された S256 アルゴリズムで PKCE を確実に使用します。これは、PAR 要求を使用しない限り、FAPI Advanced クライアントには必須ではありません。
FAPI に準拠する方法で CIBA を使用する場合は、クライアントが fapi-1-advanced および fapi-ciba クライアントプロファイルの両方を使用していることを確認してください。fapi-ciba プロファイルには CIBA 固有のエクゼキューターのみが含まれるため、fapi-1-advanced プロファイル、または要求されたエクゼキューターを含む他のクライアントプロファイルを使用する必要があります。FAPI CIBA 仕様の要件を実施する場合は、機密クライアントまたは証明書をバインドしたアクセストークンの適用など、より多くの要件が必要になります。
2.6.2. Open Finance Brasil Financial-grade API Security Profile リンクのコピーリンクがクリップボードにコピーされました!
Red Hat build of Keycloak は、Open Finance Brasil Financial-grade API Security Profile 1.0 Implementers Draft 3 に準拠しています。このプロファイルの一部の要件は、FAPI 1 Advanced 仕様よりも厳格です。そのため、一部の要件を適用するには、より厳格な方法で クライアントポリシー を設定する必要がある場合があります。以下の場合は、特にその必要があります。
-
クライアントが PAR を使用しない場合は、暗号化された OIDC 要求オブジェクトが使用されていることを確認してください。これは、
Encryption Requiredを有効にして設定されたsecure-request-objectエグゼキューターを持つクライアントプロファイルを使用して実現できます。 -
JWS の場合は、クライアントが
PS256アルゴリズムを使用していることを確認してください。JWE の場合、クライアントはA256GCMによるRSA-OAEPを使用する必要があります。これらのアルゴリズムが適用可能なすべての クライアント設定 でこれを設定する必要がある場合があります。
2.6.3. Australia Consumer Data Right (CDR) Security Profile リンクのコピーリンクがクリップボードにコピーされました!
Red Hat build of Keycloak は、Australia Consumer Data Right Security Profile に準拠しています。
Australia CDR セキュリティープロファイルを適用する場合、fapi-1-advanced プロファイルを使用する必要があります。Australia CDR セキュリティープロファイルは FAPI 1.0 Advanced セキュリティープロファイルに基づいているためです。クライアントが PAR も適用する場合は、クライアントが RFC 7637 Proof Key for Code Exchange (PKCE) を適用することを確認してください。Australia CDR セキュリティープロファイルでは、PAR を適用するときに PKCE を適用することが要求されるためです。これは、pkce-enforcer エクゼキューターでクライアントプロファイルを使用することで実現できます。
2.6.4. TLS に関する考慮事項 リンクのコピーリンクがクリップボードにコピーされました!
機密情報が交換されるため、すべての対話は TLS (HTTPS) で暗号化される必要があります。さらに、使用される暗号スイートおよび TLS プロトコルバージョンの FAPI 仕様にはいくつかの要件があります。これらの要件に合致するには、許可された暗号を設定することを検討してください。これは、https-protocols および https-cipher-suites オプションで設定できます。Red Hat build of Keycloak はデフォルトで TLSv1.3 を使用し、このデフォルト設定は変更する必要がないこともあります。ただし、何らかの理由で下位の TLS バージョンにフォールバックする必要がある場合は、暗号化を調整する必要がある場合があります。詳細は、TLS の設定 の章を参照してください。