Thread (41 messages) flat view 41 messages, 12 authors, 2016-06-15

Re: [RFC PATCH 1/4] Document the HTTP transport protocol

From: Shawn O. Pearce <hidden>
Date: 2016-06-15 22:47:33

Jeff King [off-list ref] wrote:
On Thu, Oct 08, 2009 at 10:22:45PM -0700, Shawn O. Pearce wrote:
quoted
+Servers MUST NOT require HTTP cookies for the purposes of
+authentication or access control.
[...]
+Servers MUST NOT require HTTP cookies in order to function correctly.
Why not? I can grant that the current git implementation probably can't
handle it, but keep in mind this is talking about the protocol and not
the implementation.
Good point... this document is about trying to explain the common
functionality that everyone can agree on.
And I can see it being useful for sites like github
which already have a cookie-based login.
What I'm concerned about is using the cookie jar.  My Mac OS X
laptop has 5 browsers installed, each with their own #@!*! cookie
jar: Safari, Opera, Firefox, Camino, Google Chrome.  How the hell
is the git client going to be able to use those cookies in order
to interact with a website that requires cookie authentication?
Adapting the client to handle
this case would not be too difficult (it would just mean keeping cookie
state in a file between runs,
Saving our own cookie jar is easy, libcurl has some limited cookie
jar support already built in.  We just have to enable it.
or even just pulling it out of the normal
browser's cookie store).
See above, I don't think this will be very easy.
And people whose client didn't do this would
simply get an "access denied" response code.
And then they will email git ML or ask on #git why their git client
can't speak to some random website... and its because they used
"lynx" or yet-another-browser whose cookie jar format we can't read.
Is there a technical reason not to allow it?
Not technical, but I want to reduce the amount of complexity that
a conforming client has to deal with to reduce support costs for
everyone involved.

I weakend the sections on cookies:

+ Authentication
+ --------------
....
+ Servers SHOULD NOT require HTTP cookies for the purposes of
+ authentication or access control.

and that's all we say on the matter.  I took out the Servers MUST
NOT line under session state.

-- 
Shawn.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help