FAPI Part 2 (Read and Write API Security Profile)
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>Financial API (FAPI)]]
* 目次 [#zce5c6fe]
#contents
*概要 [#mec56743]
-[[Financial API (FAPI)]]の「Read and Write API用セキュリ...
-金融データへのトランザクション・アクセスに適した[[OAuth]...
--OpenID Connect(OIDC)を使用して顧客(ユーザ)を識別
--トークンを使用して、エンドポイントから保護データを読取
--エンドポイントは、JSONデータを提供するREST API
※ ドラフト 4 を参考にして作成。その後、ドラフト 6 を再度...
*要約 [#sab53ee8]
-送信者・受信者・メッセージ認証を強化
-以下の攻撃に対するコントロールを規定
--認可要求の改ざん
--コードインジェクション
--状態インジェクション
--トークン要求フィッシング
--認可応答の改ざん
**フロー [#y974f9a7]
このプロファイルを簡単に説明すると、以下のようになる。
***Confidentialクライアント [#y0fe1fb9]
-code id_token
-[[共通>#g0db887f]]
-[[個別>#b1fc3c02]]
***Publicクライアント [#uca31885]
-[[共通>#g0db887f]]
-Native
--code id_token([[JARM>#j3ade667]])
--[[共通>#g0db887f]]
--[[個別>#e482f66f]]
-SPA
--code id_token toke(Hybrid Flow)
--[[共通>#g0db887f]]
--[[個別>#e482f66f]]
**パラメタ [#sb435362]
***[[response_type>OAuth 2.0 Multiple Response Type Encod...
-code id_token
--[[Confidentialクライアント>#b1fc3c02]]
--Nativeの[[Publicクライアント>#e482f66f]]の場合、S256の[...
-code id_token token~
SPA系の[[Publicクライアント>#e482f66f]]の場合
--8.3.3. Identity provider (IdP) mix-up attackの可能性が...
--故に、Implicit Flow より [[Hybrid Flow>OpenID Connect#l...
***[[response_mode>OAuth 2.0 Form Post Response Mode]] [#...
[[JARM>#j3ade667]]であればHybrid Flowでなくてもいい。
***request or request_uri [#h3bfbf17]
-パラメタを要求。
-[[Requestオブジェクト>#ha94c6d8]]
**[[IDトークン>OpenID Connect#ofb73c59]] [#g7df69b2]
***[[JWT]]形式 [#r36d5748]
-[[JWS]]署名
--ES256(ECDSA using P-256 and SHA-256, Recommended+)
--PS256(RSASSA-PSS using SHA-256 and MGF1 with SHA-256, ...
-[[JWE]]暗号化~
アルゴリズムの指定は無し。
***追加クレーム [#c33d2245]
-[[acrとamr>OpenID Connect - IDトークン#l52144f8]]
-[[at_hashとc_hash>OpenID Connect - IDトークン#c007540d]]
-更に、[[切り離された署名のためのs_hash>#i246cd31]]。
***切り離された署名 [#i246cd31]
-認可レスポンスが改ざんされていないことを検証。
-s_hash~
クライアントは、
--[[at_hashとc_hash>OpenID Connect - IDトークン#c007540d]...
--s_hash
>の値を検証する。
--値
---state 値のASCII表現のオクテットのハッシュの左端の半分...
---ハッシュはIDトークンのJOSEヘッダのalgパラメタで使用さ...
--例:algがHS512の場合
---state値をASCIIエンコードし、
---SHA-512でハッシュ化し、
---左端の256ビットを切り出し、
---base64urlエンコードする。
-この代替に「[[JARM>#j3ade667]]」と言う仕様もある。
**通信 [#ob9374f1]
***SSL/TLS [#l35b4184]
-TLSバージョン1.2以降
-TLSサーバ証明書チェック
-暗号スイート
--TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
--TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
--TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
--TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
***redirect_uri [#r65c6593]
(完全一致)
**認証 [#k8da384f]
***ユーザ [#l0c98773]
[[LoA 3>LoA(Level of Assurance)#kdf5a643]]
-特定される⾝元識別情報の信⽤度が「相当程度ある」。
-パスワードだけではなく、2要素以上を用いてユーザー認証を...
***クライアント認証 [#vdf3136c]
-認可エンドポイント~
[[Requestオブジェクト>#ha94c6d8]]
-Tokenエンドポイント(以下の何れかが必要)
--[[JWT Client Assertion>OpenID Connect#y7bdab62]](priva...
--[[紐付け(トークン・バインディング)>#i309b755]]~
FAPIクライアントが「[[MTLS>#c724c394]]」または「[[OAUTB>#...
**トークン種類 [#x210d002]
[[記名式トークン(Proof-of-possession Token)>トークン#b3...
***対象 [#aa43405a]
-code
-token
--access_token
--refresh_token
***紐付け(トークン・バインディング) [#i309b755]
紐付け(トークン・バインディング)のために以下の何れかを...
(記名は、Resource Owner単位ではなくてClient単位)
-[[MTLS>#c724c394]]
-[[OAUTB>#c724c394]]
*役割 [#a2170501]
**Authorization Server [#zf702573]
先ずは、「[[FAPI Part 1 (Read Only API Security Profile)>...
***認証・認可 [#u62c1062]
-[[LoA 3>LoA(Level of Assurance)#kdf5a643]]
***[[クライアント認証>#vdf3136c]] [#tf6a9f9c]
***redirect_uri [#fabee59b]
-事前登録が必要
-認可リクエストに必須
-完全一致が必要
***code, token [#mbd264d4]
-[[記名式トークン>#x210d002]]
--code
--token
---access_token
---refresh_token
-[[IDトークン>#g7df69b2]]
**Client [#ide28df2]
先ずは、「[[FAPI Part 1 (Read Only API Security Profile)>...
-[[Confidentialクライアント>#b1fc3c02]]をサポートする。
-また、[[Publicクライアント>#e482f66f]]をサポートすべき。
***共通 [#g0db887f]
-[[Requestオブジェクト>#ha94c6d8]]
-[[切り離された署名のためのs_hash>#i246cd31]]
-紐付け(トークン・バインディング)のために以下の何れかを...
--[[MTLS>#c724c394]]
--[[OAUTB>#c724c394]]
***Confidentialクライアント [#b1fc3c02]
-[[クライアント認証>#vdf3136c]]が必要。
--[[Authorization Code>OAuth#yfeb403d]]を使用して、
--+Tokenエンドポイントに[[クライアント認証>#vdf3136c]]
---[[JWT Client Assertion>OpenID Connect#y7bdab62]](priv...
---[[MTLS>#c724c394]]
-[[JWS]] & [[JWE]]の[[IDトークン>#g7df69b2]]の要求が必要%...
***Publicクライアント [#e482f66f]
-SPA系は、Hybrid Flowをサポート
-Nativeは、S256の[[OAuth PKCE]]をサポート
--「ハッシュ関数」には、「S256」を使用する。
--「[[アプリケーション間通信>https://dotnetdevelopmentinf...
-+Tokenエンドポイントに[[OAUTB>#c724c394]]の[[クライアン...
-[[acrクレーム>OpenID Connect#ja81c8fa]]で[[LoA 3>LoA(Lev...
-各カギは、
--SPA系は、クライアント端末ごとになる。
--Nativeは、インストール(インスタンス)毎になる。
**Resource Server [#fbfccde7]
先ずは、「[[FAPI Part 1 (Read Only API Security Profile)>...
***[[記名式トークン>#x210d002]] [#c582f76f]
-[[MTLS>#c724c394]]
-[[OAUTB>#c724c394]]
*[[Requestオブジェクト>JWT Secured Authorization Request ...
[[Publicクライアント>#e482f66f]]ダケと思っていたが、[[Con...
-F-API2では、request_uriを[[Clientではなく、Authorization...
--これにより、Clientが指定したrequest_uriへの要求をサポー...
--[[Requestオブジェクト>JWT Secured Authorization Request...
--request_uri形式は、以下の何れかだが、URNになるのが既定...
---URL
---URN~
[[Requestオブジェクト>JWT Secured Authorization Request (...
--パラメタ
---[[Requestオブジェクト>JWT Secured Authorization Reques...
---仕様で要求されている場合、一致した重複を更に送信しても...
**登録リクエスト [#t71592fd]
***[[Request>JWT Secured Authorization Request (JAR)#od26...
どうも、この([[specの>#w0534ff5]])コンテキストからする...
-このリクエストは認可リクエストではなく、[[Requestオブジ...
-また、この[[Requestオブジェクト>JWT Secured Authorizatio...
>
POST https://as.example.com/ros/ HTTP/1.1
Host: as.example.com
Content-Type: application/jws
Content-Length: 1288
eyJhbGciOiJSUzI1NiIsImtpZCI6ImsyYmRjIn0.ew0KICJpc3MiOiA
(... abbreviated for brevity ...)
zCYIb_NMXvtTIVc1jpspnTSD7xMbpL-2QgwUsAlMGzw
※ クライアント認証は、JWT中のissに対応した署名検証で行う。
***Response [#h1b6a7de]
-正常
HTTP/1.1 201 Created
Date: Tue, 2 May 2017 15:22:31 GMT
Content-Type: application/json
{
'iss':'https://as.example.com/', // AuthZのID
'aud':'s6BhdRkqt3', // ClientID
'request_uri':'urn:example:MTAyODAK', // urn(暗号ラ...
'exp':1493738581 // 有効期限(存続期間は短く、好まし...
}
-異常
--Authorization Required~
401 Unauthorized HTTP error~
署名検証が失敗した場合。
--Invalid Request~
400 Bad Request HTTP error~
[[Request>JWT Secured Authorization Request (JAR)#od26deb...
--Method Not Allowed~
405 Method Not Allowed HTTP error~
POST要求を使用しなかった場合
--Request Entity Too Large~
413 Request Entity Too Large HTTP error~
要求サイズが上限を超える場合。
--Too Many Requests~
429 Too Many Requests HTTP error~
ある期間にClientからの要求数が上限を超えた場合。
**認可リクエスト [#z78b1390]
request_uriをパラメタに指定して認可リクエストをおこなうダ...
**仕様([[JAR → PAR>JWTとOAuth2.0#o9b238a2]]) [#dfcede35]
OAuth 2.0 Pushed Authorization Requestsが標準化されている。
-参考
--OAuth 2.0 Pushed Authorization Requests~
https://tools.ietf.org/id/draft-lodderstedt-oauth-par-00....
--図解 PAR : OAuth 2.0 Pushed Authorization Requests - Qi...
https://qiita.com/TakahikoKawasaki/items/97563be46b62a0e0...
*考察 [#vebd7c4e]
**プロファイル [#oe3f07bf]
***[[プロファイルの識別>FAPI Part 1 (Read Only API Securi...
***[[他のプロファイルの抑止>FAPI Part 1 (Read Only API Se...
**[[Publicクライアント>#e482f66f]]のClient側実装 [#l62c0f...
-[[Publicクライアント>#e482f66f]]の場合、AuthZ実装も大変...
-特に、JavaやJavaScriptで[[JWT]]検証処理等を実装する必要...
-このためか、[[JWE]]が[[Publicクライアント>#e482f66f]]のF...
**関連仕様 [#i8ef7e99]
ただし[[OAuth]]2 / [[OIDC>OpenID Connect]]を除く。
***[[FAPI Part 1 (Read Only API Security Profile)]] [#kf1...
***[[JWT Secured Authorization Request (JAR)]] [#icf72f77]
***[[JWT Secured Authorization Response Mode for OAuth 2....
***[[OAuth 2.0 Token Binding]] [#c724c394]
-MTLS: [[OAuth 2.0 Mutual TLS Client Authentication and C...
-OAUTB: [[OAuth 2.0 Token Binding]]
*参考 [#w0534ff5]
-Financial Services – Financial API - Part 2: Read and Wr...
http://openid.net/specs/openid-financial-api-part-2.html
>FAPI Read and Writeセキュリティ・プロファイル
-Financial API 実装の技術課題 - Qiita > FAPI Part 2~
https://qiita.com/TakahikoKawasaki/items/48a9d22205f77db5...
----
Tags: [[:IT国際標準]], [[:認証基盤]], [[:クレームベース認...
終了行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>Financial API (FAPI)]]
* 目次 [#zce5c6fe]
#contents
*概要 [#mec56743]
-[[Financial API (FAPI)]]の「Read and Write API用セキュリ...
-金融データへのトランザクション・アクセスに適した[[OAuth]...
--OpenID Connect(OIDC)を使用して顧客(ユーザ)を識別
--トークンを使用して、エンドポイントから保護データを読取
--エンドポイントは、JSONデータを提供するREST API
※ ドラフト 4 を参考にして作成。その後、ドラフト 6 を再度...
*要約 [#sab53ee8]
-送信者・受信者・メッセージ認証を強化
-以下の攻撃に対するコントロールを規定
--認可要求の改ざん
--コードインジェクション
--状態インジェクション
--トークン要求フィッシング
--認可応答の改ざん
**フロー [#y974f9a7]
このプロファイルを簡単に説明すると、以下のようになる。
***Confidentialクライアント [#y0fe1fb9]
-code id_token
-[[共通>#g0db887f]]
-[[個別>#b1fc3c02]]
***Publicクライアント [#uca31885]
-[[共通>#g0db887f]]
-Native
--code id_token([[JARM>#j3ade667]])
--[[共通>#g0db887f]]
--[[個別>#e482f66f]]
-SPA
--code id_token toke(Hybrid Flow)
--[[共通>#g0db887f]]
--[[個別>#e482f66f]]
**パラメタ [#sb435362]
***[[response_type>OAuth 2.0 Multiple Response Type Encod...
-code id_token
--[[Confidentialクライアント>#b1fc3c02]]
--Nativeの[[Publicクライアント>#e482f66f]]の場合、S256の[...
-code id_token token~
SPA系の[[Publicクライアント>#e482f66f]]の場合
--8.3.3. Identity provider (IdP) mix-up attackの可能性が...
--故に、Implicit Flow より [[Hybrid Flow>OpenID Connect#l...
***[[response_mode>OAuth 2.0 Form Post Response Mode]] [#...
[[JARM>#j3ade667]]であればHybrid Flowでなくてもいい。
***request or request_uri [#h3bfbf17]
-パラメタを要求。
-[[Requestオブジェクト>#ha94c6d8]]
**[[IDトークン>OpenID Connect#ofb73c59]] [#g7df69b2]
***[[JWT]]形式 [#r36d5748]
-[[JWS]]署名
--ES256(ECDSA using P-256 and SHA-256, Recommended+)
--PS256(RSASSA-PSS using SHA-256 and MGF1 with SHA-256, ...
-[[JWE]]暗号化~
アルゴリズムの指定は無し。
***追加クレーム [#c33d2245]
-[[acrとamr>OpenID Connect - IDトークン#l52144f8]]
-[[at_hashとc_hash>OpenID Connect - IDトークン#c007540d]]
-更に、[[切り離された署名のためのs_hash>#i246cd31]]。
***切り離された署名 [#i246cd31]
-認可レスポンスが改ざんされていないことを検証。
-s_hash~
クライアントは、
--[[at_hashとc_hash>OpenID Connect - IDトークン#c007540d]...
--s_hash
>の値を検証する。
--値
---state 値のASCII表現のオクテットのハッシュの左端の半分...
---ハッシュはIDトークンのJOSEヘッダのalgパラメタで使用さ...
--例:algがHS512の場合
---state値をASCIIエンコードし、
---SHA-512でハッシュ化し、
---左端の256ビットを切り出し、
---base64urlエンコードする。
-この代替に「[[JARM>#j3ade667]]」と言う仕様もある。
**通信 [#ob9374f1]
***SSL/TLS [#l35b4184]
-TLSバージョン1.2以降
-TLSサーバ証明書チェック
-暗号スイート
--TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
--TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
--TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
--TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
***redirect_uri [#r65c6593]
(完全一致)
**認証 [#k8da384f]
***ユーザ [#l0c98773]
[[LoA 3>LoA(Level of Assurance)#kdf5a643]]
-特定される⾝元識別情報の信⽤度が「相当程度ある」。
-パスワードだけではなく、2要素以上を用いてユーザー認証を...
***クライアント認証 [#vdf3136c]
-認可エンドポイント~
[[Requestオブジェクト>#ha94c6d8]]
-Tokenエンドポイント(以下の何れかが必要)
--[[JWT Client Assertion>OpenID Connect#y7bdab62]](priva...
--[[紐付け(トークン・バインディング)>#i309b755]]~
FAPIクライアントが「[[MTLS>#c724c394]]」または「[[OAUTB>#...
**トークン種類 [#x210d002]
[[記名式トークン(Proof-of-possession Token)>トークン#b3...
***対象 [#aa43405a]
-code
-token
--access_token
--refresh_token
***紐付け(トークン・バインディング) [#i309b755]
紐付け(トークン・バインディング)のために以下の何れかを...
(記名は、Resource Owner単位ではなくてClient単位)
-[[MTLS>#c724c394]]
-[[OAUTB>#c724c394]]
*役割 [#a2170501]
**Authorization Server [#zf702573]
先ずは、「[[FAPI Part 1 (Read Only API Security Profile)>...
***認証・認可 [#u62c1062]
-[[LoA 3>LoA(Level of Assurance)#kdf5a643]]
***[[クライアント認証>#vdf3136c]] [#tf6a9f9c]
***redirect_uri [#fabee59b]
-事前登録が必要
-認可リクエストに必須
-完全一致が必要
***code, token [#mbd264d4]
-[[記名式トークン>#x210d002]]
--code
--token
---access_token
---refresh_token
-[[IDトークン>#g7df69b2]]
**Client [#ide28df2]
先ずは、「[[FAPI Part 1 (Read Only API Security Profile)>...
-[[Confidentialクライアント>#b1fc3c02]]をサポートする。
-また、[[Publicクライアント>#e482f66f]]をサポートすべき。
***共通 [#g0db887f]
-[[Requestオブジェクト>#ha94c6d8]]
-[[切り離された署名のためのs_hash>#i246cd31]]
-紐付け(トークン・バインディング)のために以下の何れかを...
--[[MTLS>#c724c394]]
--[[OAUTB>#c724c394]]
***Confidentialクライアント [#b1fc3c02]
-[[クライアント認証>#vdf3136c]]が必要。
--[[Authorization Code>OAuth#yfeb403d]]を使用して、
--+Tokenエンドポイントに[[クライアント認証>#vdf3136c]]
---[[JWT Client Assertion>OpenID Connect#y7bdab62]](priv...
---[[MTLS>#c724c394]]
-[[JWS]] & [[JWE]]の[[IDトークン>#g7df69b2]]の要求が必要%...
***Publicクライアント [#e482f66f]
-SPA系は、Hybrid Flowをサポート
-Nativeは、S256の[[OAuth PKCE]]をサポート
--「ハッシュ関数」には、「S256」を使用する。
--「[[アプリケーション間通信>https://dotnetdevelopmentinf...
-+Tokenエンドポイントに[[OAUTB>#c724c394]]の[[クライアン...
-[[acrクレーム>OpenID Connect#ja81c8fa]]で[[LoA 3>LoA(Lev...
-各カギは、
--SPA系は、クライアント端末ごとになる。
--Nativeは、インストール(インスタンス)毎になる。
**Resource Server [#fbfccde7]
先ずは、「[[FAPI Part 1 (Read Only API Security Profile)>...
***[[記名式トークン>#x210d002]] [#c582f76f]
-[[MTLS>#c724c394]]
-[[OAUTB>#c724c394]]
*[[Requestオブジェクト>JWT Secured Authorization Request ...
[[Publicクライアント>#e482f66f]]ダケと思っていたが、[[Con...
-F-API2では、request_uriを[[Clientではなく、Authorization...
--これにより、Clientが指定したrequest_uriへの要求をサポー...
--[[Requestオブジェクト>JWT Secured Authorization Request...
--request_uri形式は、以下の何れかだが、URNになるのが既定...
---URL
---URN~
[[Requestオブジェクト>JWT Secured Authorization Request (...
--パラメタ
---[[Requestオブジェクト>JWT Secured Authorization Reques...
---仕様で要求されている場合、一致した重複を更に送信しても...
**登録リクエスト [#t71592fd]
***[[Request>JWT Secured Authorization Request (JAR)#od26...
どうも、この([[specの>#w0534ff5]])コンテキストからする...
-このリクエストは認可リクエストではなく、[[Requestオブジ...
-また、この[[Requestオブジェクト>JWT Secured Authorizatio...
>
POST https://as.example.com/ros/ HTTP/1.1
Host: as.example.com
Content-Type: application/jws
Content-Length: 1288
eyJhbGciOiJSUzI1NiIsImtpZCI6ImsyYmRjIn0.ew0KICJpc3MiOiA
(... abbreviated for brevity ...)
zCYIb_NMXvtTIVc1jpspnTSD7xMbpL-2QgwUsAlMGzw
※ クライアント認証は、JWT中のissに対応した署名検証で行う。
***Response [#h1b6a7de]
-正常
HTTP/1.1 201 Created
Date: Tue, 2 May 2017 15:22:31 GMT
Content-Type: application/json
{
'iss':'https://as.example.com/', // AuthZのID
'aud':'s6BhdRkqt3', // ClientID
'request_uri':'urn:example:MTAyODAK', // urn(暗号ラ...
'exp':1493738581 // 有効期限(存続期間は短く、好まし...
}
-異常
--Authorization Required~
401 Unauthorized HTTP error~
署名検証が失敗した場合。
--Invalid Request~
400 Bad Request HTTP error~
[[Request>JWT Secured Authorization Request (JAR)#od26deb...
--Method Not Allowed~
405 Method Not Allowed HTTP error~
POST要求を使用しなかった場合
--Request Entity Too Large~
413 Request Entity Too Large HTTP error~
要求サイズが上限を超える場合。
--Too Many Requests~
429 Too Many Requests HTTP error~
ある期間にClientからの要求数が上限を超えた場合。
**認可リクエスト [#z78b1390]
request_uriをパラメタに指定して認可リクエストをおこなうダ...
**仕様([[JAR → PAR>JWTとOAuth2.0#o9b238a2]]) [#dfcede35]
OAuth 2.0 Pushed Authorization Requestsが標準化されている。
-参考
--OAuth 2.0 Pushed Authorization Requests~
https://tools.ietf.org/id/draft-lodderstedt-oauth-par-00....
--図解 PAR : OAuth 2.0 Pushed Authorization Requests - Qi...
https://qiita.com/TakahikoKawasaki/items/97563be46b62a0e0...
*考察 [#vebd7c4e]
**プロファイル [#oe3f07bf]
***[[プロファイルの識別>FAPI Part 1 (Read Only API Securi...
***[[他のプロファイルの抑止>FAPI Part 1 (Read Only API Se...
**[[Publicクライアント>#e482f66f]]のClient側実装 [#l62c0f...
-[[Publicクライアント>#e482f66f]]の場合、AuthZ実装も大変...
-特に、JavaやJavaScriptで[[JWT]]検証処理等を実装する必要...
-このためか、[[JWE]]が[[Publicクライアント>#e482f66f]]のF...
**関連仕様 [#i8ef7e99]
ただし[[OAuth]]2 / [[OIDC>OpenID Connect]]を除く。
***[[FAPI Part 1 (Read Only API Security Profile)]] [#kf1...
***[[JWT Secured Authorization Request (JAR)]] [#icf72f77]
***[[JWT Secured Authorization Response Mode for OAuth 2....
***[[OAuth 2.0 Token Binding]] [#c724c394]
-MTLS: [[OAuth 2.0 Mutual TLS Client Authentication and C...
-OAUTB: [[OAuth 2.0 Token Binding]]
*参考 [#w0534ff5]
-Financial Services – Financial API - Part 2: Read and Wr...
http://openid.net/specs/openid-financial-api-part-2.html
>FAPI Read and Writeセキュリティ・プロファイル
-Financial API 実装の技術課題 - Qiita > FAPI Part 2~
https://qiita.com/TakahikoKawasaki/items/48a9d22205f77db5...
----
Tags: [[:IT国際標準]], [[:認証基盤]], [[:クレームベース認...
ページ名: