You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Enabling a new Chromium flag IsolateSandboxedIframes by default, which causes AddWebResourceRequestedFilter API to no longer be able to intercept requests from sandboxed iframes if no request source kinds are defined.
Who would be affected?
Any apps using AddWebResoucreRequestedFilter API (.NET / WinRT / Win32) to intercept requests made from sandboxed iframes without the allow-same-origin attribute.
Apps are not affected if they are already defining RequestSourceKinds using the newer APIs ( .NET / WinRT / Win32)
What’s the change, and why?
IsolateSandboxedIframes feature will be enabled by default, latest by major version 132’s runtime, which means that documents with sandboxed iframes without the allow-same-origin attribute that previously remained in the same process as their parent or opener, even with an opaque origin, will now be moved into a separate process.
This Chromium change enhances security and process isolation by ensuring that sandboxed iframes are treated as separate processes. This helps to mitigate potential security risks associated with same-process execution of sandboxed content.
However, WebView2's AddWebResourceRequestedFilter API by default doesn't intercept requests from out-of-process iframes (OOPIFs), so it will no longer intercept these.
What should you do?
If your app uses the AddWebResoucreRequestedFilter API (.NET / WinRT / Win32) API to intercept resource requests from sandboxed iframes, you should include define RequestSourceKinds using the newer APIs( .NET / WinRT / Win32) to intercept out-of-process iframes.
This parameter allows you to specify the source of the resource requests, ensuring that your app can also intercept requests made by OOPIFs.
By adding RequestSourceKinds ( .NET / WinRT / Win32), you ensure that your app can intercept requests made by out-of-process iframes. This is crucial because, with IsolateSandboxedIframes enabled, sandboxed iframes will run in separate processes, and without this parameter, your app would not be able to intercept their requests.
Please transition to the new API to take full advantage of the API to intercept all the necessary requests and to avoid any regression due to any changes in the chromium process models for iframes. Doing so will ensure compatibility with WebView2 runtime 132 onwards to take full advantage of the API that intercepts all the requests.
How can I verify if I have addressed the issue?
You can verify by running your WebView using AdditionalBrowserArguments ( .NET / WinRT / Win32) API to enable the feature with the flag: IsolateSandboxedIframes. You have addressed the issue, if you are able to intercept resources from sandboxed iframes
What happens if I am not able to make the API change by 132?
If you see regressions when Sandboxed iFrames is enabled in 132, and you were not able to make the change to your app to adopt the new API, you can use this temporary WV2 flag msEdgeWebViewApplyWebResourceRequestedFilterForOOPIFs to enable. When enabled, the older WebResourceRequested will fire for OOPIFs as well.
The text was updated successfully, but these errors were encountered:
Enabling a new Chromium flag IsolateSandboxedIframes by default, which causes
AddWebResourceRequestedFilter
API to no longer be able to intercept requests from sandboxed iframes if no request source kinds are defined.Who would be affected?
Any apps using
AddWebResoucreRequestedFilter
API (.NET / WinRT / Win32) to intercept requests made from sandboxed iframes without the allow-same-origin attribute.Apps are not affected if they are already defining
RequestSourceKinds
using the newer APIs ( .NET / WinRT / Win32)What’s the change, and why?
IsolateSandboxedIframes feature will be enabled by default, latest by major version 132’s runtime, which means that documents with sandboxed iframes without the allow-same-origin attribute that previously remained in the same process as their parent or opener, even with an opaque origin, will now be moved into a separate process.
This Chromium change enhances security and process isolation by ensuring that sandboxed iframes are treated as separate processes. This helps to mitigate potential security risks associated with same-process execution of sandboxed content.
However, WebView2's
AddWebResourceRequestedFilter
API by default doesn't intercept requests from out-of-process iframes (OOPIFs), so it will no longer intercept these.What should you do?
If your app uses the
AddWebResoucreRequestedFilter
API (.NET / WinRT / Win32) API to intercept resource requests from sandboxed iframes, you should include defineRequestSourceKinds
using the newer APIs( .NET / WinRT / Win32) to intercept out-of-process iframes.This parameter allows you to specify the source of the resource requests, ensuring that your app can also intercept requests made by OOPIFs.
Sample code:
C#
C++
By adding
RequestSourceKinds
( .NET / WinRT / Win32), you ensure that your app can intercept requests made by out-of-process iframes. This is crucial because, with IsolateSandboxedIframes enabled, sandboxed iframes will run in separate processes, and without this parameter, your app would not be able to intercept their requests.Please transition to the new API to take full advantage of the API to intercept all the necessary requests and to avoid any regression due to any changes in the chromium process models for iframes. Doing so will ensure compatibility with WebView2 runtime 132 onwards to take full advantage of the API that intercepts all the requests.
How can I verify if I have addressed the issue?
You can verify by running your WebView using
AdditionalBrowserArguments
( .NET / WinRT / Win32) API to enable the feature with the flag: IsolateSandboxedIframes. You have addressed the issue, if you are able to intercept resources from sandboxed iframesWhat happens if I am not able to make the API change by 132?
If you see regressions when Sandboxed iFrames is enabled in 132, and you were not able to make the change to your app to adopt the new API, you can use this temporary WV2 flag
msEdgeWebViewApplyWebResourceRequestedFilterForOOPIFs
to enable. When enabled, the olderWebResourceRequested
will fire for OOPIFs as well.The text was updated successfully, but these errors were encountered: