Upgrade to Pro — share decks privately, control downloads, hide ads and more …

人とAPIをつなぐ「認証・認可」

 人とAPIをつなぐ「認証・認可」

Prepared for re:CONNECT 2024 ~つながりの再発見、そして新たな事業変革へ。 https://www.briscola.co.jp/library/library-7505/

サービス事業者にとって、APIの公開は、パートナーとの協業によるビジネス展開のチャネル拡大に寄与する一方、ともすれば自社のお客さまとの直接のタッチポイントを失う懸念があります。本セッションでは、利用者本位のAPI連携を実現するために「認証・認可」が担う役割を概観し、オープン標準であるOAuth・OIDCの動向や、今後の方向性についてご紹介します。

Avatar for Tatsuo Kudo

Tatsuo Kudo

December 05, 2024
Tweet

More Decks by Tatsuo Kudo

Other Decks in Technology

Transcript

  1. 7 • 自社チャネルのように、同じIDでの利用を可能とし、利用者を把握したい APIを自社チャネルと同等にするには? 機能・ データ 自社 チャネル API パートナー

    パートナー パートナー 利用者の アクセスとして 把握 自社チャネルと同じ IDを利用してアクセス 自社チャネルに アクセス
  2. 8 • なりすましの防止、アクセス権限の最小化、権限付与の中止が難しい 「パスワードアンチパターン」 機能・ データ 自社 チャネル API パートナー

    パートナー パートナー ID/パスワードを 使い回して アクセス 自社チャネルの ID/パスワードを入力 自社チャネルに アクセス
  3. 9 • 必要最小限のアクセス権限を、特定の対象に、限定された期間のみ与える 「トークン」を用いたAPI認可・ ID連携 機能・ データ 自社 チャネル API

    パートナー パートナー パートナー 「アクセス権限の トークン」を 用いてアクセス 「 ID情報のトークン」を 用いてアクセス ユーザー認証と同意確認に 基づきトークンを付与
  4. 10 • API認可の「アクセストークン」とID連携の「IDトークン」の授受・利用 OAuthとOIDC (OpenID Connect) パートナー パートナー パートナー 2.

    ユーザー認証と同意確認 5. アクセス トークンを 用いて APIアクセス 1. パートナー サイトに アクセス 4. IDトークンの 内容に基づき アクセスを許可 3. IDトークンと アクセス トークンを発行 機能・ データ 自社 チャネル API
  5. 11 • オープン – 情報が広く公開されている – ライブラリやSDKが豊富に存在する – 特定の企業・ソリューションにロックインされない •

    セキュア – 仕様確定後10年以上の実績がある「枯れた仕様」 – 高セキュリティのOAuth/OIDC詳細仕様「FAPI」 – 「OpenID Certified」プログラムによる仕様準拠の認定 • 将来性 – サービスやエコシステムのAPI認可・ID連携のしくみとして現在も新規採用多数 – ユースケースの多様化に応じた拡張仕様やプラクティスの策定が継続して進行中 OAuth/OIDCはAPI認可・ID連携の標準仕様
  6. 12 • みんなの銀行 – 国内初のデジタルバンク • スマホを通じて金融サービスを提供 • APIを通じて金融機能・サービスを提供 •

    バンキングシステム自体を提供 – OAuth/OIDC詳細仕様「FAPI」を採用 • 参照系だけではなく更新系にも対応可能 なセキュリティを担保 • A2A 決済(銀行口座から銀行口座に直接 支払うしくみ)をパートナー企業に提供 • 標準準拠により「接続しやすさ」を向上 し、パートナー企業との提携を加速 OAuth/OIDC適用事例 金融サービスのオープンAPI化 Source: https://www.authlete.com/ja/resources/videos/20221207/01/
  7. 13 • EARTHBRAIN – Smart Construction ®️ • 現場の「デジタルツイン」を活用し 建設生産プロセス全体を最適化する

    ためのプラットフォーム • 約200種類のAPIを提供 – OAuth/OIDC機能を実装 • 建設業界の標準規格に対応 • デバイス、ハードウェア、スマホア プリ、Webアプリなど、さまざまな 提供形態をサポート • 開発者向けのSDKやツールを拡充 OAuth/OIDC適用事例 バーティカルAPIプラットフォーム Source: https://www.authlete.com/ja/news/20240110_earthbrain/, https://www.authlete.com/ja/resources/videos/20221207/02/
  8. 14 • セブン&アイ・ホールディングス – グループ共通会員基盤(ID)「7iD」 • 会員数は約3,000万人を突破(2023年6月末 時点)。2025年度までに会員数を5,000万 人にまで拡大する目標 –

    独自仕様からOIDCに移行 • オープン標準によるセキュリティ強化 • モバイルアプリを含めたSSOが 新規アプリの会員獲得に威力を発揮 • 標準仕様ベースの連携基盤が開発を効率化 し、新サービスのTime-to-Marketを短縮 • 「共通言語」としてのOIDCが、ベンダーを 含む開発体制の統制力強化に寄与 OAuth/OIDC適用事例 グループ企業のID統合・アプリ連携 Source: https://www.authlete.com/ja/customers/7andi/
  9. 15 • 「デジタルアイデンティティ ウォレット」 – ユーザーが管理するデバイスを 中心とする、検証可能な資格証明 (VC: Verifiable Credentials)

    の流通 – 発行・検証の非同期化、ID情報の 選択的な開示により、ユーザーの プライバシーコントロールを強化 – OpenID Foundation傘下のWGにて 関連仕様の策定が進行中 • e.g., OpenID for Verifiable Credential Issuance (OID4VCI) 新たなID連携パラダイムの興隆 Source: https://openid.net/wp-content/uploads/2024/04/OIDF_Workshop-at-Google_2024-04-15.pdf
  10. 16 • 適切な「認証・認可」 – API公開によってチャネルを拡大しつつ、利用者とのつながりを保つための必須要素 • OAuth/OIDC – オープンかつセキュアな業界標準仕様 •

    今後 – 適用分野の拡大・新たなID連携パラダイムが、拡張仕様・プラクティスの充実を促進 まとめ …なにか落とし穴は無いか!?
  11. 17 • 最新仕様・プラクティスを正しく理解し 実装することは大きな負担 進化を続けるOAuth/OIDC仕様とプラクティス DPoP ‘12 ‘13 ‘14 ‘15

    ‘16 ‘17 ‘18 ‘19 ’20+ RFC6750 RFC6749 RFC7636 RFC6819 Security BCP OIDC Discovery RFC7592 RFC8414 OIDC Core Session Mgmt RFC8252 FAPI1 Part 1 FAPI1 Part 2 JARM CIBA RFC8628 RAR PAR IDA RFC7009 RFC7662 Multiple Response Type Enc. Practice Form Post Response Mode RFC7523 RFC7591 RFC8707 FAPI-CIBA RFC8705 OID4VC FAPI2 SecProf OpenID Fed
  12. • OAuth/OIDC 仕様への業界最速・最多準拠 – FAPI1, FAPI2, FAPI-CIBA および各国のオープンファイナンスや先進的な OAuth/OIDC 拡張仕様を迅速に実装し提供

    Authlete • OPs (OpenID Providers) • Basic OP • Implicit OP • Hybrid OP • Config OP • Dynamic OP • Form Post OP • FAPI 1.0 ID2 OPs • FAPI R/W OP w/ MTLS • FAPI R/W OP w/ MTLS, PAR • FAPI R/W OP w/ Private Key • FAPI R/W OP w/ Private Key, PAR • UK-OB R/W OP w/ MTLS • UK-OB R/W OP w/ Private Key • AU-CDR R/W OP w/ Private Key • AU-CDR R/W OP w/ Private Key, PAR • FAPI 1.0 Final OPs • FAPI 1 Advanced Final (Generic) • FAPI Adv. OP w/ MTLS • FAPI Adv. OP w/ MTLS, PAR • FAPI Adv. OP w/ Private Key • FAPI Adv. OP w/ Private Key, PAR • FAPI Adv. OP w/ MTLS, JARM • FAPI Adv. OP w/ Private Key, JARM • FAPI Adv. OP w/ MTLS, PAR, JARM • FAPI Adv. OP w/ Private Key, PAR, JARM • UK Open Banking (Based on FAPI 1 Advanced Final) • UK-OB Adv. OP w/ MTLS • UK-OB Adv. OP w/ Private Key • Australia CDR (Based on FAPI 1 Advanced Final) • AU-CDR Adv. OP w/ Private Key • AU-CDR Adv. OP w/ Private Key, PAR • KSA Open Banking (Based on FAPI 1 Advanced Final) • KSA-OB Adv. OP w/ MTLS, PAR • KSA-OB Adv. OP w/ Private Key, PAR [NEW] • Brazil Open Banking (Based on FAPI 1 Advanced Final) • BR-OB Adv. OP w/ MTLS • BR-OB Adv. OP w/ Private Key • BR-OB Adv. OP w/ MTLS, PAR • BR-OB Adv. OP w/ Private Key, PAR • BR-OB Adv. OP w/ MTLS, JARM • BR-OB Adv. OP w/ Private Key, JARM • BR-OB Adv. OP w/ MTLS, PAR, JARM • BR-OB Adv. OP w/ Private Key, PAR, JARM • BR-OB Adv. OP DCR • Brazil Open Insurance (Based on FAPI 1 Advanced Final) • BR-OB Adv. OP w/ MTLS • BR-OB Adv. OP w/ Private Key • BR-OB Adv. OP w/ MTLS, PAR • BR-OB Adv. OP w/ Private Key, PAR • BR-OB Adv. OP w/ MTLS, JARM • BR-OB Adv. OP w/ Private Key, JARM • BR-OB Adv. OP w/ MTLS, PAR, JARM • BR-OB Adv. OP w/ Private Key, PAR, JARM • BR-OB Adv. OP DCR • FAPI-CIBA OPs • FAPI-CIBA OP poll w/ MTLS • FAPI-CIBA OP poll w/ Private Key • FAPI-CIBA OP Ping w/ MTLS • FAPI-CIBA OP Ping w/ Private Key • FAPI2 Providers • FAPI 2.0 Security Profile Second Implementer’s Draft & Message Signing First Implementer’s Draft • FAPI2SP MTLS + MTLS • FAPI2SP private key + MTLS • FAPI2SP OpenID Connect • FAPI2MS JAR • FAPI2MS JARM • Australia FAPI 2.0 ConnectId Implementer’s Draft • FAPI2MS with ConnectId support 18