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

Service worker soft update is under specified #83

Open
letitz opened this issue Oct 5, 2022 · 1 comment
Open

Service worker soft update is under specified #83

letitz opened this issue Oct 5, 2022 · 1 comment

Comments

@letitz
Copy link
Collaborator

letitz commented Oct 5, 2022

The current private network access check algorithm states the fetch client's policy container's IP address space should be compared against the connection's IP address space. This is all well and good when the fetch client has a correct policy container, as is the case for documents and most workers fetches (#82).

PNA checks are also supposed to apply to service worker soft update fetches so as to avoid a bypass. The current implementation in Chromium uses the last fetched (exact spec term unclear) service worker's policy container's IP address space as the client IP address space.

Unfortunately, the service worker soft update algorithm sets up a null fetch client, which entails that the PNA check cannot apply. This is a known issue (w3c/ServiceWorker#849, w3c/ServiceWorker#1447). Until it is resolved, this part of the spec is underspecified.

In the meantime, we should non-normatively explain what the correct behavior should be in spite of this shortcoming.

letitz added a commit that referenced this issue Oct 6, 2022
@letitz
Copy link
Collaborator Author

letitz commented Oct 6, 2022

The above commit explains that there is a blind spot here, but does not yet attempt to sketch out Chromium's current implementation.

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

No branches or pull requests

1 participant