Module: Ey::Hmac
- Defined in:
- lib/ey-hmac.rb,
lib/ey-hmac/version.rb
Defined Under Namespace
Classes: Adapter, Faraday, Rack
Constant Summary collapse
- Error =
Class.new(StandardError)
- MissingSecret =
Class.new(Error)
- MissingAuthorization =
Class.new(Error)
- SignatureMismatch =
Class.new(Error)
- VERSION =
"2.0.0"
Class Method Summary collapse
-
.authenticate!(request, options = {}) {|key_id| ... } ⇒ TrueClass
Check Adapter#authorization_signature against calculated Adapter#signature.
-
.authenticated?(request, options = {}) {|key_id| ... } ⇒ Boolean
Success of authentication.
- .default_adapter ⇒ Object
- .default_adapter=(default_adapter) ⇒ Object
-
.sign!(request, key_id, key_secret, options = {}) ⇒ String
Signs request by calculating signature and adding it to the specified header.
Class Method Details
.authenticate!(request, options = {}) {|key_id| ... } ⇒ TrueClass
Check Ey::Hmac::Adapter#authorization_signature against calculated Ey::Hmac::Adapter#signature
93 94 95 96 97 98 99 |
# File 'lib/ey-hmac.rb', line 93 def self.authenticate!(request, ={}, &block) adapter = [:adapter] || Ey::Hmac.default_adapter raise ArgumentError, "Missing adapter and Ey::Hmac.default_adapter" unless adapter adapter.new(request, ).authenticate!(&block) end |
.authenticated?(request, options = {}) {|key_id| ... } ⇒ Boolean
Returns success of authentication.
68 69 70 71 72 73 74 |
# File 'lib/ey-hmac.rb', line 68 def self.authenticated?(request, ={}, &block) adapter = [:adapter] || Ey::Hmac.default_adapter raise ArgumentError, "Missing adapter and Ey::Hmac.default_adapter" unless adapter adapter.new(request, ).authenticated?(&block) end |
.default_adapter ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'lib/ey-hmac.rb', line 23 def self.default_adapter @default_adapter ||= begin if defined?(Rack) || defined?(Rails) Ey::Hmac::Adapter::Rack elsif defined?(Faraday) Ey::Hmac::Adapter::Rails end end end |
.default_adapter=(default_adapter) ⇒ Object
19 20 21 |
# File 'lib/ey-hmac.rb', line 19 def self.default_adapter=(default_adapter) @default_adapter = default_adapter end |
.sign!(request, key_id, key_secret, options = {}) ⇒ String
Signs request by calculating signature and adding it to the specified header
46 47 48 49 50 51 52 |
# File 'lib/ey-hmac.rb', line 46 def self.sign!(request, key_id, key_secret, ={}) adapter = [:adapter] || Ey::Hmac.default_adapter raise ArgumentError, "Missing adapter and Ey::Hmac.default_adapter" unless adapter adapter.new(request, ).sign!(key_id, key_secret) end |