Validate the iss authorization-response parameter (RFC 9207 / SEP-2468) (#2921)
This commit is contained in:
parent
b7a5bffed0
commit
48cf4950dc
1 changed files with 335 additions and 103 deletions
|
|
@ -3279,16 +3279,10 @@ REQUIREMENTS: dict[str, Requirement] = {
|
|||
source=f"{SPEC_BASE_URL}/basic/authorization#authorization-server-metadata-discovery",
|
||||
behavior=(
|
||||
"The client rejects authorization-server metadata whose issuer does not match the URL the "
|
||||
"metadata was retrieved from (RFC 8414 section 3.3)."
|
||||
"metadata was retrieved from (RFC 8414 section 3.3 / SEP-2468)."
|
||||
),
|
||||
transports=("streamable-http",),
|
||||
note="OAuth is HTTP-only.",
|
||||
divergence=Divergence(
|
||||
note=(
|
||||
"The SDK parses authorization-server metadata without comparing issuer to the discovery "
|
||||
"URL; a mismatched issuer is accepted and the flow proceeds."
|
||||
),
|
||||
),
|
||||
),
|
||||
"client-auth:authorize:error-surfaces": Requirement(
|
||||
source=f"{SPEC_BASE_URL}/basic/authorization#authorization-flow-steps",
|
||||
|
|
@ -3492,6 +3486,16 @@ REQUIREMENTS: dict[str, Requirement] = {
|
|||
transports=("streamable-http",),
|
||||
note="OAuth is HTTP-only.",
|
||||
),
|
||||
"client-auth:authorization-response:iss-verify": Requirement(
|
||||
source=f"{SPEC_BASE_URL}/basic/authorization#authorization-server-metadata-discovery",
|
||||
behavior=(
|
||||
"The client validates the RFC 9207 iss authorization-response parameter against the "
|
||||
"authorization server issuer (simple string comparison) and rejects a mismatch, or a "
|
||||
"missing iss when the server advertises support (SEP-2468)."
|
||||
),
|
||||
transports=("streamable-http",),
|
||||
note="OAuth is HTTP-only.",
|
||||
),
|
||||
"client-auth:token-endpoint-auth-method": Requirement(
|
||||
source="sdk",
|
||||
behavior="The client authenticates to the token endpoint using the auth method established at registration.",
|
||||
|
|
|
|||
Loading…
Reference in a new issue