--
You received this message because you are subscribed to the Google Groups "net-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to net-dev+u...@chromium.org.
To post to this group, send email to net...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/net-dev/CAKXHy%3Dd-n3sWjL%2Bq1MB6QQZgktGhqRzSqnj93xAJ6KshGhrhYw%40mail.gmail.com.
Two rather off-topic comments -- I thought the network stack is about the only thing Chrome does control on iOS. I am probably misremembering, but are you sure about that?
- This intent template is missing the "Will this be supported on all 6 Blink platforms..." question.- Is that intentional?- Did you remove it?- If the answer is a double "no", can you provide the steps that got to this template?
It seems like the Secure flag wasn't added that long ago, why can't we add more flags?
The prefixes seem super ugly, and you can't combine them so the syntax is not very extensible. Is there a reason to not limit this to HttpOnly cookies?
I wonder if instead of prefixes just using an extra cookie with the special flags would be better, Cookie-Flags=CookieName1=FlagA FlagB, CookieName2=Flag FlagD. That would also let you do something like Cookie-Flags-Default=FlagC to force a specific flag on all cookies.
It seems like the Secure flag wasn't added that long ago, why can't we add more flags?
The prefixes seem super ugly, and you can't combine them so the syntax is not very extensible. Is there a reason to not limit this to HttpOnly cookies?
I wonder if instead of prefixes just using an extra cookie with the special flags would be better, Cookie-Flags=CookieName1=FlagA FlagB, CookieName2=Flag FlagD. That would also let you do something like Cookie-Flags-Default=FlagC to force a specific flag on all cookies.
On Fri, Oct 9, 2015 at 1:20 PM David Benjamin <davi...@chromium.org> wrote:I like this idea! It's kinda ugly, but does the job.I would probably drop the $Origin half instead say $Origin requires the Origin flag from draft-west-origin-cookies-01. There are other weird bits re cookies and same-origin like ignoring the port, so I think it should require that. Basically this is a solution to the downgrade problems in section 5.2.(Though one downside with $Origin- over the separate header is that we use more bandwidth if there's lots of different cookies. But the separate header has downgrade problems unless we always send the Origin-Cookies header which is itself a bandwidth concern. :-/ )On Fri, Oct 9, 2015 at 1:02 PM 'Elliott Sprehn' via blink-dev <blin...@chromium.org> wrote:It seems like the Secure flag wasn't added that long ago, why can't we add more flags?
The prefixes seem super ugly, and you can't combine them so the syntax is not very extensible. Is there a reason to not limit this to HttpOnly cookies?
I wonder if instead of prefixes just using an extra cookie with the special flags would be better, Cookie-Flags=CookieName1=FlagA FlagB, CookieName2=Flag FlagD. That would also let you do something like Cookie-Flags-Default=FlagC to force a specific flag on all cookies.
To avoid downgrade problems, we'd have to always send the Cookie-Flags header on every cookied request, whether the site pays attention to it or not. (Otherwise we're indistinguishable from a browser that doesn't implement this.) If we're okay with that, that works too. People seem to be hesitant to add new headers sent on all requests though.
Though I think we actually don't want it extensible (like the concern about precedent for crazier prefixes like $SSO- in the future). Same-origin is our security policy, so this just should be seen as a bandaid for all the ways cookies fail to honor same-origin. So we get to draft-west-origin-cookies-01 (minus the separate header now) + $Origin or Cookie-Flags Origin, and then we stop there.IMO, the only reason to do $Secure (and I think that is worthwhile) is just so that existing uses of cookies can plug the http/https hole without rearchitecting everything.
The prefixes seem super ugly, and you can't combine them so the syntax is not very extensible. Is there a reason to not limit this to HttpOnly cookies?I wonder if instead of prefixes just using an extra cookie with the special flags would be better, Cookie-Flags=CookieName1=FlagA FlagB, CookieName2=Flag FlagD. That would also let you do something like Cookie-Flags-Default=FlagC to force a specific flag on all cookies.
To avoid downgrade problems, we'd have to always send the Cookie-Flags header on every cookied request, whether the site pays attention to it or not. (Otherwise we're indistinguishable from a browser that doesn't implement this.) If we're okay with that, that works too. People seem to be hesitant to add new headers sent on all requests though.I'm not sure I understand the Cookie-Flags proposal. Is the idea that the browser sends Cookie-Flags to tell the server what the flags on the cookies are, and the server checks the flags to be sure they are as expected? That seems like more work on the server's part and a lot more likely for the developer to get it wrong. The developer would have to parse the flags and remember to check them on any given cookie before using it, right? (And to distinguish unexpectedly empty Cookie-Flags [something funky going on] from Cookie-Flags not present [unsupported browser], etc.)
On Fri, Oct 9, 2015 at 3:54 PM Emily Stark <est...@chromium.org> wrote:The prefixes seem super ugly, and you can't combine them so the syntax is not very extensible. Is there a reason to not limit this to HttpOnly cookies?I wonder if instead of prefixes just using an extra cookie with the special flags would be better, Cookie-Flags=CookieName1=FlagA FlagB, CookieName2=Flag FlagD. That would also let you do something like Cookie-Flags-Default=FlagC to force a specific flag on all cookies.
To avoid downgrade problems, we'd have to always send the Cookie-Flags header on every cookied request, whether the site pays attention to it or not. (Otherwise we're indistinguishable from a browser that doesn't implement this.) If we're okay with that, that works too. People seem to be hesitant to add new headers sent on all requests though.I'm not sure I understand the Cookie-Flags proposal. Is the idea that the browser sends Cookie-Flags to tell the server what the flags on the cookies are, and the server checks the flags to be sure they are as expected? That seems like more work on the server's part and a lot more likely for the developer to get it wrong. The developer would have to parse the flags and remember to check them on any given cookie before using it, right? (And to distinguish unexpectedly empty Cookie-Flags [something funky going on] from Cookie-Flags not present [unsupported browser], etc.)If we were to go with this one, I imagine it would want to be implemented by the web framework (they already have to parse the Cookie header and probably developers aren't doing that themselves).
Though, yeah, that does require that their library implement it for them. That $Secure- (and later $Origin- when/if origin cookies exist) doesn't need modifications to the HTTP library is definitely nice.
On Fri, Oct 9, 2015 at 10:05 PM, David Benjamin <davi...@chromium.org> wrote:On Fri, Oct 9, 2015 at 3:54 PM Emily Stark <est...@chromium.org> wrote:The prefixes seem super ugly, and you can't combine them so the syntax is not very extensible. Is there a reason to not limit this to HttpOnly cookies?
I wonder if instead of prefixes just using an extra cookie with the special flags would be better, Cookie-Flags=CookieName1=FlagA FlagB, CookieName2=Flag FlagD. That would also let you do something like Cookie-Flags-Default=FlagC to force a specific flag on all cookies.