Skip to content

Commit 8b1a02f

Browse files
authored
Merge pull request #86 from binford2k/suitability_notice
add suitability notice
2 parents bf4a0f4 + 85a219b commit 8b1a02f

1 file changed

Lines changed: 21 additions & 0 deletions

File tree

README.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,27 @@ and then decrypt it on that node. If you like, you may also paste the ciphertext
4949
into your manifest or Hiera datafiles and then manually invoke the `node_decrypt()`
5050
function as needed.
5151

52+
## Suitability
53+
54+
Please note that `node_encrypt` is ***not a security panacea***. It will encrypt
55+
your secrets in the catalog file on disk using the node's certificate, but the
56+
corresponding private key is also on disk in clear text. This means that if an
57+
attacker gains root level access to your filesystem, then they can likely read
58+
both the encrypted secrets and the key required to decrypt them.
59+
60+
| ⚠️ **Warning:** |
61+
|-----------------|
62+
| *`node_encrypt` will only protect you in cases where an attacker has access to the catalog file, but not to the node's private certificate.* |
63+
64+
Some of the cases protected by `node_encrypt` might include:
65+
66+
* Using the catalog files for certain kinds of [impact analysis](https://dev.to/camptocamp-ops/automated-puppet-impact-analysis-1c1)
67+
* Making catalogs available for troubleshooting with catalog diff
68+
* Integrations that retrieve catalogs from [PuppetDB via API](https://puppet.com/docs/puppetdb/latest/api/query/v4/catalogs.html)
69+
70+
If you have more stringent security requirements, we suggest integrating with a purpose
71+
built secret server. See [docs](https://puppet.com/docs/puppet/latest/integrations_with_secret_stores.html) for more details.
72+
5273

5374
## Usage
5475

0 commit comments

Comments
 (0)