계정 접속 이력 확인
JIRA의 경우 계정 접속 이력이 DB에 저장 되지는 않고 사용자 객체로 속성을 저장한다. 다음 속성이 저장된다.
"lastAuthenticated"
"login.currentFailedCount"
"login.lastLoginMillis"
"login.previousLoginMillis"
"login.count"
이는 로그인 할 때마다 동적으로 업데이트되므로 기록에 별로 도움이 되지 않는다.
MS SQL 서버를 데이터베이스로 사용하고 Jira 7.*을 Jira 버전으로 사용하는 경우 아래의 SQL 쿼리를 사용하여 마지막 로그인, 이전 로그인 및 총 로그인 수를 포함한 전체 로그인 세부 정보를 얻을 수 있다.
SELECT d.directory_name AS "Directory",
u.user_name AS "Username",
DATEADD(second, cast(a.attribute_value as bigint)/1000,{d '1970-01-01'}) AS "Last Login",
DATEADD(second, cast(b.attribute_value as bigint)/1000,{d '1970-01-01'}) AS "Previous login",
c.attribute_value AS "Login_Counts"
FROM [JIRASchema].cwd_user u
JOIN (SELECT DISTINCT child_name
FROM [JIRASchema].cwd_membership m
JOIN [JIRASchema].licenserolesgroup gp ON m.parent_name = gp.GROUP_ID
) AS m ON m.child_name = u.user_name
JOIN (
SELECT *
FROM [JIRASchema].cwd_user_attributes ca
WHERE attribute_name = 'login.lastLoginMillis'
) AS a ON a.user_id = u.ID
JOIN (
SELECT *
FROM [JIRASchema].cwd_user_attributes cb
WHERE attribute_name = 'login.previousLoginMillis'
) AS b ON b.user_id = u.ID
JOIN (
SELECT *
FROM [JIRASchema].cwd_user_attributes cc
WHERE attribute_name = 'login.count'
) AS c ON c.user_id = u.ID
JOIN [JIRASchema].cwd_directory d ON u.directory_id = d.ID
Order by cast(c.attribute_value as INT) desc;
참조