StackStorm / chef-stackstorm

DEPRECATED! Community-maintained Chef Cookbook to deploy StackStorm, IFTTT for Ops
https://supermarket.chef.io/cookbooks/stackstorm
Apache License 2.0
16 stars 10 forks source link

Use encrypted Data Bags #49

Open arm4b opened 7 years ago

arm4b commented 7 years ago

SSH keys, auth-related username:password, DB credentials should be stored in encrypted data bags.

Refactor it to use data bags where possible to make the Cookbook more secure and production-ready.

Good request by @shortdudey123 :+1:

arm4b commented 7 years ago

My vision is that or we use it everywhere as possible, or not use at all. Something in between is less acceptable. Thereby, tagging it as refactor.

arm4b commented 7 years ago

Also, we should be really careful here when considering migration, see this comment by Seth Vargo:

I'd also like to suggest/plea. Please don't force the use of a data bag in a public cookbook. This is a mistake that we've learned from in the past. Instead of forcing people to use a certain schema, I recommend using a hybrid model, like described in the new Jenkins cookbook.

Requiring a certain data bag structure forces people to manage their infrastructure in a certain manner. This is a violation of one of the guiding principles of Chef: you know your infrastructure best. The users cookbook is a big culprit here. It forces users to conform to a certain data structure, which rarely meets the ever-changing and unique demands of an organization.

Alternatively, I recommend using attribute-driven cookbooks and then encourage users to populate those attributes how they see fit. In the case of the users cookbook, users could chose to populate an attribute by specifying it manually, loading it from a data bag, or using a third-party service (like LDAP).

Might be useful for future consideration. TBH, I don't know how to approach this, need to check other public cookbooks/research more how it's usually done and what's preferred, so this Issue is open for discussions.

shortdudey123 commented 7 years ago

I don't know how to approach this

Most cookbooks allow both attribute (for dev) and encrypted data bags (for prod)