Hi All,
We have a password policy enabled for users with ads-pwdmustchange=TRUE.
When an admin changes a user's password , the pwdReset=true attribute is set as 
on the user entry as expected.
We get the correct response control and direct a user to a change password page.
This all works great however, this temporary password remains valid for period 
defined in the policy.

Ideally, after receiving the response control for password must change, I'd 
like to expire the temporary password after 10 minutes.
This way if they defeat our change password routine by canceling it, the 
password wouldn't remain valid for long.

Since we never know when the first time they'll login after pwdReset=true is 
set, this is something I want to do individually on the user entry during the 
login process.
I've tried setting pwdEndTime on the user entry. This looks like it might be 
what I want but I get a no user modification exception.

Can you think of any way to do this?
Thanks!


java.lang.Exception: [LDAP: error code 50 - INSUFFICIENT_ACCESS_RIGHTS: failed 
for MessageType : MODIFY_REQUEST
Message ID : 67
    Modify Request
        Object : 'uid=1337172529807,ou=users,ou=int,o=cpro'
            Modification[0]
                Operation :  add
                Modification
pwdEndTime: 20130319220004.006Z
org.apache.directory.api.ldap.model.message.ModifyRequestImpl@8ae625e6: ERR_52 
Cannot modify the attribute : ATTRIBUTE_TYPE ( 1.3.6.1.4.1.42.2.27.8.1.28
NAME 'pwdEndTime'
DESC The time the password becomes disabled
EQUALITY generalizedTimeMatch
ORDERING generalizedTimeOrderingMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.24
SINGLE-VALUE
NO-USER-MODIFICATION
USAGE directoryOperation
)
]

Reply via email to