On Monday, 25 June 2007, Jack Emmerichs wrote: > I've been working with OpenLDAP 2.3.30 to set up ppolicy processing. I > think I have the policies set up correctly in the DLAP database using the > following ppolicy.ldif file: > > dn: ou=policies, dc=my-domain,dc=com > ou: policies > objectClass: top > objectClass: organizationalUnit > > dn: cn=default,ou=policies,dc=my-domain,dc=com > objectClass: top > objectClass: device > objectClass: pwdPolicy > cn: default > pwdAttribute: userPassword > # 30 day password limit (2592000 seconds) with an even longer expire > warning for testing. > pwdExpireWarning: 2592001 > pwdMaxAge: 2592000 > pwdInHistory: 3 > pwdCheckQuality: 1 > pwdMinLength: 6 > pwdAllowUserChange: TRUE > # Items not currently used. > pwdMinAge: 0 > pwdGraceAuthnLimit: 0 > pwdLockout: FALSE > pwdLockoutDuration: 0 > pwdMaxFailure: 0 > pwdFailureCountInterval: 0 > pwdMustChange: FALSE > pwdSafeModify: FALSE > > and the following entries in the slapd.conf file: > > # password policy > overlay ppolicy > ppolicy_default "cn=default,ou=policies,dc=my-domain,dc=com" > > > However, I'm having trouble creating user accounts. You shouldn't be creating accounts with attributes that should be maintained by the server itself, just as you don't (can't) add them with creatorsName, createTimestamp etc. > Looking at the OpenLDAP documentation and the ppolicy.schema file, it > appears that I need to include objectClass: pwdPolicy as an auxiliary class > (along with posixAccount, which is the basic user account class), and then > include attributes for pwdChangedTime, pwdAccountLockedTime, pwdHistory, > etc. The ppolicy.schema file indicates that the format in the ldif file > should actually be something like: > > pwdChangedTime;pwd-userPassword: 20000103121520Z > > for pwdChangedTime. The format for pwdHistory sounds really complex, and > the doc indicates that if this attribute is missing, OpenLDAP will not > support password history processing, so it sound like I need to get these > attributes into the account struture. The exact text is: "If pwdChangedTime does not exist, the user's password will not expire." That doesn't mean you must add it manually. However, it means that if you created accounts before you implemented ppolicy, you need to have those passwords changed, so that OpenLDAP adds the attribute. > Trouble is, if I try to include such values I either get an import failure > without error messages, an error that says "no user modification allowed" > (even when I'm adding an account), or an indication that I'm using an > invalid format. Note that the description for this attribute (and a few others) appears in the section of slapo-ppolicy(5) called "OPERATIONAL ATTRIBUTES". At the top of that section you will see: "Most of these attributes are not intended to be changed directly by users; they are there to track user activity. They have been detailed here so that administrators and users can both understand the workings of the ppolicy module." Regards, Buchan -- Buchan Milne ISP Systems Specialist - Monitoring/Authentication Team Leader B.Eng,RHCE(803004789010797),LPIC-2(LPI000074592) http://en.wikipedia.org/wiki/List_of_Internet_slang_phrases
Attachment:
pgpCT5Q7Hlkzl.pgp
Description: PGP signature