是否在Bitbucket中查找非活动用户列表?
我如何才能找到从未登录其Bitbucket帐户的用户列表?有任何查询或宏,或者我必须手动执行吗?您可以使用SQL查询数据库来执行此操作:是否在Bitbucket中查找非活动用户列表?,bitbucket,bitbucket-server,Bitbucket,Bitbucket Server,我如何才能找到从未登录其Bitbucket帐户的用户列表?有任何查询或宏,或者我必须手动执行吗?您可以使用SQL查询数据库来执行此操作: SELECT cu.lower_user_name ,cu.display_name ,cu.lower_display_name ,cu.lower_email_address ,cu.is_active ,dateadd(second,cast(cast(cua.attribute_val
SELECT cu.lower_user_name
,cu.display_name
,cu.lower_display_name
,cu.lower_email_address
,cu.is_active
,dateadd(second,cast(cast(cua.attribute_value AS nvarchar(255)) AS bigint)/1000,'19700101 00:00:00:000') AS LAST_LOGIN
FROM [BitBucketDB].[dbo].[cwd_user] As cu
LEFT JOIN [BitBucketDB].[dbo].cwd_membership AS cm
ON cu.directory_id=cm.directory_id
AND cu.lower_user_name=cm.lower_child_name
AND cm.membership_type='GROUP_USER'
LEFT JOIN [BitBucketDB].[dbo].cwd_user_attribute As cua
ON cu.ID = cua.user_id and cua.attribute_name='lastAuthenticationTimestamp'
WHERE cm.lower_parent_name='stash-users'
另请参阅有关主题的Atlassian知识库: 本质上,Bitbucket服务器和数据中心: 显示“管理”>“用户”下用户列表中最后一个已验证的列 提供RESTAPI来查询任何给定用户的最后一次身份验证日期
这是一个PostgreSQL的解决方案,注意你可能想考虑用户的创建日期,以排除昨天访问他们的人,并且没有登录。 一年未登录或从未登录但至少存在一年的用户:
select * from (SELECT distinct cu.lower_user_name
,to_timestamp(CAST(attribute_value AS BIGINT)/1000) AS last_login
,cu.created_date
FROM cwd_user As cu
LEFT JOIN cwd_membership AS cm
ON cu.directory_id=cm.directory_id
AND cu.lower_user_name=cm.lower_child_name
AND cm.membership_type='GROUP_USER'
LEFT JOIN cwd_user_attribute As cua
ON cu.ID = cua.user_id and
cua.attribute_name='lastAuthenticationTimestamp'
WHERE is_active = 'T'AND (cm.lower_parent_name='stash-users' OR
cm.lower_parent_name='bitbucket-users'
OR cm.lower_parent_name='stash' OR
cm.lower_parent_name='bitbucket') ) q1
where (last_login < current_date - (365) or last_login is null)
and created_date < current_date - (365);
谢谢。按要求工作。