metadata syntax、issuer binding、signer trust、advertised capability、resource authorizationを分けて扱います。Section番号はRFC 8414を指します。
metadata documentはissuerをhttps://as.example?tenant=1とし、signed_metadataを含む。grant_types_supportedはあるが、response_types_supportedは省略されている。
legacy serverはgrant_types_supported、token_endpoint_auth_methods_supported、scopes_supported、jwks_uriを省略している。clientはRFC 8414が省略時の規則を定義する項目だけ設定する。
userがissuerとしてhttps://login.attacker.exampleを入力する.TLS validationに成功し,返されたissuerも完全一致し,metadataはsyntax上正しい.しかしclientには,そのissuerを要求A2A resourceへ関連付けるpolicyがない.
metadataのsigned_metadataは暗号的にvalidなJWSで,issはclientに未知である.unsigned JSON claimは既知token endpointを示すが,signed claimは未知hostへ置き換える.
issuer https://as.example/t1 に対し,clientはhttps://as.example/t1/.well-known/oauth-authorization-serverを取得する.双方が同じTLS certificateを使うため,issuerがhttps://as.example/t2のdocumentも受理する.
RFC 9728 resource metadataがauthorization serverを列挙する.A2A clientはそのRFC 8414 metadataを検証し,grantを取得してsession-bound proofをgatewayへ提示する.gatewayは両方を検証し,resource policyを持つbackendへunsigned identity headerだけを転送する.
A2A profileはmetadata name agent-rôleのôへprecomposed U+00F4を使う。documentは見た目が同じ名前を、U+006FとU+0302で表す。JSON parserはすでにJSON escapingを除去している。
metadataはtoken_endpoint_auth_methods_supportedでprivate_key_jwtをadvertiseするが、token_endpoint_auth_signing_alg_values_supportedを省略している。implementerはRS256を仮定しようとしている。