httpwg / httpbis-issues

1 stars 1 forks source link

Forwarding Proxy-* #473

Closed mnot closed 3 years ago

mnot commented 11 years ago

p7 4.2 says:

Unlike WWW-Authenticate, the Proxy-Authenticate header field applies only to the current connection, and intermediaries should not forward it to downstream clients. However, an intermediate proxy might need to obtain its own credentials by requesting them from the downstream client, which in some circumstances will appear as if the proxy is forwarding the Proxy-Authenticate header field.

and 4.3 says:

Unlike Authorization, the Proxy-Authorization header field applies only to the next outbound proxy that demanded authentication using the Proxy-Authenticate field. When multiple proxies are used in a chain, the Proxy-Authorization header field is consumed by the first outbound proxy that was expecting to receive credentials. A proxy may relay the credentials from the client request to the next proxy if that is the mechanism by which the proxies cooperatively authenticate a given request.

However, neither says that the header needs to be listed in the Connection header; i.e. that it's hop-by-hop, as per RFC2616 13.5.1. If you recall, we removed the explicit list of hop-by-hop headers, opting to say that they needed to be listed in Connection, because doing so was causing confusion. However, we haven't actually specified that for these two headers.

Recommend language like this:

""" Unlike WWW-Authenticate, the Proxy-Authenticate header field applies only to the current connection, and thus MUST be listed in the Connection header field [ref], so that it is consumed on the next hop. Note that an intermediate proxy might need to obtain its own credentials by requesting them from the downstream client, which in some circumstances will appear as if the proxy is forwarding the Proxy-Authenticate header field. """

Reported by @mnot, migrated from https://trac.ietf.org/trac/httpbis/ticket/473

mnot commented 11 years ago

See thread; Roy explained that it indeed is not hop-by-hop.

Editors, please note change from 2616 in p1.

mnot commented 11 years ago

julian.reschke@gmx.de changed milestone from 23 to unassigned

mnot commented 11 years ago

julian.reschke@gmx.de commented:

In -21, we removed the concept of implicit hop-by-hop altogether; and this is mentioned already:

"Clarify exactly when "close" connection options have to be sent; drop notion of header fields being "hop-by-hop" without being listed in the Connection header field. (Section 6.1)" -- http://greenbytes.de/tech/webdav/draft-ietf-httpbis-p1-messaging-21.html#rfc.section.A.2.p.9

Do we really need to mention Proxy-* explicitly?

mnot commented 11 years ago
mnot commented 11 years ago

Proposed patch

mnot commented 11 years ago

julian.reschke@gmx.de commented:

From 2322:

clarify Proxy-Authenticate and connections (see #473)

mnot commented 11 years ago
mnot commented 11 years ago

julian.reschke@gmx.de changed milestone from unassigned to 24

mnot commented 11 years ago

fielding@gbiv.com commented:

From 2326:

Fix inbound/outbound/downstream directionality confusion in Proxy-Authenticate and Proxy-Authorization; updates 2322 and addresses #473

mnot commented 11 years ago
mnot commented 11 years ago