Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"Authoritative" restrictions #405

Closed
mnot opened this issue Feb 20, 2014 · 7 comments
Closed

"Authoritative" restrictions #405

mnot opened this issue Feb 20, 2014 · 7 comments

Comments

@mnot
Copy link
Member

mnot commented Feb 20, 2014

10.1 Server Authority and Same-Origin says:

A client MUST NOT use, in any way, resources provided by a server that is not authoritative for those resources.

This seems too restrictive; it disallows layering in Alt-Svc, for example (either in this process, or later on) without changing the ALPN identifier.

@martinthomson
Copy link
Collaborator

I'm not so certain. Alt-Svc or whatever future mechanism we use (POSH, attribute cert-based delegation...as if) is free to alter the meaning of "authoritative". I believe that this is what Alt-Svc actually does to a small extent.

@grmocg
Copy link
Contributor

grmocg commented Feb 20, 2014

What Martin said.
It is important that a client never use anything not authoritative. If we
believe that there is a scenario that doesn't fit the current meaning of
authoritative, that is what should probably change.

On Wed, Feb 19, 2014 at 9:10 PM, Martin Thomson [email protected]:

I'm not so certain. Alt-Svc or whatever future mechanism we use (POSH,
attribute cert-based delegation...as if) is free to alter the meaning of
"authoritative". I believe that this is what Alt-Svc actually does to a
small extent.

Reply to this email directly or view it on GitHubhttps://github.com//issues/405#issuecomment-35589858
.

@mnot
Copy link
Member Author

mnot commented Feb 20, 2014

If we rewrite the definition of authoritative to allow it to be monkey-patched by future specs, I'm OK with that.

@martinthomson
Copy link
Collaborator

Let's make sure that we have a better definition of authoritative. That should include dropping the dependency on RFC 6454. The origin model is nice, but I don't think that it's adding anything here: http://http2.github.io/http2-spec/#authority

Also, there's a weaselly use of "generally" when describing what can be pushed: http://http2.github.io/http2-spec/#rfc.comment.2 If we get "authoritative" right, we should just use that.

@martinthomson
Copy link
Collaborator

So, I looked at this yesterday, and made some changes ^^. By my reading, the definition of "authority" in HTTP/1.1 suits our ends perfectly. I couldn't see any way that it could be interpreted that would disallow coalescing, which we all thought was the big feature we were adding here.

So what I've done is more explicitly reference the text in HTTP/1.1 p1. I haven't added explicit text regarding changes to this. I'm a little uncomfortable saying "Future specifications MAY change the definition of authoritative." Mostly because that seems too open to me. Getting any change right could be tricky. I don't want people thinking that they can arbitrarily monkey patch HTTP with their spec. That wouldn't be good for the protocol.

I think that we can easily write another RFC that "Updates" either HTTP/1.1 or HTTP/2 with respect to the definition of "authority".

@mnot
Copy link
Member Author

mnot commented Mar 3, 2014

Discussed in London; Martin to use HTTP/1 text.

@mnot mnot closed this as completed Mar 3, 2014
@reschke
Copy link
Contributor

reschke commented Mar 4, 2014

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants