From: Buchan Milne <bgmilne@staff.telkomsa.net>
To: openldap-software@openldap.org
CC: "Jack Emmerichs" <beamrider1@hotmail.com>
Subject: Re: Setting up user accounts with ppolicy attributes
Date: Wed, 27 Jun 2007 10:53:44 +0200
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