Managing inactive user accounts

Paul Regan May 29, 2015

Looking for an interactive way to establish if accounts are just dormant or actually RIP.

Ideally (a plugin?!) would email the inactive accounts, reminding them to login, if no response in #days then the account is marked inactive.

Have a situation that external users have been registered as local JIRA accounts with no consideration for compliance, leavers/joiners.  Trying to see if theres a way to manage that.

As I write & read this back I'm pretty sure I know the answer but putting it out there anyway.

3 answers

1 vote
Marcus Silveira
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
May 29, 2015

Hi Paul,

I'm not sure there's any plugin to do this, but you could get the list of users that haven't logged into JIRA for the last 6 months (or at all) with the following query.

SELECT  u.user_name as "Username", 
	u.display_name as "Full Name", 
	to_timestamp(CAST(a.attribute_value as bigint)/1000) as "Last Login" 
FROM cwd_user u
	LEFT JOIN cwd_user_attributes a ON u.id = a.user_id AND attribute_name = 'login.lastLoginMillis' 
WHERE to_timestamp(CAST(a.attribute_value as bigint)/1000) <= current_date - 180 OR a.attribute_value IS NULL
ORDER BY a.attribute_value;

Hope this helps.

0 votes
Andy Brook
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 29, 2015

I have two addons, one for JIRA, one for Confluence, to manage user auto inactivation and group manipulation, I should release them!  They can be driven from several sources, eg LDAP, where users are moved to a nominated OU typically for 'not deleted just gone for now' users, it does things like email, hipchat notify on termination.  Its designed to automate user management.

0 votes
Pedro Cora
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
May 29, 2015

A 'hack' that you can do is run this query:

SELECT u.user_name,u.first_name,u.last_name,u.email_address,d.directory_name from cwd_user u join cwd_directory d on u.directory_id = d.id where u.active = 0;

That will return all inactive users and e-mail them.

Another option is to check for their last login and choose a cut period. To retrieve that, follow this KB: https://confluence.atlassian.com/display/JIRAKB/Retrieve+last+login+dates+for+users+from+the+database

wink

Suggest an answer

Log in or Sign up to answer