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

マネーフォワードクラウドを支える事業者基盤

 マネーフォワードクラウドを支える事業者基盤

「サービスの当たり前を支える認証認可 〜マネフォワードxマクアケ〜」の発表資料です。

https://makuake.connpass.com/event/269014/

Daisuke Harada

January 20, 2023
Tweet

Other Decks in Technology

Transcript

  1. 自己紹介 原田 大輔 @machisuke ▷経歴 2019年4月〜 「クラウド会計」のRailsエンジニア。既存WebAPIの改修、モバイルアプリリニューアルPJのWebAPI実装。 2020年2月〜 「クラウドBox」の立ち上げPJリーダー。ユーザーインタビュー、仕様策定、機能開発などを担当。 2021年4月〜

    「管理コンソール」の開発リーダー。仕様策定、機能開発などを担当。 2022年8月〜 共通サービス部 部長。「事業者基盤」「契約基盤」「ファイル基盤」を担当。 ▷好きなこと Ruby/Rails, Typescript, Terraform, Datadog, Security, 仕組み作り, Aquarium ▷勉強してること Next.JS, GraphQL 2
  2. 自己紹介 今日はここでの経験を話します 3 原田 大輔 @machisuke ▷経歴 2019年4月〜 「クラウド会計」のRailsエンジニア。既存WebAPIの改修、モバイルアプリリニューアルPJのWebAPI実装。 2020年2月〜

    「クラウドBox」の立ち上げPJリーダー。ユーザーインタビュー、仕様策定、機能開発などを担当。 2021年4月〜 「管理コンソール」の開発リーダー。仕様策定、機能開発などを担当。 2022年8月〜 共通サービス部 部長。「事業者基盤」「契約基盤」「ファイル基盤」を担当。 ▷好きなこと Ruby/Rails, Typescript, Terraform, Datadog, Security, 仕組み作り, Aquarium ▷勉強してること Next.JS, GraphQL
  3. 今日はここでの経験を話します 自己紹介 どんどん水槽が 増えていく... 🐟🦐🌱 4 原田 大輔 @machisuke ▷経歴

    2019年4月〜 「クラウド会計」のRailsエンジニア。既存WebAPIの改修、モバイルアプリリニューアルPJのWebAPI実装。 2020年2月〜 「クラウドBox」の立ち上げPJリーダー。ユーザーインタビュー、仕様策定、機能開発などを担当。 2021年4月〜 「管理コンソール」の開発リーダー。仕様策定、機能開発などを担当。 2022年8月〜 共通サービス部 部長。「事業者基盤」「契約基盤」「ファイル基盤」を担当。 ▷好きなこと Ruby/Rails, Typescript, Terraform, Datadog, Security, 仕組み作り, Aquarium ▷勉強してること Next.JS, GraphQL
  4. 事業者基盤を使ったログインフロー例(5/7) マネーフォワード ID (認証基盤) 事業者基盤 ユーザー ①ログインボタンクリック ②認証画面へリダイレクト ④入力 ③ID/PW入力画面表示

    ⑤認可コードと共にリダイレクト ⑥トークン取得&ユーザーIDの特定 ⑦ユーザーIDからアクセス可能な事業者取得 ⑧事業者選択画面 ⑨事業者選択 17
  5. 事業者基盤を使ったログインフロー例(6/7) マネーフォワード ID (認証基盤) 事業者基盤 ユーザー ①ログインボタンクリック ②認証画面へリダイレクト ④入力 ③ID/PW入力画面表示

    ⑤認可コードと共にリダイレクト ⑥トークン取得&ユーザーIDの特定 ⑦ユーザーIDからアクセス可能な事業者取得 ⑧事業者選択画面 ⑨事業者選択 ⑩選択した事業者へユーザーがアクセスできるか確認 18
  6. 事業者基盤を使ったログインフロー例(7/7) マネーフォワード ID (認証基盤) 事業者基盤 ユーザー ①ログインボタンクリック ②認証画面へリダイレクト ④入力 ③ID/PW入力画面表示

    ⑤認可コードと共にリダイレクト ⑥トークン取得&ユーザーIDの特定 ⑦ユーザーIDからアクセス可能な事業者取得 ⑧事業者選択画面 ⑨事業者選択 ⑩選択した事業者へユーザーがアクセスできるか確認 ⑪ログイン後TOP表示 19
  7. 事業者基盤の歴史(4/8) メインDB ・アカウント(ID/PW) ・連携サービス情報(銀行残高、クレ ジットカード明細, etc..) ・事業者 ・仕訳 ・請求書、領収書、etc.. ・給与明細

    銀行残高などのデータを使用し ないプロダクト。 だが事業者を共有するため同じ DBを使うことに 会計と連携することも可能な 給与計算のプロダクト 24
  8. 事業者基盤の歴史(8/8) メインDB ・アカウント(ID/PW) ・連携サービス情報(銀行残高、クレ ジットカード明細, etc..) ・事業者 ・仕訳 ・請求書、領収書、etc.. ・給与明細

    … 認証基盤 専用DB 事業者基盤 専用DB 専用DB 2020年。メインDBに依存 せず認証・事業者を共有 したプロダクトが誕生 28
  9. アカウントのオーナーは誰? マネーフォワードのプロダクトは、個人向け/法人向けの2種類に区分可能 [email protected] 個人向けプロダクト マネーフォワード ID ユーザー 個人で利用 会社で利用 個人が発行し

    たアドレス バイト先で利用 組織が発行し たアドレス [email protected] 法人向けプロダクト 42 ・自社IdPを使ったSAML認証SSO ・個人向けプロダクトの利用制限 ・パスワードポリシーの強制 ・二要素認証強制
  10. アカウントのオーナーは誰? マネーフォワードのプロダクトは、個人向け/法人向けの2種類に区分可能 [email protected] 個人向けプロダクト マネーフォワード ID ユーザー 個人で利用 会社で利用 個人が発行し

    たアドレス 組織が発行し たアドレス バイト先で利用 ログインや利用プロダクトに制限が 入ると困る [email protected] 法人向けプロダクト 43 ・自社IdPを使ったSAML認証SSO ・個人向けプロダクトの利用制限 ・パスワードポリシーの強制 ・二要素認証強制
  11. アカウントのオーナーは誰? マネーフォワードのプロダクトは、個人向け/法人向けの2種類に区分可能 [email protected] 個人向けプロダクト マネーフォワード ID ユーザー 個人で利用 会社で利用 [email protected]

    組織管理アカウント 個人管理アカウント 法人向けプロダクト 48 my-company.com ※利用ドメイン登録・証明 ・自社IdPを使ったSAML認証SSO ・個人向けプロダクトの利用制限 ・パスワードポリシーの強制 ・二要素認証強制 バイト先で利用
  12. アカウントのオーナーは誰? マネーフォワードのプロダクトは、個人向け/法人向けの2種類に区分可能 [email protected] 個人向けプロダクト マネーフォワード ID ユーザー 個人で利用 会社で利用 [email protected]

    組織管理アカウント 個人管理アカウント 法人向けプロダクト 49 my-company.com ※利用ドメイン登録・証明 ・自社IdPを使ったSAML認証SSO ・個人向けプロダクトの利用制限 ・パスワードポリシーの強制 ・二要素認証強制 リリース済 バイト先で利用
  13. 組織管理アカウントの課題 単一ドメインが複数テナントで使われるケースを想定できていない [email protected] マネーフォワード ID ユーザー [email protected] 株式会社A 株式会社B テナント

    my-company.com ※利用ドメイン登録・証明 my-company.com ※利用ドメイン登録・証明 58 所有権が株式会社Bで証明されている ため、株式会社Aでは証明できない
  14. 組織管理アカウントの課題 単一ドメインが複数テナントで使われるケースを想定できていない [email protected] マネーフォワード ID ユーザー [email protected] 株式会社A 株式会社B テナント

    my-company.com ※利用ドメイン登録・証明 my-company.com ※利用ドメイン登録・証明 59 所有権が株式会社Bで証明されている ため、株式会社Aでは証明できない グループ会社で共通ドメインを使う ケースに対応できない
  15. 事業者基盤のこれから • パスワードポリシー、強制二要素認証 個人向けプロダクト マネーフォワード ID ユーザー 個人で利用 会社で利用 バイト先で利用

    法人向けプロダクト ・自社IdPを使ったSAML認証SSO ・個人向けプロダクトの利用制限 ・パスワードポリシーの強制 ・二要素認証強制 66 [email protected] [email protected] 組織管理アカウント 個人管理アカウント my-company.com ※利用ドメイン登録・証明 未リリース
  16. 事業者基盤のこれから • 技術的なところ メインDB DB 事業者基盤 認証基盤 DB 事業者DB 認証DB

    オンプレ 東京 北海道 68 メインDBから必要な データを持ち帰る メインDBから必要な データを持ち帰る メインDBから必要な データを持ち帰る メインDBから必要な データを持ち帰る
  17. 事業者基盤のこれから • 技術的なところ メインDB DB 事業者基盤 認証基盤 DB 事業者DB 認証DB

    オンプレ 東京 北海道 メインDBから必要な データを持ち帰る 69 メインDBから必要な データを持ち帰る メインDBから必要な データを持ち帰る メインDBから必要な データを持ち帰る
  18. 事業者基盤のこれから • 技術的なところ メインDB DB 事業者基盤 認証基盤 DB 事業者DB 認証DB

    オンプレ 東京 北海道 20ms 20ms 20ms 20ms クエリ1本削減で20ms高速化される 72
  19. 事業者基盤のこれから • 技術的なところ メインDB DB 事業者基盤 認証基盤 DB 事業者DB 認証DB

    オンプレ 東京 北海道 20ms 20ms 20ms 20ms クエリ1本削減で20ms高速化される 73
  20. 事業者基盤のこれから • 技術的なところ メインDB DB 事業者基盤 認証基盤 DB 事業者DB 認証DB

    オンプレ 東京 北海道 20ms 20ms 20ms 20ms クエリ1本削減で20ms高速化される 74 メインDBではなくて事業者DBを使えば、約20ms×5本=100msの速度改善ができる可能性
  21. 85 2023年01月19日(木) 株式会社マネーフォワード クラウド横断本部 共通サービス部 部長 兼 ID基盤グループ リーダー 原田

    大輔 マネーフォワードクラウドを支える 事業者基盤 (サービスの当たり前を支える認証認可 〜マネフォワードxマクアケ〜) We’re hiring!!! https://recruit.moneyforward.com ご清聴ありがとうございました。