Bug 54724 - Self password change not possible if future account expiry date is set to a date later than 2038-01-20
Self password change not possible if future account expiry date is set to a d...
Status: NEW
Product: UCS
Classification: Unclassified
Component: Kerberos
UCS 5.0
Other Linux
: P5 normal (vote)
: ---
Assigned To: UCS maintainers
UCS maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2022-05-06 14:27 CEST by Jan-Luca Kiok
Modified: 2023-06-07 12:14 CEST (History)
4 users (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 3: Simply Wrong: The implementation doesn't match the docu
Who will be affected by this bug?: 1: Will affect a very few installed domains
How will those affected feel about the bug?: 4: A User would return the product
User Pain: 0.069
Enterprise Customer affected?:
School Customer affected?: Yes
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review: Yes
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jan-Luca Kiok univentionstaff 2022-05-06 14:27:17 CEST
If an account has a expiry date in the future (like 1/1/2099) it is not possible the change the password via the Self-Service password change, instead the errorcode 13: 'The account is expired and can not be used anymore.' is thrown.

Workaround is to delete the expiry date as it is not reached while doing the password change, but this does not scale for automatically provisioned environments.
Comment 1 Julia Bremer univentionstaff 2022-05-06 15:09:53 CEST
Only happens to users which userexpiry is set to later then 2038-01-20. 
a kinit of that user already says the user were expired.  

krb5ValidEnd: 20380120000000Z
shadowExpire: 24856

Y2038 problem in heimdal?
Comment 2 Florian Best univentionstaff 2022-05-09 18:12:28 CEST
Does it also happen with Samba 4 being installed?
Comment 3 Julia Bremer univentionstaff 2022-05-09 18:52:21 CEST
(In reply to Florian Best from comment #2)
> Does it also happen with Samba 4 being installed?

No samba uses windows time to calculate user expiry
Comment 4 Ingo Steuwer univentionstaff 2022-05-11 10:04:07 CEST
I reduced the "user pain" categories, as the described situation is not the default for new accounts -- and from my point of view I don't see the benefit of an expiry date which is >15 years in the future.
Comment 5 Jan-Luca Kiok univentionstaff 2022-05-11 10:25:54 CEST
On the one hand the problem does affect many, if not all customers, but I would go along with the rating as there is no expiry date +15 years in most environments, thats true.
But I am unsure about the bug type: For the customer experiencing the bug it will be a deal breaker if this won't be fixed soon as the user lifecycle depends on a working self-service.
Origin of this procedure is that the leading system has school bound validities whereas we have an account bound validity - To connect both there is a middleware which calculates expiry dates. The term 01.01.2099 has it's origin in the leading system, so all workarounds would breach parity between both systems.

If we cannot provide a fix before the productive usage starts there will be many users experiencing this and I would tend to say that the initial Onboarding is a key scenario for this kind of environment.
Comment 6 Ingo Steuwer univentionstaff 2022-05-11 10:50:50 CEST
(In reply to Jan-Luca Kiok from comment #5)
> On the one hand the problem does affect many, if not all customers, but I
> would go along with the rating as there is no expiry date +15 years in most
> environments, thats true.
> But I am unsure about the bug type: For the customer experiencing the bug it
> will be a deal breaker if this won't be fixed soon as the user lifecycle
> depends on a working self-service.
> Origin of this procedure is that the leading system has school bound
> validities whereas we have an account bound validity - To connect both there
> is a middleware which calculates expiry dates. The term 01.01.2099 has it's
> origin in the leading system, so all workarounds would breach parity between
> both systems.
> 
> If we cannot provide a fix before the productive usage starts there will be
> many users experiencing this and I would tend to say that the initial
> Onboarding is a key scenario for this kind of environment.

I assume it is way easier to have a UDM hook that removes expiry dates > 2037 in one customer environment then to debug, fix and maintain a bugfix in heimdal for all customers.