Skip to content
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

grpc-js-xds: Implement and enable security interop tests #2909

Merged
merged 28 commits into from
Feb 27, 2025

Conversation

murgatroid99
Copy link
Member

@murgatroid99 murgatroid99 commented Feb 27, 2025

This change also includes a variety of fixes to make those tests pass:

  • Fix parsing of SAN entries to correctly handle colons in names.

  • Handle unset CommonTlsContext.validation_context_type.

  • Handle unset filter_chain_match.

  • Add Server protected methods experimentalRegisterListenerToChannelz, experimentalUnregisterListenerFromChannelz, and experimentalCreateConnectionInjectorWithChannelzRef.

  • Modify ServerCredentials to separate options that are used once on Http2Server construction from options that can be updated such as by a certificate provider.

  • Make transport and channel credentials connection establishment code handle and report more connection errors.

  • Wait for credentials information to be loaded from certificate providers before starting to connect, to avoid a time gap between creating a TCP connection and starting the TLS handshake.

  • Fix IPv6-mapped IPv4 address parsing in channelz, and represent them as IPv4 addresses.

  • Add error handling and logging for tls.createSecureContext.

  • grpc/node/master/psm-security

@murgatroid99 murgatroid99 merged commit 5eded95 into grpc:master Feb 27, 2025
8 of 10 checks passed
murgatroid99 added a commit to grpc/psm-interop that referenced this pull request Feb 27, 2025
This requires the test implementation in
grpc/grpc-node#2909 to work. Test run:

- [x]
[grpc/node/master/psm-security](https://source.cloud.google.com/results/invocations/369e192d-9c64-4475-b236-55ae6155410b)
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant