Skip to content

feat: add ability to skip TLS peer verification #399

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

Merged
merged 24 commits into from
May 13, 2024

Conversation

cwaldren-ld
Copy link
Contributor

@cwaldren-ld cwaldren-ld commented May 8, 2024

This PR adds in a new configuration option allowing users to disable peer verification in TLS handshake.

Additionally, it implements two new contract test capabilities to verify this behavior (tls:verify-peer and tls:skip-verify-peer.)

Because the functionality was added to the sse library and the shared asio requester, both the server and client gain this functionality. Therefore I've added bindings for both along with the contract test implementations.

@cwaldren-ld cwaldren-ld changed the title Cw/verify peer tls contract tests ci: verify peer contract tests May 10, 2024
@cwaldren-ld cwaldren-ld changed the title ci: verify peer contract tests feat: add ability to skip TLS peer verification May 10, 2024
@@ -88,6 +88,10 @@ PollingDataSource::PollingDataSource(
auto const& polling_config = std::get<
config::shared::built::PollingConfig<config::shared::ClientSDK>>(
data_source_config.method);
if (http_properties.Tls().VerifyMode() ==
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Could pass a logger dep to the requester_ and have it do the logging instead. In any case, I just wanted to be sure people see a log message since this is pretty critical. Perhaps it should be at info or warn level.

@cwaldren-ld cwaldren-ld force-pushed the cw/verify-peer-tls-contract-tests branch from d248e8e to 372b2e6 Compare May 10, 2024 21:43
@cwaldren-ld cwaldren-ld force-pushed the cw/verify-peer-tls-contract-tests branch from 372b2e6 to c959748 Compare May 10, 2024 21:48
@cwaldren-ld cwaldren-ld marked this pull request as ready for review May 10, 2024 21:48
@cwaldren-ld cwaldren-ld requested a review from a team May 10, 2024 21:48
@cwaldren-ld cwaldren-ld force-pushed the cw/verify-peer-tls-contract-tests branch from 49432f1 to b5dfa5d Compare May 10, 2024 21:56
@cwaldren-ld cwaldren-ld force-pushed the cw/verify-peer-tls-contract-tests branch from b5dfa5d to 93c3aab Compare May 10, 2024 21:58
@cwaldren-ld cwaldren-ld force-pushed the cw/verify-peer-tls-contract-tests branch from 66bf64b to e3a12dc Compare May 13, 2024 22:04
@cwaldren-ld cwaldren-ld merged commit 0422d35 into main May 13, 2024
20 checks passed
@cwaldren-ld cwaldren-ld deleted the cw/verify-peer-tls-contract-tests branch May 13, 2024 23:01
@github-actions github-actions bot mentioned this pull request May 13, 2024
cwaldren-ld pushed a commit that referenced this pull request May 13, 2024
🤖 I have created a release *beep* *boop*
---


<details><summary>launchdarkly-cpp-client: 3.5.0</summary>

##
[3.5.0](launchdarkly-cpp-client-v3.4.3...launchdarkly-cpp-client-v3.5.0)
(2024-05-13)


### Features

* add ability to skip TLS peer verification
([#399](#399))
([0422d35](0422d35))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * launchdarkly-cpp-internal bumped from 0.6.1 to 0.7.0
    * launchdarkly-cpp-common bumped from 1.5.0 to 1.6.0
    * launchdarkly-cpp-sse-client bumped from 0.3.2 to 0.4.0
</details>

<details><summary>launchdarkly-cpp-common: 1.6.0</summary>

##
[1.6.0](launchdarkly-cpp-common-v1.5.0...launchdarkly-cpp-common-v1.6.0)
(2024-05-13)


### Features

* add ability to skip TLS peer verification
([#399](#399))
([0422d35](0422d35))
</details>

<details><summary>launchdarkly-cpp-internal: 0.7.0</summary>

##
[0.7.0](launchdarkly-cpp-internal-v0.6.1...launchdarkly-cpp-internal-v0.7.0)
(2024-05-13)


### Features

* add ability to skip TLS peer verification
([#399](#399))
([0422d35](0422d35))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * launchdarkly-cpp-common bumped from 1.5.0 to 1.6.0
</details>

<details><summary>launchdarkly-cpp-server: 3.4.0</summary>

##
[3.4.0](launchdarkly-cpp-server-v3.3.6...launchdarkly-cpp-server-v3.4.0)
(2024-05-13)


### Features

* add ability to skip TLS peer verification
([#399](#399))
([0422d35](0422d35))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * launchdarkly-cpp-internal bumped from 0.6.1 to 0.7.0
    * launchdarkly-cpp-common bumped from 1.5.0 to 1.6.0
    * launchdarkly-cpp-sse-client bumped from 0.3.2 to 0.4.0
</details>

<details><summary>launchdarkly-cpp-server-redis-source: 2.1.7</summary>

##
[2.1.7](launchdarkly-cpp-server-redis-source-v2.1.6...launchdarkly-cpp-server-redis-source-v2.1.7)
(2024-05-13)


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * launchdarkly-cpp-server bumped from 3.3.6 to 3.4.0
</details>

<details><summary>launchdarkly-cpp-sse-client: 0.4.0</summary>

##
[0.4.0](launchdarkly-cpp-sse-client-v0.3.2...launchdarkly-cpp-sse-client-v0.4.0)
(2024-05-13)


### Features

* add ability to skip TLS peer verification
([#399](#399))
([0422d35](0422d35))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@github-actions github-actions bot mentioned this pull request May 13, 2024
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.

2 participants