「[[マイクロソフト系技術情報 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: [[:認証基盤]], [[:クレームベース認証]]

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS