Repository navigation
Merging internal commits for release/9.0 - #69179
Merged
Merged
Conversation
…otnet-efcore build 20260721.9 On relative base path root dotnet-ef , Microsoft.EntityFrameworkCore , Microsoft.EntityFrameworkCore.Design , Microsoft.EntityFrameworkCore.InMemory , Microsoft.EntityFrameworkCore.Relational , Microsoft.EntityFrameworkCore.Sqlite , Microsoft.EntityFrameworkCore.SqlServer , Microsoft.EntityFrameworkCore.Tools From Version 9.0.19 -> To Version 9.0.19
…ng/internal/dotnet-efcore This pull request updates the following dependencies [marker]: <> (Begin:67a6df8f-40a9-4218-839a-e336f1bd1d79) ## From https://dev.azure.com/dnceng/internal/_git/dotnet-efcore - **Subscription**: [67a6df8f-40a9-4218-839a-e336f1bd1d79](https://maestro.dot.net/subscriptions?search=67a6df8f-40a9-4218-839a-e336f1bd1d79) - **Build**: [20260721.9](https://dev.azure.com/dnceng/internal/_build/results?buildId=3028216) ([323815](https://maestro.dot.net/channel/5128/azdo:dnceng:internal:dotnet-efcore/build/323815)) - **Date Produced**: July 21, 2026 9:11:14 PM UTC - **Commit**: [24de17d952f5cbbe4eaa872c02ad4b4346788845](https://dev.azure.com/dnceng/internal/_git/dotnet-efcore?_a=history&version=GC24de17d952f5cbbe4eaa872c02ad4b4346788845) - **Branch**: [refs/heads/internal/release/9.0](https://dev.azure.com/dnceng/internal/_git/dotnet-efcore?version=GBrefs/heads/internal/release/9.0) [DependencyUpdate]: <> (Begin) - **Dependency Updates**: - From [9.0.19 to 9.0.19][1] - dotnet-ef - Microsoft.EntityFrameworkCore - Microsoft.EntityFrameworkCore.Design - Microsoft.EntityFrameworkCore.InMemory - Microsoft.EntityFrameworkCore.Relational - Microsoft.EntityFrameworkCore.Sqlite - Microsoft.EntityFrameworkCore.SqlServer - Microsoft.EntityFrameworkCore.Tools [1]: https://dev.azure.com/dnceng/internal/_git/dotnet-efcore/branches?baseVersion=GCd45c6483aa13a1c4ecc6e9da427ce6826ffb45a5&targetVersion=GC24de17d952f5cbbe4eaa872c02ad4b4346788845&_a=files [DependencyUpdate]: <> (End) [marker]: <> (End:67a6df8f-40a9-4218-839a-e336f1bd1d79)
…and cap cache of pathDescriptors Fixing 2 problems: 1) A query-string parameter written with a mixed or shortened field-name spelling (e.g. `?tenantScope.tenant_id=…` or a parent like `?timestamp_value=…`) could bypass the existing name check and overwrite a value already bound from the URL path. This change compares the resolved field identities instead of raw name strings, so query parameters can no longer clobber route-bound fields regardless of how they're spelled. 2) A transcoded method whose request has a self-referential message field allows an unbounded set of valid dotted paths, so the per-endpoint path descriptor cache could grow without limit from repeated requests. Cap the cache size (default 1000, overridable via AppContext) to prevent it.
… IIS out-of-process (MaxRequestBodySize) ## Description On IIS out-of-process hosting, IISMiddleware cleared the request body size limit (MaxRequestBodySize = null). RequestDecompressionMiddleware consumed that as an unbounded decompressed-body budget, allowing an anonymous decompression-bomb DoS (temporary, with amplification). ## Fix Gate the null-assignment behind the Microsoft.AspNetCore.Server.IISIntegration.ClearMaxRequestBodySize AppContext switch (default off). By default the server request body size limit is preserved; apps needing the legacy defer-to-IIS behavior can opt in. ## Customer Impact Prevents unbounded request-body decompression on IIS out-of-process. Opt-out switch provided for compatibility. ## Regression No. Long-standing behavior since 2.0; exposed via RequestDecompression (7.0+). ## Risk Low. Minimal, gated change with opt-out. Product change validated identically on main; unit tests added. Local full build blocked by internal feed provisioning; relying on PR CI. ## Testing Unit tests: default preserves limit, switch clears it, read-only untouched, absent feature. Verified end-to-end on main via real IIS Express out-of-process deploy. ---- #### AI description (iteration 1) #### PR Classification Bug fix to address unbounded request decompression vulnerability in IIS out-of-process by changing the default behavior of MaxRequestBodySize handling. #### PR Summary This PR fixes a security issue where MaxRequestBodySize was being cleared by default in IIS out-of-process mode, allowing unbounded request decompression. The fix changes the default behavior to preserve the server's configured MaxRequestBodySize limit while providing an opt-in switch to restore the legacy behavior. - `IISMiddleware.cs`: Changed default behavior to no longer clear MaxRequestBodySize; added `ClearMaxRequestBodySizeSwitch` AppContext switch to enable legacy behavior of clearing the limit - `IISMiddlewareTests.cs`: Added comprehensive test coverage for MaxRequestBodySize handling including default behavior, opt-in switch behavior, read-only feature handling, and missing feature scenarios <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
Updates identity redirect handling. ---- #### AI description (iteration 1) #### PR Classification Security bug fix to prevent open redirect vulnerabilities in identity redirect handling. #### PR Summary This pull request strengthens the open redirect protection in the Blazor Web template's identity redirect manager by adding an additional validation check for protocol-relative URLs. - `IdentityRedirectManager.cs`: Added validation to reject URIs starting with `//` (protocol-relative URLs) to prevent potential open redirect attacks, in addition to the existing well-formed URI check. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
Restricts parameter updates and removal to roots created by JavaScript. ---- #### AI description (iteration 1) #### PR Classification Security enhancement to restrict JavaScript root component operations by validating component ownership. #### PR Summary This pull request adds validation to ensure that JavaScript can only modify or remove root components that it originally created, preventing unauthorized operations on server-rendered components. - `JSComponentInterop.cs`: Added `_jsComponentIds` HashSet to track JS-added components and `EnsureValidJSComponentId()` validation method that throws `InvalidOperationException` for unauthorized operations in `SetRootComponentParameters()` and `RemoveRootComponent()`. - `JSComponentInteropTest.cs`: Added comprehensive unit tests verifying that operations on server-rendered components are rejected while JS-added components remain accessible. - `JSRootComponentsTest.cs` and test assets: Added E2E test case and supporting JavaScript helpers to verify parameters cannot be updated on non-JS root components, with UI elements to trigger and display validation errors. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
…otnet-efcore build 20260811.8 On relative base path root dotnet-ef , Microsoft.EntityFrameworkCore , Microsoft.EntityFrameworkCore.Design , Microsoft.EntityFrameworkCore.InMemory , Microsoft.EntityFrameworkCore.Relational , Microsoft.EntityFrameworkCore.Sqlite , Microsoft.EntityFrameworkCore.SqlServer , Microsoft.EntityFrameworkCore.Tools From Version 9.0.19 -> To Version 9.0.20
…otnet-runtime build 20260810.19 On relative base path root Microsoft.Bcl.AsyncInterfaces , Microsoft.Bcl.TimeProvider , Microsoft.Extensions.Caching.Abstractions , Microsoft.Extensions.Caching.Memory , Microsoft.Extensions.Configuration , Microsoft.Extensions.Configuration.Abstractions , Microsoft.Extensions.Configuration.Binder , Microsoft.Extensions.Configuration.CommandLine , Microsoft.Extensions.Configuration.EnvironmentVariables , Microsoft.Extensions.Configuration.FileExtensions , Microsoft.Extensions.Configuration.Ini , Microsoft.Extensions.Configuration.Json , Microsoft.Extensions.Configuration.UserSecrets , Microsoft.Extensions.Configuration.Xml , Microsoft.Extensions.DependencyInjection , Microsoft.Extensions.DependencyInjection.Abstractions , Microsoft.Extensions.DependencyModel , Microsoft.Extensions.Diagnostics , Microsoft.Extensions.Diagnostics.Abstractions , Microsoft.Extensions.FileProviders.Abstractions , Microsoft.Extensions.FileProviders.Composite , Microsoft.Extensions.FileProviders.Physical , Microsoft.Extensions.FileSystemGlobbing , Microsoft.Extensions.Hosting , Microsoft.Extensions.Hosting.Abstractions , Microsoft.Extensions.Http , Microsoft.Extensions.Logging , Microsoft.Extensions.Logging.Abstractions , Microsoft.Extensions.Logging.Configuration , Microsoft.Extensions.Logging.Console , Microsoft.Extensions.Logging.Debug , Microsoft.Extensions.Logging.EventLog , Microsoft.Extensions.Logging.EventSource , Microsoft.Extensions.Logging.TraceSource , Microsoft.Extensions.Options , Microsoft.Extensions.Options.ConfigurationExtensions , Microsoft.Extensions.Options.DataAnnotations , Microsoft.Extensions.Primitives , Microsoft.NET.Runtime.MonoAOTCompiler.Task , Microsoft.NET.Runtime.WebAssembly.Sdk , Microsoft.NETCore.App.Ref , Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm , Microsoft.NETCore.App.Runtime.win-x64 , System.Collections.Immutable , System.Composition , System.Configuration.ConfigurationManager , System.Diagnostics.DiagnosticSource , System.Diagnostics.EventLog , System.Diagnostics.PerformanceCounter , System.DirectoryServices.Protocols , System.IO.Hashing , System.IO.Pipelines , System.Net.Http.Json , System.Net.Http.WinHttpHandler , System.Net.ServerSentEvents , System.Reflection.Metadata , System.Resources.Extensions , System.Runtime.Caching , System.Security.Cryptography.Pkcs , System.Security.Cryptography.Xml , System.Security.Permissions , System.ServiceProcess.ServiceController , System.Text.Encodings.Web , System.Text.Json , System.Threading.AccessControl , System.Threading.Channels , System.Threading.RateLimiting From Version 9.0.19 -> To Version 9.0.20 Microsoft.Extensions.HostFactoryResolver.Sources , Microsoft.Internal.Runtime.AspNetCore.Transport , Microsoft.NETCore.BrowserDebugHost.Transport , Microsoft.NETCore.Platforms , Microsoft.SourceBuild.Intermediate.runtime.linux-x64 From Version 9.0.19-servicing.26367.24 -> To Version 9.0.20-servicing.26410.19
…otnet-runtime build 20260813.15 On relative base path root Microsoft.Bcl.AsyncInterfaces , Microsoft.Bcl.TimeProvider , Microsoft.Extensions.Caching.Abstractions , Microsoft.Extensions.Caching.Memory , Microsoft.Extensions.Configuration , Microsoft.Extensions.Configuration.Abstractions , Microsoft.Extensions.Configuration.Binder , Microsoft.Extensions.Configuration.CommandLine , Microsoft.Extensions.Configuration.EnvironmentVariables , Microsoft.Extensions.Configuration.FileExtensions , Microsoft.Extensions.Configuration.Ini , Microsoft.Extensions.Configuration.Json , Microsoft.Extensions.Configuration.UserSecrets , Microsoft.Extensions.Configuration.Xml , Microsoft.Extensions.DependencyInjection , Microsoft.Extensions.DependencyInjection.Abstractions , Microsoft.Extensions.DependencyModel , Microsoft.Extensions.Diagnostics , Microsoft.Extensions.Diagnostics.Abstractions , Microsoft.Extensions.FileProviders.Abstractions , Microsoft.Extensions.FileProviders.Composite , Microsoft.Extensions.FileProviders.Physical , Microsoft.Extensions.FileSystemGlobbing , Microsoft.Extensions.Hosting , Microsoft.Extensions.Hosting.Abstractions , Microsoft.Extensions.Http , Microsoft.Extensions.Logging , Microsoft.Extensions.Logging.Abstractions , Microsoft.Extensions.Logging.Configuration , Microsoft.Extensions.Logging.Console , Microsoft.Extensions.Logging.Debug , Microsoft.Extensions.Logging.EventLog , Microsoft.Extensions.Logging.EventSource , Microsoft.Extensions.Logging.TraceSource , Microsoft.Extensions.Options , Microsoft.Extensions.Options.ConfigurationExtensions , Microsoft.Extensions.Options.DataAnnotations , Microsoft.Extensions.Primitives , Microsoft.NET.Runtime.MonoAOTCompiler.Task , Microsoft.NET.Runtime.WebAssembly.Sdk , Microsoft.NETCore.App.Ref , Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm , Microsoft.NETCore.App.Runtime.win-x64 , System.Collections.Immutable , System.Composition , System.Configuration.ConfigurationManager , System.Diagnostics.DiagnosticSource , System.Diagnostics.EventLog , System.Diagnostics.PerformanceCounter , System.DirectoryServices.Protocols , System.IO.Hashing , System.IO.Pipelines , System.Net.Http.Json , System.Net.Http.WinHttpHandler , System.Net.ServerSentEvents , System.Reflection.Metadata , System.Resources.Extensions , System.Runtime.Caching , System.Security.Cryptography.Pkcs , System.Security.Cryptography.Xml , System.Security.Permissions , System.ServiceProcess.ServiceController , System.Text.Encodings.Web , System.Text.Json , System.Threading.AccessControl , System.Threading.Channels , System.Threading.RateLimiting From Version 9.0.19 -> To Version 9.0.20 Microsoft.Extensions.HostFactoryResolver.Sources , Microsoft.Internal.Runtime.AspNetCore.Transport , Microsoft.NETCore.BrowserDebugHost.Transport , Microsoft.NETCore.Platforms , Microsoft.SourceBuild.Intermediate.runtime.linux-x64 From Version 9.0.19-servicing.26367.24 -> To Version 9.0.20-servicing.26413.15
…ng/internal/dotnet-efcore, dnceng/internal/dotnet-runtime This pull request updates the following dependencies [marker]: <> (Begin:67a6df8f-40a9-4218-839a-e336f1bd1d79) ## From https://dev.azure.com/dnceng/internal/_git/dotnet-efcore - **Subscription**: [67a6df8f-40a9-4218-839a-e336f1bd1d79](https://maestro.dot.net/subscriptions?search=67a6df8f-40a9-4218-839a-e336f1bd1d79) - **Build**: [20260811.8](https://dev.azure.com/dnceng/internal/_build/results?buildId=3045304) ([326676](https://maestro.dot.net/channel/5128/azdo:dnceng:internal:dotnet-efcore/build/326676)) - **Date Produced**: August 11, 2026 11:45:25 PM UTC - **Commit**: [06b2df69ff6600aedde09f61f4d79d702d794195](https://dev.azure.com/dnceng/internal/_git/dotnet-efcore?_a=history&version=GC06b2df69ff6600aedde09f61f4d79d702d794195) - **Branch**: [refs/heads/internal/release/9.0](https://dev.azure.com/dnceng/internal/_git/dotnet-efcore?version=GBrefs/heads/internal/release/9.0) [DependencyUpdate]: <> (Begin) - **Dependency Updates**: - From [9.0.19 to 9.0.20][1] - dotnet-ef - Microsoft.EntityFrameworkCore - Microsoft.EntityFrameworkCore.Design - Microsoft.EntityFrameworkCore.InMemory - Microsoft.EntityFrameworkCore.Relational - Microsoft.EntityFrameworkCore.Sqlite - Microsoft.EntityFrameworkCore.SqlServer - Microsoft.EntityFrameworkCore.Tools [1]: https://dev.azure.com/dnceng/internal/_git/dotnet-efcore/branches?baseVersion=GC24de17d952f5cbbe4eaa872c02ad4b4346788845&targetVersion=GC06b2df69ff6600aedde09f61f4d79d702d794195&_a=files [DependencyUpdate]: <> (End) [marker]: <> (End:67a6df8f-40a9-4218-839a-e336f1bd1d79) [marker]: <> (Begin:ff8719c2-a1bf-4aef-ad09-b38561e103bc) ## From https://dev.azure.com/dnceng/internal/_git/dotnet-runtime - **Subscription**: [ff8719c2-a1bf-4aef-ad09-b38561e103bc](https://maestro.dot.net/subscriptions?search=ff8719c2-a1bf-4aef-ad09-b38561e103bc) - **Build**: [20260810.19](https://dev.azure.com/dnceng/internal/_build/results?buildId=3043881) ([326772](https://maestro.dot.net/channel/5128/azdo:dnceng:internal:dotnet-runtime/build/326772)) - **Date Produced**: August 12, 2026 1:25:18 PM UTC - **Commit**: [845dbebc7cfeb77098f2aa889f18753d0d5869b8](https://dev.azure.com/dnceng/internal/_git/dotnet-runtime?_a=history&version=GC845dbebc7cfeb77098f2aa889f18753d0d5869b8) - **Branch**: [refs/heads/internal/release/9.0](https://dev.azure.com/dnceng/internal/_git/dotnet-runtime?version=GBrefs/heads/internal/release/9.0) [DependencyUpdate]: <> (Begin) - **Dependency Updates**: - From [9.0.19 to 9.0.20][2] - Microsoft.Bcl.AsyncInterfaces - Microsoft.Bcl.TimeProvider - Microsoft.Extensions.Caching.Abstractions - Microsoft.Extensions.Caching.Memory - Microsoft.Extensions.Configuration - Microsoft.Extensions.Configuration.Abstractions - Microsoft.Extensions.Configuration.Binder - Microsoft.Extensions.Configuration.CommandLine - Microsoft.Extensions.Configuration.EnvironmentVariables - Microsoft.Extensions.Configuration.FileExtensio...
…otnet-efcore build 20260813.6 On relative base path root dotnet-ef , Microsoft.EntityFrameworkCore , Microsoft.EntityFrameworkCore.Design , Microsoft.EntityFrameworkCore.InMemory , Microsoft.EntityFrameworkCore.Relational , Microsoft.EntityFrameworkCore.Sqlite , Microsoft.EntityFrameworkCore.SqlServer , Microsoft.EntityFrameworkCore.Tools From Version 9.0.20 -> To Version 9.0.20
…ng/internal/dotnet-efcore This pull request updates the following dependencies [marker]: <> (Begin:67a6df8f-40a9-4218-839a-e336f1bd1d79) ## From https://dev.azure.com/dnceng/internal/_git/dotnet-efcore - **Subscription**: [67a6df8f-40a9-4218-839a-e336f1bd1d79](https://maestro.dot.net/subscriptions?search=67a6df8f-40a9-4218-839a-e336f1bd1d79) - **Build**: [20260813.6](https://dev.azure.com/dnceng/internal/_build/results?buildId=3047628) ([327114](https://maestro.dot.net/channel/5128/azdo:dnceng:internal:dotnet-efcore/build/327114)) - **Date Produced**: August 14, 2026 1:47:37 AM UTC - **Commit**: [e3050de15c005dfd3223da1475572044b72a6758](https://dev.azure.com/dnceng/internal/_git/dotnet-efcore?_a=history&version=GCe3050de15c005dfd3223da1475572044b72a6758) - **Branch**: [refs/heads/internal/release/9.0](https://dev.azure.com/dnceng/internal/_git/dotnet-efcore?version=GBrefs/heads/internal/release/9.0) [DependencyUpdate]: <> (Begin) - **Dependency Updates**: - From [9.0.20 to 9.0.20][1] - dotnet-ef - Microsoft.EntityFrameworkCore - Microsoft.EntityFrameworkCore.Design - Microsoft.EntityFrameworkCore.InMemory - Microsoft.EntityFrameworkCore.Relational - Microsoft.EntityFrameworkCore.Sqlite - Microsoft.EntityFrameworkCore.SqlServer - Microsoft.EntityFrameworkCore.Tools [1]: https://dev.azure.com/dnceng/internal/_git/dotnet-efcore/branches?baseVersion=GC06b2df69ff6600aedde09f61f4d79d702d794195&targetVersion=GCe3050de15c005dfd3223da1475572044b72a6758&_a=files [DependencyUpdate]: <> (End) [marker]: <> (End:67a6df8f-40a9-4218-839a-e336f1bd1d79)
…-merge-9.0-2026-09-09-1723
dotnet-bot
requested review from
a team,
BrennanConroy,
JamesNK,
dotnet-maestro-bot,
halter73 and
wtgodbe
as code owners
September 9, 2026 17:23
Contributor
|
Hi @dotnet-bot. If this is not a tell-mode PR, please make sure to follow the instructions laid out in the servicing process document. |
3 tasks
wtgodbe
approved these changes
Sep 9, 2026
This was referenced Oct 13, 2026
This was referenced Oct 14, 2026
Merged
Merged
Open
Merged
Merged
Open
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.