Eu uso o Puppet, e tenho uma classe definida para cada chave, então classes que incluem essas classes para definir os "grupos" de chaves que tenho (para nós é gente - então técnicos de L1, técnicos de L2, gerentes, desenvolvedores - - mas você pode fazer servidores db, servidores de arquivos, servidores svn, etc). Então os vários tipos de máquinas têm seus próprios manifestos que definem quais desses grupos têm acesso a esse tipo de máquina, então as caixas de desenvolvimento têm L1, L2 e desenvolvedores, servidores de produção têm L1 e L2, servidores sensíveis têm L2, esse tipo de coisa. Adicionar uma nova máquina é apenas uma questão de decidir a quais classes ela pertence e adicionar algumas linhas aqui e ali, que documentamos em nossos novos procedimentos de comissionamento de máquinas.