instance method
verified
Ruby on Rails 6.0.6
Since v5.2.8.1Signature
verified(signed_message, purpose: nil, **)
Decodes the signed message using the MessageVerifier‘s secret.
verifier = ActiveSupport::MessageVerifier.new 's3Krit' signed_message = verifier.generate 'a private message' verifier.verified(signed_message) # => 'a private message'
Returns nil if the message was not signed with the same secret.
other_verifier = ActiveSupport::MessageVerifier.new 'd1ff3r3nt-s3Krit' other_verifier.verified(signed_message) # => nil
Returns nil if the message is not Base64-encoded.
invalid_message = "f--46a0120593880c733a53b6dad75b42ddc1c8996d" verifier.verified(invalid_message) # => nil
Raises any error raised while decoding the signed message.
incompatible_message = "test--dad7b06c94abba8d46a15fafaef56c327665d5ff" verifier.verified(incompatible_message) # => TypeError: incompatible marshal file format
Parameters
-
signed_messagereq -
purposekey = nil -
kwargskeyrest
Source
# File activesupport/lib/active_support/message_verifier.rb, line 150
def verified(signed_message, purpose: nil, **)
if valid_message?(signed_message)
begin
data = signed_message.split("--")[0]
message = Messages::Metadata.verify(decode(data), purpose)
@serializer.load(message) if message
rescue ArgumentError => argument_error
return if argument_error.message.include?("invalid base64")
raise
end
end
end
Defined in activesupport/lib/active_support/message_verifier.rb line 150
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveSupport::MessageVerifier