Show user expire state
Problem to solve
After gitlab-org/security!1446 (322ee6c8) access to API, Git and slash commands will be blocked, but only variant to see this as admin is to login in rails console and do:
user = User.find_by_username 'jenkins'
user.password_expired?
When you impersonate into the account of the expired account you will only see (loading of repo browser is failing):
In our case the user was expired, because we created an account for our external CI, so it had a dummy password and we access the user just via impersonate mode (e.g. to set an ssh key). As we never logged in into this account, we never saw the request to change the password.
There should be an easier to recognize variant that an account is expired.
Intended users
Proposal
Admin area => Users:
- Adding a table row in the account information if the account has expired when viewing the user page.
- Adding a badge in the user list (like 'Blocked', 'Banned', ...).
Other pages:
- Instead of not loading the content of a folder, a banner should be displayed: "Your password has expired. Renew it to see this content`.
Edited by Heiko Thiel