module Restforce::Concerns::Authentication
Public Instance Methods
authenticate!()
click to toggle source
Public: Force an authentication
# File lib/restforce/concerns/authentication.rb, line 7 def authenticate! unless authentication_middleware raise AuthenticationError, 'No authentication middleware present' end middleware = authentication_middleware.new nil, self, options middleware.authenticate! end
authentication_middleware()
click to toggle source
Internal: Determines what middleware will be used based on the options provided
# File lib/restforce/concerns/authentication.rb, line 17 def authentication_middleware if username_password? Restforce::Middleware::Authentication::Password elsif oauth_refresh? Restforce::Middleware::Authentication::Token elsif jwt? Restforce::Middleware::Authentication::JWTBearer elsif client_credential? Restforce::Middleware::Authentication::ClientCredential end end
client_credential?()
click to toggle source
Internal: Returns true if client credential flow should be used for authentication.
# File lib/restforce/concerns/authentication.rb, line 56 def client_credential? options[:client_id] && options[:client_secret] end
jwt?()
click to toggle source
Internal: Returns true if jwt bearer token flow should be used for authentication.
# File lib/restforce/concerns/authentication.rb, line 48 def jwt? options[:jwt_key] && options[:username] && options[:client_id] end
oauth_refresh?()
click to toggle source
Internal: Returns true if oauth token refresh flow should be used for authentication.
# File lib/restforce/concerns/authentication.rb, line 40 def oauth_refresh? options[:refresh_token] && options[:client_id] && options[:client_secret] end
username_password?()
click to toggle source
Internal: Returns true if username/password (autonomous) flow should be used for authentication.
# File lib/restforce/concerns/authentication.rb, line 31 def username_password? options[:username] && options[:password] && options[:client_id] && options[:client_secret] end