아, 폰을 잃어버렸어요. 이제 OTP를 어떻게 받아야 하나요?

오늘 다시 확인해 보니 다음과 같은 결과를 확인했습니다:

[25] pry(main)> how.totp_enabled?
=> false
[26] pry(main)> how.backup_codes_enabled?
=> true
[27] pry(main)> how.totp_or_backup_codes_enabled?
=> true

그래서 @falco님의 위 답변에 따라 백업 코드도 함께 제거해 보았습니다:

UserSecondFactor.backup_codes.where(user_id: id).each(&:destroy!)

사용자가 복귀 방법을 잃어버렸을 때 OTP를 비활성화하는 완전한 해결 방법은 다음과 같습니다: totps 항목과 backup_codes를 모두 제거해야 #totp_or_backup_codes_enabled? 호출이 false를 반환합니다.