LGTM2

/Daniel

On 2026-03-13 20:24, Mike Taylor wrote:

LGTM1 - thanks for updating the WebSockets part of the spec to call into the Fetch monkey patch, and other general spec and WPT work in the past few weeks.

Good luck with the roll out!

On 3/11/26 5:56 p.m., Chris Thompson wrote:
This has been in DevTrial and enabled at 50% Beta for a while now to try to suss out any compatibility issues. Our planned next step to be to enable by default on trunk (after we get LGTMs) and let this go through the waterfall (targeting M147), with a kill switch available just in case.

On Mon, Mar 9, 2026 at 11:41 AM Alex Russell <[email protected]> wrote:

    Was there an update here on plan to roll this out, other than a
    DevTrial? OT? Fractional rollout to stable over a longer time
    period?

    Best,

    Alex

    On Friday, February 20, 2026 at 9:37:57 AM UTC-8 Hubert Chao wrote:

        On Fri, Feb 20, 2026 at 10:30 AM Mike Taylor
        <[email protected]> wrote:

            On 2/19/26 2:29 p.m., Chromestatus wrote:

            *Contact emails*
            [email protected]

            *Explainer*
            
https://github.com/WICG/local-network-access/blob/main/explainer.md#websockets

            *Specification*
            
https://wicg.github.io/local-network-access/#integration-with-websockets


            *Summary*
            Local Network Access(LNA) restrictions are being
            expanded to include WebSockets. WebSockets connections
            to local address will now start triggering permission
            prompts. All of the current LNA enterprise policies will
            still apply to the LNA WebSockets restrictions
            (LocalNetworkAccessAllowedForUrls,
            LocalNetworkAccessBlockedForUrls, and
            LocalNetworkAccessRestrictionsTemporaryOptOut). More
            information about LNA can be found at
            https://developer.chrome.com/blog/local-network-access

            *Blink component*
            Blink>SecurityFeature>LocalNetworkAccess
            
<https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3ESecurityFeature%3ELocalNetworkAccess%22>

            *Web Feature ID*
            local-network-access
            <https://webstatus.dev/features/local-network-access>

            *Motivation*
            Local WebSockets connections are subject to many of the
            same attacks that the original LNA proposal are designed
            to solve. This would add the same controls that were
            implemented in the original LNA proposal to WebSockets

            *Initial public proposal*
            /No information provided/

            *TAG review*
            /No information provided/

            *TAG review status*
            Pending

            *Risks*


            *Interoperability and Compatibility*
            Interoperability risks: LNA requires a Secure Context to
            make local network requests, but exempts some of these
            local network requests from mixed content checks (if the
            user grants permission). If another browser does not
            implement LNA, these same local network requests might
            be blocked as mixed content, or the site might need to
            serve over HTTPS for Chrome and over HTTP for browsers
            that don't implement LNA (to avoid triggering mixed
            content). Compatibility risks: There are some local
            network requests types that we cannot know ahead of time
            will be going to the local network (e.g., a subresource
            request to http://test.example which then resolves to
            192.168.0.1). These would be blocked as mixed content,
            as mixed content checks happen before hostname
            resolution (i.e., they occur before "Obtain a
            connection" in Fetch). Explicit local IP addresses, and
            `.local` domains are exempted from mixed content checks,
            but we do not have an equivalent to the
            `targetAddressSpace` fetch() option for WebSockets We
            hope that our Dev Trial will help identify compatibility
            issues. The LNA reverse origin trial will provide a
            temporary opt-out for those that are not able to bypass
            the mixed content checks currently
            Do you have an update here? DevTrial isn't the best way
            to assess actual compatibility (because it relies on
            people finding your blog post / blink-dev email). Is it
            not possible to add metrics to understand the potential
            impact


        We have 2 use counters:

        * PrivateNetworkAccessWebSocketConnected - logged when
        there's a site that runs a websocket connection to an IP
        address that is considered local or loopback.
        https://chromestatus.com/metrics/feature/timeline/popularity/4883
        shows this at roughly 0.1% and steady over the last several
        months.

        This # just indicates that a permission prompt will need to
        be shown and does not imply that there will be breakage 
        (assuming the user grants the permission). Cases in which
        there may be breakage would be if the websocket is being
        connected to in an iframe, in a shared worker, or in a
        service worker. It is worth noting here that there has been
        evidence of web sites using WebSocket connection requests as
        fraud/abuse detection
        (https://dl.acm.org/doi/abs/10.1145/3487552.3487857 ; Firefox
        also mentions this in a recent talk at
        
https://fosdem.org/2026/schedule/event/QCSKWL-firefox-local-network-access/)
        which probably inflates the usage numbers.

        * LocalNetworkAccessWebSocketResourceNotKnownPrivate - 
        logged when a site tries to connect to an IP address that is
        considered local or loopback, but would be blocked by mixed
        content checks because we cannot infer from the URL that this
        will be an LNA request. (e.g. they would break and have no
        targetAddressSpace option like we do for fetch()).
        https://chromestatus.com/metrics/feature/timeline/popularity/5660
        shows this at 0.0001 or lower.


        As this is also coming after the initial LNA launch, there is
        a lot of knowledge about LNA out there, and we have had some
        extensive communication with folks on WebSockets, delaying
        the launch of these restrictions several times (see
        https://github.com/WICG/local-network-access/issues/46). In
        addition, there are many more enterprise controls available
        now that were not present with LNA's original launch, so this
        should be even lower risk of breakage.

         /hubert

--
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 [email protected]. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/29e79d06-2922-4b65-9019-e7408637bd55%40chromium.org <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/29e79d06-2922-4b65-9019-e7408637bd55%40chromium.org?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 [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/9865d0da-7c85-43c3-b21b-115e8bb8d47a%40gmail.com.

Reply via email to