-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
QuicListener Not Including Intermediary Certificates Without Explicit ServerCertificateContext #100530
Comments
Tagging subscribers to this area: @dotnet/ncl, @bartonjs, @vcsjones |
I think it's because we don't explicitly pass the intermediates to MsQuic runtime/src/libraries/System.Net.Quic/src/System/Net/Quic/Internal/MsQuicConfiguration.cs Lines 97 to 110 in e12e2fa
In SslStream, we build the SslStreamCertificateContext under the covers so we manage to find the intermediates, we should do that in Quic as well. Note that using SslStreamCertificateContext is the recommended way to pass certificates in .NET 8+ because it avoids the need to build the X509 chain for each connection separately for the same certificate. |
When using a certificate that contains an intermediary present in the system store, a Quic server doesn't include the intermediary in the TLS handshake.
You have to manually set ServerCertificateContext in the SslServerAuthenticationOptions pass to the
QuicListener
.With
SslStream
if the intermediary is present in the system store, it is also send without need to explicitly setServerCertificateContext
.That is with Ubuntu 22.04, dotnet 8.0.3
Is this expected? It would be better if they work the same way as they are configured using the same
SslServerAuthenticationOptions
.The text was updated successfully, but these errors were encountered: