summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authorerdgeist <erdgeist@erdgeist.org>2026-08-01 18:38:42 +0200
committererdgeist <erdgeist@erdgeist.org>2026-08-01 18:38:42 +0200
commit45432cba9f524c99015c90b6b6aa381fe2b04984 (patch)
tree35345a3efedeaa1bd63db09ff99ac23187c081e3 /app/models
parent4175f26cc8b22ff5a07929fa2436c561022cccd2 (diff)
Require a second factor for elevation, not for holding admin
Diffstat (limited to 'app/models')
-rw-r--r--app/models/user.rb1
1 files changed, 1 insertions, 0 deletions
diff --git a/app/models/user.rb b/app/models/user.rb
index c3035a02..4b70ebe5 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -242,6 +242,7 @@ class User < ApplicationRecord
242 def admin_needs_second_factor 242 def admin_needs_second_factor
243 return unless roles.include?("admin") 243 return unless roles.include?("admin")
244 return if otp_secret.present? 244 return if otp_secret.present?
245 return if persisted? && roles_in_database.to_a.include?("admin")
245 errors.add(:roles, :admin_needs_otp) 246 errors.add(:roles, :admin_needs_otp)
246 end 247 end
247end 248end