
会社プロフィール
SaaS事業者業務SaaSベンダ / 累計500社導入
課題サマリ
自社サービスの認証は内製で運用してきたが、MFA対応やトークン失効の要件が増えて改修が追いつかない状態。認証障害の影響範囲が全サービスに及ぶため、基盤の刷新が課題になっていた。
主要な効果
- 99.99%稼働率
- 82ms平均応答
- 1.2M/月トークン発行数
Before
内製の認証実装をサービスごとに保守。MFAや失効の要件変更に追従しきれない。
After
トークン発行・失効・MFAを標準APIで提供。認証まわりの改修は基盤側で完結する。
導入前の状況
自社で提供する4つの業務SaaSは、それぞれが独自の認証実装を持っていた。最初のサービスをリリースした際にコピー元にしたコードが、後発のサービスにも引き継がれた結果、認証の細かな挙動が微妙に異なる状態だった。
既存顧客からはMFA対応や、退職者アカウントのトークン即時失効といった要望が増えていた。1つのサービスに機能を入れると、他の3サービスにも同じ改修を横展開する必要があり、開発リソースを圧迫していた。
認証は全サービスに影響する共通部品であり、障害が発生すると全プロダクトが同時に停止するリスクがあった。冗長化や監査ログの整備を進めるにも、4つの実装を個別に手当てする必要があり、根本的な再設計が求められていた。
検討背景と選定理由
検討したのは3案。認証SaaSの導入、自社での認証基盤フルスクラッチ、NocodilySuiteの認証APIを土台にした構築。認証SaaSはユーザー数課金で、累計500社の会員規模ではランニングコストが読みにくかった。フルスクラッチは要件を満たせる一方、開発期間が長引くリスクがあった。
NocodilySuiteを選んだのは、トークン発行・失効・MFA・監査ログといった認証基盤の要素が最初から揃っており、自社サービスの認証層として組み込みやすかったため。エンドポイント単位で機能を選択でき、必要な部分だけを段階的に置き換えられる構成が評価された。
PoCでは既存の1サービスを対象に、ログインとトークンリフレッシュのフローを差し替えて動作を確認。稼働率と応答速度が既存実装と同水準であることを検証してから、他サービスへの展開に進んだ。
導入プロセス
プロジェクトは全体で3ヶ月。1ヶ月目でPoCと認証フローの整理、2ヶ月目でトークン発行・失効・MFAエンドポイントの統合、3ヶ月目で4サービスへの段階展開を行った。既存のログインUIを残したままAPI側だけ差し替える構成にしたため、利用者側の学習コストは発生しなかった。
MFAは既存アカウントには任意で有効化する形にした。管理者アカウントは必須、一般ユーザーは推奨とし、初回ログイン時に案内画面を表示する仕組みを組み込んだ。トークン失効APIは退職者管理システムと連携し、契約終了と同時に全サービスからログアウトさせる運用を実現している。
認証まわりの監査ログはすべて基盤側で記録される設計にした。以前は各サービスで個別にログを出していたため、監査対応で情報を集約する作業が発生していたが、基盤に一本化されたことで対応がシンプルになった。
導入後の変化
認証基盤の稼働率は99.99%を維持し、認証起因のサービス停止は導入以降ゼロ。トークン発行の平均応答は82msで、内製時よりも安定している。
MFAの有効化率は78%まで到達。管理者アカウントは全数、一般ユーザーも自主的な有効化が進んだ。認証まわりの改修依頼は月あたり数件レベルまで減り、開発チームの工数を業務機能に振り向けられるようになった。
認証ログの一元化により、監査対応の作業時間が大幅に短縮された。以前は4サービス分のログを突き合わせる必要があったが、基盤側で一括参照できるため、監査依頼への回答が翌営業日で完了できるようになった。
導入効果 (数値)
担当者からの声
認証改修のたびに全サービスに手を入れる状態から抜けられた。基盤に任せられるので、開発側は業務機能に集中できる。— プロダクト開発責任者
MFAとトークン失効の要件が増えたときも、APIの呼び出し方を変えるだけで対応できた。個別実装をやめられたのが大きい。— バックエンドリードエンジニア
今後の展望
次の段階では外部IdPとのフェデレーション連携と、パスキー対応を予定している。認証基盤としての機能を積み増しつつ、既存サービスの改修コストを増やさない形で段階的に反映していく方針。
構成認証API + トークン発行 / 失効 + MFA連携 + 監査ログ


