Sha256: 2b5993d77457d36f93b6acc310c6ca0854bf4fe91a32d55e9223ef6982194567

Contents?: true

Size: 814 Bytes

Versions: 19

Compression:

Stored size: 814 Bytes

Contents

# Simple store of nonces. The OAuth Spec requires that any given pair of nonce and timestamps are unique.
# Thus you can use the same nonce with a different timestamp and viceversa.
class OauthNonce
  include Mongoid::Document
  include Mongoid::Timestamps

  field :nonce,     :type => String
  field :timestamp, :type => Integer

  index [
    [:nonce, Mongo::ASCENDING],
    [:timestamp, Mongo::ASCENDING]
  ], :unique => true

  validates_presence_of :nonce, :timestamp
  validates_uniqueness_of :nonce, :scope => :timestamp

  # Remembers a nonce and it's associated timestamp. It returns false if it has already been used
  def self.remember(nonce, timestamp)
    oauth_nonce = OauthNonce.create(:nonce => nonce, :timestamp => timestamp)
    return false if oauth_nonce.new_record?
    oauth_nonce
  end
end

Version data entries

19 entries across 19 versions & 6 rubygems

Version Path
houston-oauth-plugin-0.5.1 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
panjiva-oauth-plugin-0.4.1 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.5.1 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.5.0 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-provider-0.5.0rc1 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.1 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0.rc2 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0.rc1 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0.pre7 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0.pre6 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0.pre5 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
insrc-oauth-plugin-0.4.0.pre6 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
insrc-oauth-plugin-0.4.0.pre5 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
le1t0-oauth-plugin-0.4.0.pre4.001 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0.pre4 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0.pre3 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0.pre2 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb
oauth-plugin-0.4.0.pre1 lib/generators/mongoid/oauth_provider_templates/oauth_nonce.rb