123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- # wrapper to have some defaults.
- define sshd::ssh_authorized_key(
- $ensure = 'present',
- $type = 'ssh-dss',
- $key = 'absent',
- $user = '',
- $target = undef,
- $options = 'absent'
- ){
- if ($ensure=='present') and ($key=='absent') {
- fail("You have to set \$key for Sshd::Ssh_authorized_key[${name}]!")
- }
- $real_user = $user ? {
- false => $name,
- '' => $name,
- default => $user,
- }
- case $target {
- undef,'': {
- case $real_user {
- 'root': { $real_target = '/root/.ssh/authorized_keys' }
- default: { $real_target = "/home/${real_user}/.ssh/authorized_keys" }
- }
- }
- default: {
- $real_target = $target
- }
- }
- ssh_authorized_key{$name:
- ensure => $ensure,
- type => $type,
- key => $key,
- user => $real_user,
- target => $real_target,
- }
- case $options {
- 'absent': { info("not setting any option for ssh_authorized_key: ${name}") }
- default: {
- Ssh_authorized_key[$name]{
- options => $options,
- }
- }
- }
- }
|