Skip to content

Instantly share code, notes, and snippets.

@Yoda-BZH
Created May 28, 2024 07:57
Show Gist options
  • Save Yoda-BZH/c23a3d4e202ae97092a61d389af1bcf5 to your computer and use it in GitHub Desktop.
Save Yoda-BZH/c23a3d4e202ae97092a61d389af1bcf5 to your computer and use it in GitHub Desktop.
gitlab enhanced expired_tokens.rb
# this is an enhanced version of https://docs.gitlab.com/ee/security/token_overview.html?tab=Rails+console+session#expired_tokensrb
expires_at_date = "2024-05-22"
PersonalAccessToken.project_access_token.where(expires_at: expires_at_date).find_each do |token|
token.user.members.each do |member|
type = member.is_a?(GroupMember) ? 'Group' : 'Project'
if type == "Project"
p = Project.find(member.source_id)
puts "Expired #{type} access token in #{type} ID #{member.source_id} #{p.namespace.name}/#{p.name}, Token ID: #{token.id}, Name: #{token.name}, Scopes: #{token.scopes}, Last used: #{token.last_used_at}"
else
g = Group.find(member.source_id)
puts "Expired #{type} access token in #{type} ID #{member.source_id} #{g.name}, Token ID: #{token.id}, Name: #{token.name}, Scopes: #{token.scopes}, Last used: #{token.last_used_at}"
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment