- 追加された行はこの色です。
- 削除された行はこの色です。
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。
-[[戻る>クレームベース認証#z50b400d]]
* 目次 [#m9a7ace2]
#contents
*概要 [#c3d7eaf3]
[[OpenID Financial API (FAPI) WG>#f4f721ee]]において、
-PSD2 や Open Banking Standard を考慮し、
-ISO/TC 68(Financial services)への提出も視野に入れながら、
金融 API の標準仕様策定作業が進められている。
|Part|Title|説明|h
|1|[[Read Only API Security Profile>#jcbf3a32]]|参照系 API セキュリティー要件|
|2|[[Read & Write API Security Profile>#j5efef5b]]|更新系 API セキュリティー要件|
|3|[[Open Data API>#x600e47c]]|公開データ API 仕様|
|4|[[Protected Data API and Schema - Read only>#jcbf3a32]]|参照系 API 仕様|
|5|[[Protected Data API and Schema - Read and Write>#jcbf3a32]]|更新系 API 仕様|
**目的 [#bbfcc927]
下記に関する勧告を提供(チェックリスト)
-セキュリティ+プライバシー・プロファイル
-JSON data schema, REST APIs
**機能 [#yaefe264]
以下を可能にする。
-アプリケーションが銀行・証券口座の参照
-アプリケーションが銀行・証券口座の更新
-利用者がセキュリティとプライバシー設定をする
保険およびクレジットカード口座も考慮対象とする。
**背景 [#eda6649b]
OAuth2.0はフレームワークなので用途に合わせたセキュリティ・プロファイルが必要。
-基本実装でOK
--ソーシャルアプリにおけるデータ共有
--閉回路の産業アプリケーション
-金融機関APIのセキュリティ・プロファイル
--Read Only API用セキュリティ・プロファイル
--Read and Write API用セキュリティ・プロファイル
***考慮事項 [#g964b656]
金融機関API向けのプロファイルは 全てを解決する必要がある。
+1クライアントは1つの認可サーバとのみ関係を持つ。~
(リダイレクト・エンドポイントを分け、クライアントの論理分割)
+メッセージ認証(要求・応答)
+送信者認証
+受信者認証
+利用者認証
+メッセージ秘匿性
+トークンフィッシング/リプレイ
***基準 [#o2f057e2]
+Unique Source Identifier~
ユニークなソース識別子
+Protocol + version identifier~
プロトコル + バージョン + msg識別子
+Full list of actor/roles~
actor/rolesの完全なリスト
+Message Authentication~
改ざんされていないメッセージ
***AS-IS [#n6c15b3c]
-RFC6749の認証状況
|#|メッセージ|送信者認証|受信者認証|メッセージ認証|h
|1|認可リクエスト|Indirect|None|None|
|2|認可レスポンス|None|None|None|
|3|アクセストークン・リクエスト|Weak|Good|Good|
|4|アクセストークン・レスポンス|Good|Good|Good|
-詳細
|#|Message|Parameters|(a) Unique Source Identifier|(b) Protocol + version identifier |(c) Full list of actor/roles|(d) Message Authentication|h
|1|Authorization Request|response_type&br;client_id&br;redirect_uri&br;scope&br;state|Client ID is not globally unique.&br;Tampering possible|OK,&br;but it is not integrity protected.|No.|No.|
|2|Authorization Response|code&br;state&br;other extension parameters|No source identifier|OK,&br;but it is not integrity protected|No.|No.|
|3|Token Request|grant type&br;code&br;redirect uri&br;client_id/client_secret|Client ID is not globally unique.|OK (as long as there is no OAuth 3.0)|No.|OK.|
|4|Token Response|access_token&br;token_type&br;expires_in&br;refresh_token others|No source identifier|As above|No.|OK.|
*仕様 [#g2ce933d]
FAPI仕様群:Financial Services -Financial API-
**Part 1: Read Only API Security Profile [#jcbf3a32]
-Draft-04: Financial Services – Financial API - Part 1: Read-Only API Security Profile~
http://openid.net/specs/openid-financial-api-part-1.html
>FAPI Read Onlyセキュリティ・プロファイル
***要約 [#l78424d4]
安全なフローを使用する。
-フロー
--[[Authorization Code>OAuth#yfeb403d]]
--[[OAuth PKCE]]
--[[OAuth 2.0 Multiple Response Type Encoding Practices]]
-トークン種類~
Bearer Token
***詳細 [#j3c7bc32]
***原文読んで書く [#s883683a]
**Part 2: Read and Write API Security Profile [#j5efef5b]
-Draft-04: Financial Services – Financial API - Part 2: Read and Write API Security Profile~
http://openid.net/specs/openid-financial-api-part-2.html
>FAPI Read and Writeセキュリティ・プロファイル
***要約 [#sab53ee8]
送信者・受信者・メッセージ認証を強化
-通信
--SSL/TLS
--redirect_uri + client_id
--認可エンドポイント
---認可リクエストの保護(Hybrid Flow/JWS Authz Req w)
---認可レスポンスの保護(Hybrid Flow)
-トークン種類~
記名式トークン
|#|メッセージ|送信者認証|受信者認証|メッセージ認証|h
|1|認可リクエスト|Request Object|Request Object|Request object|
|2|認可レスポンス|Hybrid Flow|Hybrid Flow|Hybrid Flow|
|3|アクセストークン・リクエスト|Good|Good|Good|
|4|アクセストークン・レスポンス|Good|Good|Good|
***詳細 [#c9b59544]
|#|Message|Parameters|(a) Unique Source Identifier|(b) Protocol + version identifier|(c) Full list of actor/roles|(d) Message Authentication|h
|1|Authorization Request|response_type&br;client_id&br;redirect_uri&br;scope&br;state|Unique redirect_uri + client_id|OK (Unique Parameter List)|(a) + state as the UA identifier / TBID as UA identifier|Request signing by JAR Authorization|
|2|Response code|state&br;other extension parameters|Unique redirect_uri|OK (Unique Parameter List)|(a) + client_id + state as the UA identifier / TBID as UA identifier |Response signing by ID Token + s_hash|
|3|Token Request|grant_type&br;code&br;redirect_uri&br;client_id/client_secret|Unique redirect_uri + client_id|OK (Unique Parameter List)|(a) + state as the UA identifier / TBID as UA identifier|TLS Protected|
|4|Token Response|access_token&br;token_type&br;expires_in&br;refresh_token&br;others|redirect_uri|OK (Unique Parameter List)|(a) + client_id + state as the UA identifier / TBID as UA identifier|TLS Protected|
***原文読んで書く [#oe16b4dd]
**Part X: Client Initiated Backchannel Authentication Profile [#xdbf7e2a]
**Part 3: Open Data API [#x600e47c]
UK OBIE(Open Banking Implementation Entity)からの寄付待ち。
**Part 4: Protected Data API and Schema - Read only [#ve2809ce]
***銀行口座 [#g2167b1b]
US FS-ISAC DDA / OpenBank Project / Figo~
などを参考に作成 UK OBIEからの寄付待ち。
***証券口座 [#u556efd1]
現在NRIで試案作成中
**Part 5: Protected Data API and Schema - Read and Write [#o9625781]
同上-Scopeではなく、Claims Requestを使うことで、より詳細・柔軟な認可を取得。
*参考 [#rb6016fa]
**OpenID [#n6f0aba7]
-OpenID Foundation website~
http://openid.net
***OpenID Financial API (FAPI) WG [#f4f721ee]
NRI、Microsoft、Intuitが中心となり組織されたWG。
-Financial API (FAPI) WG | OpenID~
http://openid.net/wg/fapi/
--Financial API | OpenID~
http://openid.net/tag/financial-api/
--openid / fapi — Bitbucket~
https://bitbucket.org/openid/fapi/
**nat [#a2685f07]
https://www.slideshare.net/nat_sakimura/presentations
-OpenID Foundation Foundation Financial API (FAPI) WG~
https://www.slideshare.net/nat_sakimura/openid-foundation-foundation-financial-api-fapi-wg-63097855
-Financial Grade OAuth & OpenID Connect~
https://www.slideshare.net/nat_sakimura/financial-grade-oauth-openid-connect
-API Days 2016 Day 1: OpenID Financial API WG~
https://www.slideshare.net/nat_sakimura/api-days-2016-day-1-openid-financial-api-wg
-OpenID Foundation FAPI WG: June 2017 Update~
https://www.slideshare.net/nat_sakimura/openid-foundation-fapi-wg-june-2017-update
-金融 API 時代のセキュリティ: OpenID Financial API (FAPI) WG~
https://www.slideshare.net/nat_sakimura/api-openid-financial-api-fapi-wg
-Introduction to the FAPI Read & Write OAuth Profile~
https://www.slideshare.net/nat_sakimura/introduction-to-the-fapi-read-write-oauth-profile
-金融APIに求められるセキュリティ~APIDays Paris講演より~
2017年2月号|金融ITフォーカス|刊行物|NRI Financial Solutions~
http://fis.nri.co.jp/ja-JP/publication/kinyu_itf/backnumber/2017/02/201702_8.html
**その他 [#q9bd8664]
-Financial API 実装の技術課題 - Qiita~
https://qiita.com/TakahikoKawasaki/items/48a9d22205f77db59726
-OpenID BizDay で金融 API の動向について聞いてきた - TMD45'β'LOG!!!~
http://blog.tmd45.jp/entry/2017/08/02/011504
----
Tags: [[:認証基盤]], [[:クレームベース認証]]