You can pick any organizational unit here — you will change it later anyway.
Submit once you have confirmed everything is correct and the group is created.
Creating a user
LDAP groups and users are not linked by default, so we need to add the user we just created to the
dba-group
group.
The end result looks like this — just submit with “Update~”.
The user is now a member of the group. Notice the
memberOf
attribute: that is exactly what our Jenkins group authorization reads to decide access. (I really want to ask the author why it cannot read the DN and make the decision from the OU.)
Password policy
Password policy is normally handled with
ppolicy
. You can check whether the module is loaded with:
1
2
3
4
5
6
7
8
9
10
11
12
root@openldap-host:/etc/ldap# slapcat -n 0| grep -i module
dn: cn=module{0},cn=config
objectClass: olcModuleList
cn: module{0}olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_mdb
olcModuleLoad: {1}memberof
olcModuleLoad: {2}refint
structuralObjectClass: olcModuleList
olcAttributeTypes: {15}( 1.3.6.1.4.1.4754.1.99.1 NAME 'pwdCheckModule' DESC
'Loadable module that instantiates "check_password() function' EQUALITY cas
op AUXILIARY MAY pwdCheckModule )
If it is not there, load the module explicitly with
ldapadd
. Create an LDIF file:
<?php// My SSP configuration
$keyphrase="mysecret";$debug=true;$use_captcha=false;$ldap_url="ldap://192.168.1.250:389";$ldap_binddn="CN=admin,DC=innovsharing,DC=com";$ldap_bindpw="111111";$ldap_base="dc=innovsharing,dc=com";$ldap_filter="(&(objectClass=inetOrgPerson)(cn={login}))";$use_sms=false;$use_questions=false;$who_change_password="user";$show_extended_error=true;$pwd_show_policy_pos="above";$pwd_show_policy="always";#$pwd_no_reuse = true;
#$ldap_use_exop_passwd = true;
#$ldap_use_ppolicy_control = true;
#$pwd_min_lower = 1;
#$pwd_min_upper = 1;
#$pwd_min_digit = 1;
$pwd_min_length=8;#$pwd_max_length = 16;
#$hash = "MD5";
## Token
# Use tokens?
# true (default)
# false
$use_tokens=true;# Crypt tokens?
# true (default)
# false
$crypt_tokens=true;# Token lifetime in seconds
$token_lifetime="3600";## Mail
# LDAP mail attribute
$mail_attributes=array("mail","gosaMailAlternateAddress","proxyAddresses");# Get mail address directly from LDAP (only first mail entry)
# and hide mail input field
# default = false
$mail_address_use_ldap=false;# Who the email should come from
$mail_from="[email protected]";$mail_from_name="Self Service Password";$mail_signature="";# Notify users anytime their password is changed
$notify_on_change=false;# PHPMailer configuration (see https://github.com/PHPMailer/PHPMailer)
$mail_sendmailpath='/usr/sbin/sendmail';$mail_protocol='smtp';$mail_smtp_debug=0;$mail_debug_format='error_log';$mail_smtp_host='smtp.exmail.qq.com';$mail_smtp_auth=true;$mail_smtp_user='[email protected]';$mail_smtp_pass='xxxxxxxxxxxxx';$mail_smtp_port=465;$mail_smtp_timeout=30;$mail_smtp_keepalive=false;$mail_smtp_secure='ssl';$mail_smtp_autotls=true;$mail_smtp_options=array();$mail_contenttype='text/plain';$mail_wordwrap=0;$mail_charset='utf-8';$mail_priority=3;?>