BE: Provide an admin setting to automate deactivation of dormant users
Problem to solve
User management is a time consuming effort by admins (self-managed). The effort is exasperated due to our lack of readily available in-app user management tools.
For example, when an instance has hundreds of users, there is no easy way to identify which users are actively utilizing the system and which have gone dormant.
We provide some useful data in our API but the effort to identify which users are dormant and subsequently deactivate them is still time consuming. We aren't making it easy to love using GitLab for user management.
Intended users
Success Criteria
- We should offer an admin setting for admin users to toggle on the ability to automate deactivation or blocking of dormant users after 90 days of inactivity.
- This setting should default to disabled since there is significant potential impact to a user's instance.
- In summary: After 90 days of user inactivity, where the setting is enabled, we should automatically deactivate the user.
- By placing the user in a deactivated state, the user will not be counted as an active user in the instance. However, it does not prohibit the user from logging back in via the UI. Once a deactivated user logs back into the GitLab UI, their account is set to active again.
Future Iterations
- The admin should be able to choose whether the users meeting the inactivity criteria should be blocked or deactivated.
- Give the admin the flexibility to dictate the threshold for inactivity while ensuring a minimum of 90 days.
Designs
Edited by Matthew Nearents