class Silkey::Models::SSOParams

Attributes

params[RW]

Public Class Methods

new(params = {}) click to toggle source
# File lib/silkey/models/sso_params.rb, line 8
def initialize(params = {})
  @params = params
end

Public Instance Methods

required_present?() click to toggle source
# File lib/silkey/models/sso_params.rb, line 20
def required_present?
  Silkey::Settings.SSO_PARAMS[:required].all? do |k|
    if Silkey::Utils.empty?(params[k.to_sym])
      Silkey::LoggerService.warn(
        "Missing #{k}. This parameters are required for Silkey SSO: " +
          Silkey::Settings.SSO_PARAMS[:required].join(', ')
      )

      return false
    end

    true
  end
end
sign(private_key) click to toggle source
# File lib/silkey/models/sso_params.rb, line 12
def sign(private_key)
  params[:ssoTimestamp] = Utils.current_timestamp unless Utils.timestamp?(params[:ssoTimestamp])

  params[:ssoSignature] = Silkey::Utils.sign_message(private_key, SDK.message_to_sign(params))

  self
end
validate() click to toggle source
# File lib/silkey/models/sso_params.rb, line 35
def validate
  raise 'Missing required params' unless required_present?

  self
end