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

CORE-3168 support p12 #21313

Open
wants to merge 6 commits into
base: dev
Choose a base branch
from

Conversation

michael-redpanda
Copy link
Contributor

Adds support for using PKCS#12 files in our TLS node config.

Backports Required

  • none - not a bug fix
  • none - this is a backport
  • none - issue does not exist in previous branches
  • none - papercut/not impactful enough to backport
  • v24.1.x
  • v23.3.x
  • v23.2.x

Release Notes

Features

  • Added support for using PKCS#12 files for TLS services
@michael-redpanda michael-redpanda requested a review from a team July 9, 2024 20:28
@michael-redpanda michael-redpanda self-assigned this Jul 9, 2024
@michael-redpanda michael-redpanda requested review from aanthony-rp, BenPope and oleiman and removed request for a team July 9, 2024 20:28
Copy link
Member

@oleiman oleiman left a comment

Choose a reason for hiding this comment

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

lgtm. several comments, all nitpicks

src/v/config/tests/tls_config_convert_test.cc Outdated Show resolved Hide resolved
src/v/config/tls_config.cc Outdated Show resolved Hide resolved
src/v/config/tls_config.cc Outdated Show resolved Hide resolved
src/v/config/tls_config.h Outdated Show resolved Hide resolved
tests/rptest/services/tls.py Outdated Show resolved Hide resolved
tests/rptest/services/tls.py Outdated Show resolved Hide resolved
tests/rptest/tests/pkcs12_test.py Outdated Show resolved Hide resolved
aanthony-rp
aanthony-rp previously approved these changes Jul 10, 2024
Copy link
Contributor

@aanthony-rp aanthony-rp left a comment

Choose a reason for hiding this comment

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

This adds support for P12 password files, and also seems to extend the implementation to accept multiple key/cert file pairs instead of just a single pair. The test coverage looks good and I don't see any controversial points.

@michael-redpanda
Copy link
Contributor Author

Force push 4818ef6:

  • Updates from PR comments
oleiman
oleiman previously approved these changes Jul 10, 2024
Copy link
Member

@oleiman oleiman left a comment

Choose a reason for hiding this comment

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

👍

src/v/config/tls_config.cc Outdated Show resolved Hide resolved
aanthony-rp
aanthony-rp previously approved these changes Jul 12, 2024
Copy link
Contributor

@aanthony-rp aanthony-rp left a comment

Choose a reason for hiding this comment

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

I'll trust Oren and Ben to approve the changes they requested earlier.

@michael-redpanda
Copy link
Contributor Author

Force push 12ea872:

  • Updates from PR commet
PKCS#12 files (or PFX files) can be used to hold various cryptographic
keys and certificates in a secure way.  These files are encrypted using
a user provided password and allows for secure transmission of keys and
certs from an issuer to an endpoint.  This commit allows for users of
Redpanda to use a P12 file (with a supplied password for decryption)
instead of a plain-text key and cert when setting up TLS configurations.

Signed-off-by: Michael Boquard <michael@redpanda.com>
Signed-off-by: Michael Boquard <michael@redpanda.com>
Signed-off-by: Michael Boquard <michael@redpanda.com>
Signed-off-by: Michael Boquard <michael@redpanda.com>
Signed-off-by: Michael Boquard <michael@redpanda.com>
Added PKCS#12 file smoke test

Signed-off-by: Michael Boquard <michael@redpanda.com>
@michael-redpanda
Copy link
Contributor Author

Force push 90d4bdb:

  • One more nit fix
Copy link
Contributor

@aanthony-rp aanthony-rp left a comment

Choose a reason for hiding this comment

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

lgtm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
5 participants