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

Ku 510/vault kv/encryption at rest #342

Merged
merged 10 commits into from
May 30, 2024
Merged

Conversation

addyess
Copy link
Member

@addyess addyess commented Mar 20, 2024

Allows the control-plane charm to relate to vault over the vault-kv relation. This unlocks an encryption-at-rest using vault-kv to store the encryption key used to encrypt secrets in etcd

This PR creates two new libraries from existing charmhelpers/reactive based layers

There's also quite a bit of code lift from charmhelpers as well (see fstab.py)

Those libraries could VERY likely be externalized and pip imported -- but they're here in this draft PR in order to accelerate producing the feature.

@addyess addyess marked this pull request as ready for review May 4, 2024 03:23
src/encryption/vault_kv.py Show resolved Hide resolved
src/encryption/vault_kv.py Outdated Show resolved Hide resolved
src/encryption/vault_kv.py Outdated Show resolved Hide resolved
src/encryption/vaultlocker.py Outdated Show resolved Hide resolved
Copy link
Member

@mateoflorido mateoflorido left a comment

Choose a reason for hiding this comment

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

Nice port, thanks @addyess!

requirements.txt Outdated
charm-lib-kubernetes-snaps @ git+https://github.com/charmed-kubernetes/charm-lib-kubernetes-snaps@main
charm-lib-kubernetes-snaps @ git+https://github.com/charmed-kubernetes/charm-lib-kubernetes-snaps@KU-510/vault-kv/encryption-at-rest
Copy link
Member Author

Choose a reason for hiding this comment

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

Copy link
Member Author

Choose a reason for hiding this comment

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

Will also need this library backported

@addyess addyess force-pushed the KU-510/vault-kv/encryption-at-rest branch from 9386f4d to 7806297 Compare May 29, 2024 21:15
Copy link
Member

@kwmonroe kwmonroe left a comment

Choose a reason for hiding this comment

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

this is certainly a big one, but the vault-kv/locker functionality feels right given our want for enc-at-rest for k-c-p. nice job bringing this in.

@addyess addyess merged commit 6eae259 into main May 30, 2024
7 checks passed
@addyess addyess deleted the KU-510/vault-kv/encryption-at-rest branch May 30, 2024 02:15
addyess added a commit that referenced this pull request May 31, 2024
* Vendor ops version of layer-vault-kv into the charm
* Completed unit tests of vault-kv library
* begin testing of vaultlocker layer replacement
* Begin testing of reactive upgrade
* Completed unit tests and docs to support vaultlocker encryption
* Passing jenkins validation testing
* woke ignore operator libs
* Improve testing, improved security, validated upgrades
* Address review comments
* pin hvac requirements
addyess added a commit that referenced this pull request May 31, 2024
* Vendor ops version of layer-vault-kv into the charm
* Completed unit tests of vault-kv library
* begin testing of vaultlocker layer replacement
* Begin testing of reactive upgrade
* Completed unit tests and docs to support vaultlocker encryption
* Passing jenkins validation testing
* woke ignore operator libs
* Improve testing, improved security, validated upgrades
* Address review comments
* pin hvac requirements
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
3 participants