Closed Bug 1829943 Opened 2 years ago Closed 2 years ago

[wpt-sync] Sync PR 39697 - Add "Required Permissions To Load" to Fenced Frame Config.

Categories

(Testing :: web-platform-tests, task, P4)

task

Tracking

(firefox115 fixed)

RESOLVED FIXED
115 Branch
Tracking Status
firefox115 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 39697 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/39697
Details from upstream follow.

Liam Brady <lbrady@google.com> wrote:

Add "Required Permissions To Load" to Fenced Frame Config.

Update FencedFrameConfig to include a new field:
required_permissions_to_load_. Previously, opaque-ads fenced frames
were always loaded with a static list of permissions which were always
enabled regardless of whether or not they were necessary. This was done
so that fenced frames loaded with an API can have access to the
necessary reporting tools (such as private aggregation).

However, not all APIs require all features to be enabled in order to
function properly. For instance, shared storage is one of the enabled
features, but FLEDGE does not need it.

With this change, APIs can now set the specific permissions they
require for a fenced frame to be enabled, and include them directly in
the configuration. This ensures that only the necessary permissions are
enabled, which enhances security and performance while reducing
unnecessary overhead.

Fenced frames created without an API will now not allow any features in
their permissions policies.

This CL updates various tests to respond to this change.

Change-Id: Ifb3cadc561d1de178ebbc540073f27b9b026ccac
Reviewed-on: https://chromium-review.googlesource.com/4334571
WPT-Export-Revision: 73bcce43704dd0781bfc3ffc31fa6a081ceaa086

Try push failed: decision task LYnzq2NZRTeRMoyuCmT0Sg returned error

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 9 tests and 4 subtests

Status Summary

Firefox

OK : 8[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows11-32-2009-qr-debug, Gecko-windows11-32-2009-qr-opt, Gecko-windows11-64-2009-qr-debug, Gecko-windows11-64-2009-qr-opt] 9[GitHub]
FAIL: 19[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows11-32-2009-qr-debug, Gecko-windows11-32-2009-qr-opt, Gecko-windows11-64-2009-qr-debug, Gecko-windows11-64-2009-qr-opt] 23[GitHub]

Chrome

OK : 9
FAIL: 23

Safari

OK : 9
FAIL: 23

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /fenced-frame/default-enabled-features-allow-all.https.html [wpt.fyi]
    • Same-origin fenced frame loads when feature policies are *: FAIL (Chrome: FAIL, Safari: FAIL)
    • Cross-origin fenced frame loads when feature policies are *: FAIL (Chrome: FAIL, Safari: FAIL)
  • /fenced-frame/default-enabled-features-allow-none.https.html [wpt.fyi]
    • Same-origin fenced frame does not load when feature policies are none: FAIL (Chrome: FAIL, Safari: FAIL)
    • Cross-origin fenced frame does not load when feature policies are none: FAIL (Chrome: FAIL, Safari: FAIL)
  • /fenced-frame/default-enabled-features-allow-self.https.html [wpt.fyi]
    • Same-origin fenced frame loads when feature policies are self: FAIL (Chrome: FAIL, Safari: FAIL)
    • Cross-origin fenced frame does not load when feature policies are self: FAIL (Chrome: FAIL, Safari: FAIL)
    • Fenced frames default feature policies are set to not allow anything.: FAIL (Chrome: FAIL, Safari: FAIL)
    • A fenced frame redirected to a page that does not allow feature policies does not navigate: FAIL (Chrome: FAIL, Safari: FAIL)
  • /fenced-frame/default-enabled-features-attribute-allow.https.html [wpt.fyi]
    • Same-origin fenced frame with allow attribute enabling required features: FAIL (Chrome: FAIL, Safari: FAIL)
    • Cross-origin fenced frame with allow attribute enabling required features: FAIL (Chrome: FAIL, Safari: FAIL)
    • Delivered policies can further restrict permissions of a fenced frame: FAIL (Chrome: FAIL, Safari: FAIL)
  • /fenced-frame/default-enabled-features-attribute-change.https.html [wpt.fyi]
    • Changing the allow attribute is a no-op for the current navigation: FAIL (Chrome: FAIL, Safari: FAIL)
    • Changing the allow attribute is a no-op for frame-initiated navigations: FAIL (Chrome: FAIL, Safari: FAIL)
  • /fenced-frame/default-enabled-features-attribute-disallow.https.html [wpt.fyi]
    • Same-origin fenced frame with allow attribute disabling required feature: FAIL (Chrome: FAIL, Safari: FAIL)
    • Cross-origin fenced frame with allow attribute disabling required feature: FAIL (Chrome: FAIL, Safari: FAIL)
  • /fenced-frame/default-enabled-features-attribution-disabled.https.html [wpt.fyi]
    • Same-origin fenced frame with allow attribute enabling required feature but page disabling feature.: FAIL (Chrome: FAIL, Safari: FAIL)
    • Cross-origin fenced frame with allow attribute enabling required feature but page disabling feature.: FAIL (Chrome: FAIL, Safari: FAIL)
  • /fenced-frame/default-enabled-features-unset.https.html [wpt.fyi]
    • Same-origin fenced frame loads when feature policies are unset: FAIL (Chrome: FAIL, Safari: FAIL)
    • Cross-origin fenced frame loads when feature policies are unset: FAIL (Chrome: FAIL, Safari: FAIL)
  • /fenced-frame/resolve-to-config-promise.https.html [wpt.fyi]
    • resolveToConfig set to a promise that resolves to true: FAIL (Chrome: FAIL, Safari: FAIL)
    • resolveToConfig set to a promise that resolves to false: FAIL (Chrome: FAIL, Safari: FAIL)
    • resolveToConfig set to a promise that immediately resolves: FAIL (Chrome: FAIL, Safari: FAIL)
    • resolveToConfig set to a promise that resolves to an invalid value: FAIL (Chrome: FAIL, Safari: FAIL)
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6c2f7bfeb05d [wpt PR 39697] - Add "Required Permissions To Load" to Fenced Frame Config., a=testonly https://hg.mozilla.org/integration/autoland/rev/f54396770458 [wpt PR 39697] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 115 Branch
You need to log in before you can comment on or make changes to this bug.