Puppet Function: ssh::validate_key_size
- Defined in:
- functions/validate_key_size.pp
- Function type:
- Puppet Language
Overview
This function validates a key size for a given type.
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'functions/validate_key_size.pp', line 3
function ssh::validate_key_size(
String $type,
Integer $size
) {
case $type {
'dsa': {
if $size != 1024 {
notify { 'Only SSH dsa keys of 1024 size are valid, proceeding as such': }
}
$size_final = 1024
}
'ecdsa': {
if $size in [256, 384, 521] {
$size_final = $size
} else {
fail('ECDSA keys may only be of length 256, 384, or 521')
}
}
'ed25519': {
if $size != 0 {
notify { 'SSH ed25519 keys have a fixed length, size ignored': }
}
$size_final = undef
}
'rsa': {
if ! $size {
$size_final = 2048
} elsif $size > 768 {
$size_final = $size
} else {
fail('RSA keys must be at least 768 bits')
}
}
'rsa1': {
$size_final = $size
}
default: {}
}
}
|