4 ms·
I'm a Platform Engineer but I've never actually understood (or really looked into) what they mean by encryption in this context. I checked that link and they c
by c7DJTLrn 4y ago
I'm a Platform Engineer but I've never actually understood (or really looked into) what they mean by encryption in this context.
I checked that link and they call it "server-side encryption" -- do they mean encryption at rest? If so, it seems terrible that they would allow data to live unencrypted on their non-volatile storage, why do they even give the customer that option?
Other than for very specific kinds of customers that want to supply their own encryption keys, why should it even be their concern? The whole point of cloud is to take the hardware away. Encryption is cheap, just do it.
- leetrout 4y agoYes it is just encryption at rest and their API access mechanisms automatically apply the encrypt or decrypt action on your behalf. If your access is leaky encryption doesnt buy you anything. I take special offense to teams who store Terraform state in S3 and claim "it's encrypted" when it is so easy for other users in the same AWS account can easily access the buckets contents. GCS is slightly more secure but you really need client side encryption to be safest.
- kclay 4y agoMay I ask what is the proper way to store Terraform state. We are currently testing out Terraform at my job and it just uses a s3 bucket with exception turned on. Thanks
- leetrout 4y agoOh we do, too. My beef with it is how easy it is for a user on the account to go and read your state due to a lax IAM or bucket policy. My advice: check and make sure your bucket policy you use for the state has an explicit deny (resource *, principal *) and then you explicitly allow only the user / role that requires access to the TF state. Things to watch out for are providers that store sensitive info in your state. For example, if you use Vault and you read a secret out of Vault with Terraform then the secret will be saved in your Terraform state which, painting with broad strokes, largely invalidates the purpose of Vault. Lots of providers do this, some are getting better about not requiring sensitive info to be saved in the state or included in the config.