mirror of
https://github.com/discourse/discourse.git
synced 2025-05-22 16:11:08 +08:00
DEV: update rake task to disable 2FA for a user (#29052)
- limits security key deletes to second factor keys - also deletes backup codes (lingering backup codes break login flow entirely) * Add spec for rake task to disable 2FA for a user
This commit is contained in:
@ -155,7 +155,13 @@ task "users:disable_2fa", [:username] => [:environment] do |_, args|
|
||||
username = args[:username]
|
||||
user = find_user(username)
|
||||
UserSecondFactor.where(user_id: user.id, method: UserSecondFactor.methods[:totp]).each(&:destroy!)
|
||||
UserSecurityKey.where(user_id: user.id).destroy_all
|
||||
UserSecurityKey.where(
|
||||
user_id: user.id,
|
||||
factor_type: UserSecurityKey.factor_types[:second_factor],
|
||||
).destroy_all
|
||||
UserSecondFactor.where(user_id: user.id, method: UserSecondFactor.methods[:backup_codes]).each(
|
||||
&:destroy!
|
||||
)
|
||||
puts "2FA disabled for #{username}"
|
||||
end
|
||||
|
||||
|
Reference in New Issue
Block a user