Add default value for KeyPolicy.

This maintains our deployability guidelines, so the latest Boulder can be run
with the previous version of the config.
This commit is contained in:
Jacob Hoffman-Andrews 2016-01-12 12:14:36 -08:00
parent a6c07265a8
commit 6d33280249
1 changed files with 19 additions and 11 deletions

View File

@ -188,24 +188,32 @@ type Config struct {
Workers int
ReportDirectoryPath string
}
AllowedSigningAlgos struct {
RSA bool
ECDSANISTP256 bool
ECDSANISTP384 bool
ECDSANISTP521 bool
}
AllowedSigningAlgos *AllowedSigningAlgos
SubscriberAgreementURL string
}
// AllowedSigningAlgos defines which algorithms be used for keys that we will
// sign.
type AllowedSigningAlgos struct {
RSA bool
ECDSANISTP256 bool
ECDSANISTP384 bool
ECDSANISTP521 bool
}
// KeyPolicy returns a KeyPolicy reflecting the Boulder configuration.
func (config *Config) KeyPolicy() core.KeyPolicy {
if config.AllowedSigningAlgos != nil {
return core.KeyPolicy{
AllowRSA: config.AllowedSigningAlgos.RSA,
AllowECDSANISTP256: config.AllowedSigningAlgos.ECDSANISTP256,
AllowECDSANISTP384: config.AllowedSigningAlgos.ECDSANISTP384,
AllowECDSANISTP521: config.AllowedSigningAlgos.ECDSANISTP521,
}
}
return core.KeyPolicy{
AllowRSA: config.AllowedSigningAlgos.RSA,
AllowECDSANISTP256: config.AllowedSigningAlgos.ECDSANISTP256,
AllowECDSANISTP384: config.AllowedSigningAlgos.ECDSANISTP384,
AllowECDSANISTP521: config.AllowedSigningAlgos.ECDSANISTP521,
AllowRSA: true,
}
}