|
|
@ -15,9 +15,11 @@
|
|
|
|
#
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
|
|
class WebauthnCredential < ApplicationRecord
|
|
|
|
class WebauthnCredential < ApplicationRecord
|
|
|
|
|
|
|
|
SIGN_COUNT_LIMIT = (2**63)
|
|
|
|
|
|
|
|
|
|
|
|
validates :external_id, :public_key, :nickname, :sign_count, presence: true
|
|
|
|
validates :external_id, :public_key, :nickname, :sign_count, presence: true
|
|
|
|
validates :external_id, uniqueness: true
|
|
|
|
validates :external_id, uniqueness: true
|
|
|
|
validates :nickname, uniqueness: { scope: :user_id }
|
|
|
|
validates :nickname, uniqueness: { scope: :user_id }
|
|
|
|
validates :sign_count,
|
|
|
|
validates :sign_count,
|
|
|
|
numericality: { only_integer: true, greater_than_or_equal_to: 0, less_than_or_equal_to: (2**63) - 1 }
|
|
|
|
numericality: { only_integer: true, greater_than_or_equal_to: 0, less_than_or_equal_to: SIGN_COUNT_LIMIT - 1 }
|
|
|
|
end
|
|
|
|
end
|
|
|
|