FAPI-SIG - Keycloak のコミュニティ

2022年7月1日 Takashi Norimatsu 著

皆様こんにちは、Takashi Norimatsu と申します。Keycloak のメンテナーです。この記事では、Keycloak のコミュニティである FAPI-SIG をご紹介したいと思います。FAPI-SIG にはどなたでも参加できます。歓迎いたします。

FAPI-SIG とは?

Financial-grade API Special Interest Group (FAPI-SIG) は、Keycloak のコミュニティであり、その目的は Financial-grade API (FAPI) セキュリティプロファイル と呼ばれるセキュリティ機能を Keycloak にサポートすることです。FAPI-SIG は 2020 年 8 月に設立されました。

FAPI セキュリティプロファイルは、OAuth 2.0 を使用したセキュアな API アクセスのためのオープンなセキュリティ仕様です。デジタルアイデンティティに関する標準化団体である OpenID Foundation (OID-F) によって標準化されています。例えば、OpenID Connect を標準化しました。

FAPI セキュリティプロファイルは、高いセキュリティレベルを必要とする API へのアクセスを目的としています。その名前が示すように(Financial)、元々は金融サービスを提供する API (例えば、ユーザーの銀行口座の残高を取得したり、支払いを開始したりする) に安全にアクセスするために使用されることを意図しています。しかし、その名前が示すように(Financial-grade)、これらは同じセキュリティレベルを必要とする他の種類の API (例えば、医療業界におけるユーザーの医療記録の取得) にも使用できます。

FAPI セキュリティプロファイルをサポートすることにより、Keycloak は API アクセスに関する高いセキュリティレベルを必要とする幅広いユースケース (例えば、オープンバンキング) に適用できます。

FAPI-SIG は、FAPI セキュリティプロファイルを Keycloak にサポートすることを目指すだけでなく、OID-F によって公式に提供されている FAPI セキュリティプロファイルの 適合性スイート を使用して、Keycloak が FAPI セキュリティプロファイルに準拠していることを確認します。

FAPI-SIG は、FAPI セキュリティ適合性テストを自動的に実行するための 環境 を作成しました。Keycloak の新しいバージョンがリリースされるたびに、FAPI-SIG は、この環境を使用して、それが FAPI セキュリティプロファイルに依然として準拠しているかどうかを確認します。したがって、FAPI-SIG は、Keycloak のすべてのバージョンが FAPI セキュリティプロファイルに準拠し続けることに貢献しています。

FAPI-SIG は、FAPI セキュリティプロファイル以外の OID-F によって定義されたセキュリティ標準のサポートにも取り組み始めています。例えば、FAPI-SIG は、OpenID Connect 1.0 および OpenID Connect for Logout Profile の適合性テストを自動的に実行するための環境を作成しました。これは、OpenID Connect 1.0 および OpenID Connect for Logout Profile の認証取得に貢献しました。

ブログ記事 で説明されているように、Keycloak はいくつかの認証を取得しています。FAPI 1.0 Advanced、FAPI-CIBA、Australia CDR、Open Banking Brazil FAPI 1.0、OpenID Connect、および OpenID Connect for Logout Profiles です。FAPI-SIG はこれらの成果に貢献しました。

FAPI-SIG はオープンなコミュニティです。FAPI-SIG のすべての活動はボランティアベースです。FAPI-SIG の活動のすべての成果物は、FAPI-SIG の github リポジトリで公開されています。例えば、FAPI セキュリティ適合性テストを自動的に実行するための環境は、Apache License 2.0 のライセンスを持つリポジトリにあり、誰でもこの環境を使用できます。

FAPI-SIG の活動はどのように進められますか?

FAPI-SIG は毎月ウェブ会議を開催しています。会議では、進行中の活動の状況を報告し、取り組む活動を提案および議論します。会議の議事録は、FAPI-SIG の github リポジトリ で公開されています。

FAPI-SIG の活動は、コードを書いたり、プルリクエストを送信したりするだけでなく、他の貢献者のプルリクエストをレビューしたり、作業項目を提案および議論したりすることなども含まれます。

FAPI-SIG のメンバーだけでなく、他の人も以下の方法で互いにコミュニケーションを取ることができます。

メール : Google グループ keycloak デベロッパーメーリングリスト 会議 : 定期的なウェブ会議

FAPI-SIG は何を達成しましたか?

FAPI-SIG は主に 以下の仕様 の実装に貢献しました。

FAPI-SIG は、他の貢献者による以下の仕様の実装を間接的に支援しました。

  • FAPI セキュリティプロファイル

    • FAPI 1.0 Advanced Security Profile

    • FAPI Client Initiated Backchannel Authentication Profile (FAPI-CIBA)

  • オープンバンキングのユースケースに基づいた FAPI セキュリティプロファイルに基づく仕様

    • Australia Consumer Data Right (CDR)

    • Open Banking Brasil FAPI 1.0 Security Profile

  • OpenID 仕様

    • OpenID Connect 1.0

    • OpenID Connect for Logout Profiles

FAPI-SIG ではどのような活動が行われていますか?

FAPI-SIG は以下の作業項目に取り組んでいます。

  • FAPI 2.0 Baseline Security Profile

  • FAPI 2.0 Grant Management for OAuth 2.0

  • OAuth 2.0 Rich Authorization Requests (RAR)

  • OAuth 2.0 Demonstrating Proof-of-Possession at the Application Layer (DPoP)

FAPI-SIG の活動の詳細をどこで知ることができますか?

FAPI-SIG の github リポジトリ のフロントページと議事録を参照してください。

FAPI-SIG の活動にどのように参加できますか?

上記のコミュニケーションチャネルでお気軽にお問い合わせください。