Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP]Feat: support TLS configuration in broker/client #166

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

678098
Copy link
Collaborator

@678098 678098 commented Dec 7, 2023

No description provided.

@678098 678098 requested a review from a team as a code owner December 7, 2023 17:53
Use the new NTF based TCP transport library instead of
the existing one based on BTE
tls.................:
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Possible to rename this flag to useTls similar to useNtf.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah useTls is probably better. Also, should this field go inside TlsConfig complex type?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah useTls is probably better. Also, should this field go inside TlsConfig complex type?

It's a good question.
We have several possibilities.

  1. Current structure, useTls and tlsConfig settings are placed in different paths.
  2. useTls is a part of tlsConfig.
  3. useTls is not a part of tlsConfig, but they both are placed near each other in TcpInterfaceConfig.
  4. Implicit approach: no useTls flag, optional tlsConfig presence is a marker that TLS should be used.

2 and 3 are good for me.

Comment on lines 293 to 300
<sequence>
<element name='certificateAuthority' type='string'/>
<element name='certificate' type='string'/>
<element name='key' type='string'/>
</sequence>
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should give ourselves some room to specify the exact protocol, in case we want to specific exact versions of the TLS protocol that we want

Copy link
Contributor

@quarter-note quarter-note left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some comments.

@@ -97,6 +98,7 @@
<element name='plugins' type='tns:Plugins'/>
<element name='messagePropertiesV2' type='tns:MessagePropertiesV2'/>
<element name='configureStream' type='boolean' default='false'/>
<element name="tls" type='tns:TlsConfig' minOccurs='0'/>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May want to call it tlsConfig or tlsCfg.

More importantly, should this field go inside networkInterfaces or tcpInterface, since it is transport-related?

Use the new NTF based TCP transport library instead of
the existing one based on BTE
tls.................:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah useTls is probably better. Also, should this field go inside TlsConfig complex type?

Signed-off-by: Evgeny Malygin <emalygin@bloomberg.net>
Signed-off-by: Evgeny Malygin <emalygin@bloomberg.net>
A path to the FILE, containing the private key that the broker uses
to read the certificate.
version..............:
Protocol version.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would be good to give an example of what's expected here e.g. "TLS1.2"
from the point of view of the server you might want to allow a set of versions or at least version 1.2 or greater.
It's good to spec out exactly what this parameter means

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@willhoy we plan to use a list of versions indeed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants