mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Convert krbmaxpwdlife and krbminpwdlife from seconds into days and hours
This commit is contained in:
@@ -16,8 +16,8 @@ class IPAPolicyFields(object):
|
||||
ipapolicy_orig = widgets.HiddenField(name="ipapolicy_orig")
|
||||
|
||||
# From cn=accounts
|
||||
krbmaxpwdlife = widgets.TextField(name="krbmaxpwdlife", label="Max. Password Lifetime", attrs=dict(size=3,maxlength=3))
|
||||
krbminpwdlife = widgets.TextField(name="krbminpwdlife", label="Min. Password Lifetime", attrs=dict(size=3,maxlength=3))
|
||||
krbmaxpwdlife = widgets.TextField(name="krbmaxpwdlife", label="Max. Password Lifetime (days)", attrs=dict(size=3,maxlength=3))
|
||||
krbminpwdlife = widgets.TextField(name="krbminpwdlife", label="Min. Password Lifetime (hours)", attrs=dict(size=3,maxlength=3))
|
||||
krbpwdmindiffchars = widgets.TextField(name="krbpwdmindiffchars", label="Min. number of character classes", attrs=dict(size=3,maxlength=3))
|
||||
krbpwdminlength = widgets.TextField(name="krbpwdminlength", label="Min. Length of password", attrs=dict(size=3,maxlength=3))
|
||||
krbpwdhistorylength = widgets.TextField(name="krbpwdhistorylength", label="Password History size", attrs=dict(size=3,maxlength=3))
|
||||
|
||||
@@ -1406,6 +1406,10 @@ class IPAServer:
|
||||
except ipaerror.exception_for(ipaerror.LDAP_NOT_FOUND):
|
||||
raise ipaerror.gen_exception(ipaerror.LDAP_NO_CONFIG)
|
||||
|
||||
# convert some values for display purposes
|
||||
policy['krbmaxpwdlife'] = str(int(policy.get('krbmaxpwdlife')) / 86400)
|
||||
policy['krbminpwdlife'] = str(int(policy.get('krbminpwdlife')) / 3600)
|
||||
|
||||
return policy
|
||||
|
||||
def update_password_policy(self, oldpolicy, newpolicy, opts=None):
|
||||
@@ -1414,11 +1418,18 @@ class IPAServer:
|
||||
# The LDAP routines want strings, not ints, so convert a few
|
||||
# things. Otherwise it sees a string -> int conversion as a change.
|
||||
try:
|
||||
newpolicy['krbmaxpwdlife'] = str(newpolicy.get('krbmaxpwdlife'))
|
||||
newpolicy['krbminpwdlife'] = str(newpolicy.get('krbminpwdlife'))
|
||||
newpolicy['krbpwdhistorylength'] = str(newpolicy.get('krbpwdhistorylength'))
|
||||
newpolicy['krbpwdmindiffchars'] = str(newpolicy.get('krbpwdmindiffchars'))
|
||||
newpolicy['krbpwdminlength'] = str(newpolicy.get('krbpwdminlength'))
|
||||
for k in oldpolicy.iterkeys():
|
||||
if k.startswith("krb", 0, 3):
|
||||
oldpolicy[k] = str(oldpolicy[k])
|
||||
for k in newpolicy.iterkeys():
|
||||
if k.startswith("krb", 0, 3):
|
||||
newpolicy[k] = str(newpolicy[k])
|
||||
|
||||
# Convert hours and days to seconds
|
||||
oldpolicy['krbmaxpwdlife'] = str(int(oldpolicy.get('krbmaxpwdlife')) * 86400)
|
||||
oldpolicy['krbminpwdlife'] = str(int(oldpolicy.get('krbminpwdlife')) * 3600)
|
||||
newpolicy['krbmaxpwdlife'] = str(int(newpolicy.get('krbmaxpwdlife')) * 86400)
|
||||
newpolicy['krbminpwdlife'] = str(int(newpolicy.get('krbminpwdlife')) * 3600)
|
||||
except KeyError:
|
||||
# These should all be there but if not, let things proceed
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user