Unless I'm missing something there isn't much provision for configuring simp::ssd::client.
I'm setting up to use LDAP and migrate data from an existing LDAP server to this new one. We use server side ppolicy and so have no use for the shadowAccount objectClass. Unfortunately simp::ssd::client seems to assume the use of shadowAccount anyway. The only way I've found to change this is to edit modules/simp/manifests/sssd/client.pp:
change from this:
sssd::provider::ldap { 'LDAP':
ldap_default_authtok_type => 'password',
ldap_user_gecos => 'dn'
}
to this:
sssd::provider::ldap { 'LDAP':
ldap_pwd_policy => 'none',
ldap_access_order => ['lockout'],
ldap_default_authtok_type => 'password',
ldap_user_gecos => 'dn'
}
Why?
Setting ldap_pwd_policy to 'none' instead of sssd::provider::ldap default of 'shadow' turns off client side checking and allows use of server side ppolicy unimpeded.
Set ldap_access_order to ['lockout'] instead of the sssd::provider::ldap default of ['expire','lockout'] because 'expire' depends shadowAccount. Even better would be to set to ['ppolicy'], since 'ppolicy' has superseded 'lockout' but sssd::provider::ldap doesn't recognise 'ppolicy' yet.