On Wed, Oct 25, 2023 at 4:35 AM Yoav Weiss <yoavwe...@chromium.org> wrote:

>
>
> On Tue, Oct 24, 2023 at 7:24 PM Ian Clelland <iclell...@chromium.org>
> wrote:
>
>> Contact emailsiclell...@chromium.org
>>
>> Explainer
>> https://github.com/w3c/webappsec-permissions-policy/blob/main/reporting.md
>>
>> Specification
>> https://w3c.github.io/webappsec-permissions-policy/#reporting
>>
>> Design docs
>> https://github.com/w3c/webappsec-permissions-policy/blob/main/reporting.md
>>
>> Summary
>>
>> This integrates the Permissions policy API with the Reporting API,
>> allowing web developers to configure endpoints to which permissions policy
>> violation reports will be sent, allowing site owners to see when disallowed
>> features are being requested on their pages in the field. It also includes
>> the Permissions-Policy-Report-Only header, which enables reports to be sent
>> based on a proposed policy (analogous to
>> Content-Security-Policy-Report-Only) so that policy changes can be
>> evaluated for potential breakage before implementing them in the regular,
>> enforcing mode.
>>
>>
>> Blink componentBlink>FeaturePolicy
>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EFeaturePolicy>
>>
>> TAG reviewNone, although both Permissions Policy (
>> https://github.com/w3ctag/design-reviews/issues/159;
>> https://github.com/w3ctag/design-reviews/issues/341) and Reporting (
>> https://github.com/w3ctag/design-reviews/issues/585) have been
>> previously reviewed by the TAG.
>>
>> TAG review statusPending (
>> https://github.com/w3ctag/design-reviews/issues/909)
>>
>> Risks
>>
>>
>> Interoperability and Compatibility
>>
>> None
>>
>>
>> *Gecko*: No signal (
>> https://github.com/mozilla/standards-positions/issues/909)
>>
>> *WebKit*: No signal (
>> https://github.com/WebKit/standards-positions/issues/269)
>>
>
> Do you know if any of them implements both reporting and permissions
> policy?
>

WebKit and Gecko both implement permissions policy to some extent; I do not
believe that either of them implement the Permissions-Policy header yet,
which would be required for reporting. Safari has shipped support for
reporting, while Gecko has an implementation which is currently behind a
flag in Firefox. (Firefox *does* support CSP level 2 reporting, but not the
generic Reporting API mechanism).

That said, Mozilla has a positive position on both Permissions Policy
<https://mozilla.github.io/standards-positions/#feature-policy> and
Reporting <https://mozilla.github.io/standards-positions/#reporting>.


>> *Web developers*: Positive I've heard from developers at both Google and
>> Meta that this would be extremely important for them to roll out
>> permissions policies on their properties, in order to be able to safely
>> lock down permissions. Additionally, I've heard that this is critical for
>> adoption of some features such as Cross-origin isolation, which have the
>> potential to break sites if not configured correctly.
>>
>> *Other signals*:
>>
>> Ergonomics
>>
>> This is a change to permissions policy, which already touches a large
>> number of APIs, and now includes the Reporting API. The major ergonomic
>> risk here is in the method of configuration, of assigning features to
>> reporting endpoints. A previous origin trial simply sent all violations to
>> the "default" endpoint, without allowing any other flexibility in
>> configuration. This imposes a burden on the developer to filter those out
>> which are not desired. That endpoint today also receives several other
>> non-configurable reports, and we have received feedback that that kind of
>> design is not ergonomic. The current design instead requires developers to
>> configure each feature for which they would like to receive reports. This
>> may be sub-optimal, and we may in the future want to define a syntax for a
>> catch-all endpoint, but I believe that can be a syntax extension which
>> would be backwards-compatible with this feature.
>>
>>
>> Activation
>>
>> This is no more challenging than existing reporting mechanisms.
>>
>>
>> Security
>>
>> The permissions policy on a page can impose conditions on embedded
>> content, but it is still important that user actions in that content not
>> leak information to the containing page. For that reason, the reporting is
>> designed such that a page can only receive reports for violations which
>> occurred in that page. Any embedded content will need to have reporting
>> enabled independently.
>>
>>
>> WebView application risks
>>
>> Does this intent deprecate or change behavior of existing APIs, such that
>> it has potentially high risk for Android WebView-based applications?
>>
>> None
>>
>>
>> Debuggability
>>
>> Permissions policy and reporting each have independent support in
>> DevTools for debugging. I don't believe that the specific combination of
>> the two requires special consideration.
>>
>>
>> Will this feature be supported on all six Blink platforms (Windows, Mac,
>> Linux, Chrome OS, Android, and Android WebView)?Yes
>>
>> Is this feature fully tested by web-platform-tests
>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>> ?Yes
>>
>>
>> https://wpt.fyi/results/permissions-policy/reporting?label=experimental&label=master&aligned
>>
>>
>> Flag name on chrome://flagsNone
>>
>> Finch feature namePermissionsPolicyReporting
>>
>> Requires code in //chrome?False
>>
>> Tracking bughttps://bugs.chromium.org/p/chromium/issues/detail?id=1493159
>>
>> Launch bughttps://launch.corp.google.com/launch/4285768
>>
>> Estimated milestones
>> Shipping on desktop 120
>> Shipping on Android 120
>> Shipping on WebView 120
>>
>> Anticipated spec changes
>>
>> Open questions about a feature may be a source of future web compat or
>> interop issues. Please list open issues (e.g. links to known github issues
>> in the project for the feature specification) whose resolution may
>> introduce web compat/interop risk (e.g., changing to naming or structure of
>> the API in a non-backward-compatible way).
>> None; the spec changes have landed.
>>
>> Link to entry on the Chrome Platform Status
>> https://chromestatus.com/feature/5105435227455488
>>
>> This intent message was generated by Chrome Platform Status
>> <https://chromestatus.com/>.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "blink-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to blink-dev+unsubscr...@chromium.org.
>> To view this discussion on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK_TSXJ%3DKP76-BjdbOv%2B1u7Ej6W91oTHf8JJ9GOxknTJM4kYAg%40mail.gmail.com
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK_TSXJ%3DKP76-BjdbOv%2B1u7Ej6W91oTHf8JJ9GOxknTJM4kYAg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK_TSXLnyOaybVS7ts9NvGa2ZDm27uHVk6unbg5hXSi1UMdzeQ%40mail.gmail.com.

Reply via email to