Restrict "registerProtocolHandler" to SecureContext |
|||
Issue descriptionFeature description: Mozilla restricted "registerProtocolHandler" to SecureContext in Firefox 62. We should probably do the same. For more context, see their intent to unship registerProtocolHandler over insecure contexts" [1] Usage counters suggest a very low impact: 0.0028% on insecure pages [2] This is low enough for a fast path removal. Eng owner: asanka@ Product owner: kbx@ Design doc: <if needed: http://go/DesignDocTemplates> [1]: https://groups.google.com/forum/#!topic/mozilla.dev.platform/zzBWOPMPPs0/discussion [2]: https://www.chromestatus.com/metrics/feature/popularity#RegisterProtocolHandlerInsecureOrigin
,
Sep 11
rsleevi: Yeah, I was a bit lazy in explaining the motive in the spec change issue [1]. registerProtocolHandler() requires that the proto-URL be same-origin with the calling context. By implication, if the proto-URL is to be a secure-context, then the calling context should also be a secure context. The implementation in blink is nuanced, but exceptions should be rare. The collected data, which was only for valid invocation of registerProtocolHandler(), applies approximately equally both to the secure context state of the document and to the state of the URL. Or am I missing the point entirely? This came up because we are considering broadening the range of schemes on which registerProtocolHandler() could be used [2]. [1]: https://github.com/whatwg/html/issues/4017 [2]: https://github.com/whatwg/html/issues/3998
,
Sep 11
Ah! Thanks, I missed this part in the HTML Living Standard: > User agents must throw a "SecurityError" DOMException if the resulting URL record has an origin that differs from the origin specified by the relevant settings object of this NavigatorContentUtils object. In that case, yeah, totally makes sense to secure-origin restrict :)
,
Sep 20
iOS does not use Blink |
|||
►
Sign in to add a comment |
|||
Comment 1 by rsleevi@chromium.org
, Sep 10