Skip to content
This repository was archived by the owner on Jul 24, 2023. It is now read-only.
This repository was archived by the owner on Jul 24, 2023. It is now read-only.

Server http://www.myopenid.com/server responds that the ‘check_authentication’ call is not valid #1

@lancejpollard

Description

@lancejpollard

I have been working on this issue for the past few days and finally think I pinpointed the problem. A few other people seem to be having this problem:

That call returns this...

#<OpenID::Consumer::FailureResponse:0x2217e04 @reference=nil, @endpoint=#<OpenID::OpenIDServiceEndpoint:0x225e944 @local_id="http://viatropos.myopenid.com/", @display_identifier=nil, @type_uris=["http://specs.openid.net/auth/2.0/signon", "http://openid.net/sreg/1.0", "http://openid.net/extensions/sreg/1.1", "http://schemas.openid.net/pape/policies/2007/06/phishing-resistant", "http://openid.net/srv/ax/1.0"], @used_yadis=true, @server_url="http://www.myopenid.com/server", @canonical_id=nil, @claimed_id="http://viatropos.myopenid.com/">, @message="Server http://www.myopenid.com/server responds that the 'check_authentication' call is not valid", @contact=nil>

That occurs in here:

def check_signature
    if @store.nil?
      assoc = nil
    else
      assoc = @store.get_association(server_url, fetch('assoc_handle'))
    end

    if assoc.nil?
      check_auth
    else
      if assoc.expires_in <= 0
        # XXX: It might be a good idea sometimes to re-start the
        # authentication with a new association. Doing it
        # automatically opens the possibility for
        # denial-of-service by a server that just returns expired
        # associations (or really short-lived associations)
        raise ProtocolError, "Association with #{server_url} expired"
      elsif !assoc.check_message_signature(@message)
        raise ProtocolError, "Bad signature in response from #{server_url}"
      end
    end
  end

If I add this to the config/environment.rb, it works fine:

OpenIdAuthentication.store = :file

Otherwise, with "none" or "in-memory" store, it doesn't work.

Any ideas?

This is on Rails 2.3.5

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions