Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
そのAPIはセキュアですか?
Search
RyuSA
January 20, 2021
Technology
860
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
そのAPIはセキュアですか?
Financial Grade な API のセキュリティ
#webapilt
RyuSA
January 20, 2021
More Decks by RyuSA
See All by RyuSA
Java屋だってOperatorが作りたい!
ryusa
1
620
Visual Studio Codeとコンテナでいい感じのRe:View執筆環境
ryusa
1
1.6k
JavaScriptと歩くポリシーエンジン jsPolicy
ryusa
1
610
TextAlive App APIと夢見る新しいUX
ryusa
1
470
Gitlab Operatorと夢見るGitlab自動化の旅
ryusa
2
1.1k
AccessPoint Operator on Raspberry Pi
ryusa
1
1.3k
Serviceをたずねて3000行 - Kubernetesコードリーディングの旅 -
ryusa
2
940
「L3以下は魔法で動いている!」と言いながらiptablesとkube-proxyを読んでみた話
ryusa
1
180
「〇〇完全に理解したったww」から始めるエンジニア生活
ryusa
2
4.6k
Other Decks in Technology
See All in Technology
Bet AI Day 2026丨AIによって本質に戻るシステムリスク管理
layerx
PRO
0
210
EUDIWの枠組みを出発点に民間エコシステムの在り方を考える(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
420
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.3k
hookで自作する Claude Code の「実況ボード」
shinyasaita
2
270
Bet AI Day 2026丨How We Bet AI: AIとともに働く場をつくる
layerx
PRO
0
470
PM領域でのAI Agentの活用
lycorptech_jp
PRO
0
170
Kiro5兄弟のいまどきのセキュリティ基礎知識
kentapapa
0
450
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
54k
Claude Codeの体系的な理解と知識のフック
oikon48
10
6.4k
Digitization部 紹介資料
sansan33
PRO
2
7.8k
【Oracle AI Spotlight ウェビナー】AWSか、Azureか、Google Cloudか。その議論にオラクルを含める意義。
oracle4engineer
PRO
1
140
Bet AI Day 2026丨Agentは、「金融」という巨大産業の何を変えられるのか
layerx
PRO
0
210
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Claude Code のすすめ
schroneko
67
230k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
400
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
310
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
GraphQLとの向き合い方2022年版
quramy
50
15k
Designing Powerful Visuals for Engaging Learning
tmiket
1
520
The Language of Interfaces
destraynor
162
27k
Code Reviewing Like a Champion
maltzj
528
40k
Transcript
そのAPIはセキュアですか? Financial Grade な API のセキュリティ RyuSA
RyuSA Financial Service Engineer Java & SpringBoot / Typescript &
React Docker / Kubernetes : RyuSA : ryusa_eng
全国銀行協会より オープンAPI ≠ OpenAPI (Swagger) なんだぜ、ググラビリティがあかん >
たぶんこんな世界になる……?
※注 あくまでも登壇者の妄想です < サービスしてちょ まいどー > < Aくんの口座情報教えてー あの……焼肉屋さんが…… >
< 口座情報教えていいですよー < はいどうぞ
知ってる! これ、OAuth2.0で実装できる!
落ち着け、OAuth2.0はシルバーバレットにあらず
• OAuth2.0はリソース制御のための「フレームワーク」 • OAuth2.0で認可を実装した ≠ セキュアなAPI • SNSの認可に要求されるセキュリティレベル ≠ 銀行や証券の認可に要求されるセキュリティレベル
• 近年はオープンAPIも叫ばれており、金融向けのセキュアな認可の整備が急がれている • 一方で「セキュアな認証認可」をどこまでやるべきかのガイドラインが必要 そして究極のセキュリティ「APIを公開しない」が生まれる 認可に困ったらOAuth2.0に頼ろうとしてない?
Financial Grade API 略して”FAPI” 読み方は「ふぁぴ」だって、かわいいね >
• FinTechサービスにOAuthプロファイルを導入するためのガイドライン • Part1/Part2/Part3の3部作で構成されており「ReadOnly API」「Read&Write API」 などについてそれぞれ実装すべき項目が記載されている • 金融に限らず、高いセキュリティが要求される認可システムの管理者・実装者は参照す べきドキュメント
• チェックリスト方式になっている • 実装すべきこと、設定すべきことが一覧化 • たまに「実装すべきでない」ことも書いてある • CIS Benchmarkのような感じ FAPIは”OAuth2.0実装のガイドライン”
• Part1 (Read Only) • 認可サーバは LoA 2 相当のユーザ認証を実装しなければならない •
ClientはResource Ownerとのセッション中はredirect_uriを保存し、認可レスポン スを受け取った際のredirect_uriと比較しなければならない(5.2.3) • Native Appはカスタムスキーマによるリダイレクトを実装してはいけない(7.5) • HTTPSによるリダイレクトを利用しましょう • Part2 (Read & Write) • 認可サーバは LoA 3 相当のユーザ認証を実装しなければならない • ClientはHolder-of-Key Tokenと実装しなければならない • OAuth 2.0 Token Binding か mTLSかで実装しましょう 具体例
• オープンAPI という世界とその認可のガイドラインFAPI • みなさんの身近に迫ってきています • 「認可システムを作る / 設計する」ということがあれば、FAPIを覗いてみては? •
「あ、この設定した方がいいかも」等の思わぬ発見があると思います • セキュリティレベルをビジネスKPIに沿って決定 • 焼肉食べたい • コロナで外出・外食がめっきり減ってしまって、正直口元が少しさびしい…… まとめ