protect against timing attacks for admin keys (#766)

This commit is contained in:
Echo 2026-01-03 10:45:11 -05:00 committed by GitHub
parent 097e48471f
commit 6b56134df4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -9,7 +9,8 @@ module Api
def authenticate_admin_api_key!
authenticate_or_request_with_http_token do |token, options|
@admin_api_key = AdminApiKey.active.find_by(token: token)
admin_api_key = AdminApiKey.active.find { |key| ActiveSupport::SecurityUtils.secure_compare(key.token, token) }
@admin_api_key = admin_api_key
if @admin_api_key
@current_user = @admin_api_key.user