46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
# File 'manifests/config/authmethod.pp', line 46
define icingaweb2::config::authmethod(
Enum['external', 'ldap', 'msldap', 'db'] $backend = undef,
Optional[String] $resource = undef,
Optional[String] $ldap_user_class = undef,
Optional[String] $ldap_user_name_attribute = undef,
Optional[String] $ldap_filter = undef,
Optional[String] $ldap_base_dn = undef,
Optional[String] $domain = undef,
Variant[String, Integer] $order = '01',
) {
$conf_dir = $::icingaweb2::globals::conf_dir
case $backend {
'external': {
$settings = {
'backend' => $backend,
}
}
'ldap', 'msldap': {
$settings = {
'backend' => $backend,
'resource' => $resource,
'user_class' => $ldap_user_class,
'user_name_attribute' => $ldap_user_name_attribute,
'filter' => $ldap_filter,
'base_dn' => $ldap_base_dn,
'domain' => $domain,
}
}
'db': {
$settings = {
'backend' => $backend,
'resource' => $resource,
'domain' => $domain,
}
}
default: {
fail('The backend type you provided is not supported.')
}
}
icingaweb2::inisection { "authmethod-${title}":
section_name => $title,
target => "${conf_dir}/authentication.ini",
settings => delete_undef_values($settings),
order => $order,
}
}
|