Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fenced frame: enable attribution reporting for opaque-ads
Opaque-ads fenced frames need to have attribution reporting enabled to be able to support FLEDGE. Until the opaque URN attributes feature is in place, this is a temporary solution to allow a fenced frame to have attribution reporting. - An opaque-ads fenced frame will not be allowed to load if attribution reporting is explicitly disabled in its embedder. - If the embedder doesn't specify any attribution reporting policy in its header, the opaque-ads fenced frame will act as if it was enabled via allow (*) and allow itself to load. - If an opaque-ads fenced frame loads, it will turn on attribution reporting in its permissions policy. - Update fenced frame creation/initialization to do most of the initialization after the fenced frame constructor. This ensures that the fenced frame is properly read into the fenced frames vector before initialization, allowing us to determine the mode for MPArch (which expects the fenced frame to be in the vector). See design doc: https://docs.google.com/document/d/1vnCoglukP61ucDY4ob6zgizM1aoilmlFOq4Gcs8OVX8/edit?usp=sharing&resourcekey=0-9UtvE--vXmeNJHiKZgx7GA Change-Id: Ib53c4be57e7701bbf052377fcdf7bfd2570b2e00 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3779724 Reviewed-by: Dominic Farolino <dom@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Reviewed-by: Arthur Sonzogni <arthursonzogni@chromium.org> Reviewed-by: Shivani Sharma <shivanisha@chromium.org> Commit-Queue: Liam Brady <lbrady@google.com> Cr-Commit-Position: refs/heads/main@{#1034236}
- Loading branch information
Liam Brady
authored and
Chromium LUCI CQ
committed
Aug 11, 2022
1 parent
1c7d56b
commit b1c43c2
Showing
28 changed files
with
395 additions
and
52 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
23 changes: 23 additions & 0 deletions
23
third_party/blink/public/common/frame/fenced_frame_permissions_policies.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
// Copyright 2022 The Chromium Authors. All rights reserved. | ||
// Use of this source code is governed by a BSD-style license that can be found | ||
// in the LICENSE file. | ||
|
||
#ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_FRAME_FENCED_FRAME_PERMISSIONS_POLICIES_H_ | ||
#define THIRD_PARTY_BLINK_PUBLIC_COMMON_FRAME_FENCED_FRAME_PERMISSIONS_POLICIES_H_ | ||
|
||
namespace blink { | ||
|
||
// In fenced frame trees, these permission policies are expected to be enabled. | ||
// If any feature is disallowed for the fenced frame's origin, then the fenced | ||
// frame will not be allowed to navigate. This is a medium-term solution that | ||
// will be replaced by a system where consumer APIs (like FLEDGE) can select | ||
// which features to require in order to navigate a fenced frame successfully. | ||
// If a fenced frame navigates, each of these features will be allowed as if | ||
// its policy was set to "allow: feature(*)". | ||
constexpr blink::mojom::PermissionsPolicyFeature | ||
kFencedFrameOpaqueAdsDefaultAllowedFeatures[] = { | ||
blink::mojom::PermissionsPolicyFeature::kAttributionReporting}; | ||
|
||
} // namespace blink | ||
|
||
#endif // THIRD_PARTY_BLINK_PUBLIC_COMMON_FRAME_FENCED_FRAME_PERMISSIONS_POLICIES_H_ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.