class OpenID::Consumer::SuccessResponse
A successful acknowledgement from the OpenID server that the supplied URL is, indeed controlled by the requesting agent.
Constants
- STATUS
Attributes
message[R]
signed_fields[R]
Public Class Methods
new(endpoint, message, signed_fields)
click to toggle source
# File lib/openid/consumer/responses.rb, line 62 def initialize(endpoint, message, signed_fields) # Don't use :endpoint=, because endpoint should never be nil # for a successfull transaction. @endpoint = endpoint @identity_url = endpoint.claimed_id @message = message @signed_fields = signed_fields end
Public Instance Methods
extension_response(namespace_uri, require_signed)
click to toggle source
Return response arguments in the specified namespace. If require_signed is true and the arguments are not signed, return nil.
# File lib/openid/consumer/responses.rb, line 109 def extension_response(namespace_uri, require_signed) if require_signed get_signed_ns(namespace_uri) else @message.get_args(namespace_uri) end end
get_signed(ns_uri, ns_key, default=nil)
click to toggle source
Return the specified signed field if available, otherwise return default
# File lib/openid/consumer/responses.rb, line 85 def get_signed(ns_uri, ns_key, default=nil) if signed?(ns_uri, ns_key) return @message.get_arg(ns_uri, ns_key, default) else return default end end
get_signed_ns(ns_uri)
click to toggle source
Get signed arguments from the response message. Return a dict of all arguments in the specified namespace. If any of the arguments are not signed, return nil.
# File lib/openid/consumer/responses.rb, line 96 def get_signed_ns(ns_uri) msg_args = @message.get_args(ns_uri) msg_args.each_key do |key| if !signed?(ns_uri, key) return nil end end return msg_args end
is_openid1()
click to toggle source
Was this authentication response an OpenID 1 authentication response?
# File lib/openid/consumer/responses.rb, line 73 def is_openid1 @message.is_openid1 end
signed?(ns_uri, ns_key)
click to toggle source
Return whether a particular key is signed, regardless of its namespace alias
# File lib/openid/consumer/responses.rb, line 79 def signed?(ns_uri, ns_key) @signed_fields.member?(@message.get_key(ns_uri, ns_key)) end