Class: SignInService::Sts

Inherits:
Object
  • Object
show all
Includes:
Config, Token
Defined in:
lib/sign_in_service/sts.rb,
lib/sign_in_service/sts/token.rb,
lib/sign_in_service/sts/config.rb

Defined Under Namespace

Modules: Config, Token

Constant Summary collapse

REQUIRED_ATTRIBUTES =
%i[user_identifier issuer service_account_id private_key_path base_url].freeze

Constants included from Token

Token::ACCESS_TOKEN_DURATION, Token::JWT_ENCODE_ALGORITHM, Token::TOKEN_PATH

Constants included from Config

Config::DEFAULT_STS_BASE_URL

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Token

#token

Constructor Details

#initialize(user_identifier:, **options) ⇒ Sts

Returns a new instance of Sts.



25
26
27
28
29
30
31
32
33
34
35
# File 'lib/sign_in_service/sts.rb', line 25

def initialize(user_identifier:, **options)
  @user_identifier = user_identifier
  @issuer = options[:issuer] || Config.issuer
  @scopes = options[:scopes] || Config.scopes || []
  @service_account_id = options[:service_account_id] || Config.
  @user_attributes = options[:user_attributes] || Config.user_attributes
  @private_key_path = options[:private_key_path] || Config.private_key_path
  @base_url = options[:base_url] || Config.base_url

  validate_arguments!
end

Instance Attribute Details

#base_urlObject (readonly)

Returns the value of attribute base_url.



22
23
24
# File 'lib/sign_in_service/sts.rb', line 22

def base_url
  @base_url
end

#issuerObject (readonly)

Returns the value of attribute issuer.



22
23
24
# File 'lib/sign_in_service/sts.rb', line 22

def issuer
  @issuer
end

#private_key_pathObject (readonly)

Returns the value of attribute private_key_path.



22
23
24
# File 'lib/sign_in_service/sts.rb', line 22

def private_key_path
  @private_key_path
end

#scopesObject (readonly)

Returns the value of attribute scopes.



22
23
24
# File 'lib/sign_in_service/sts.rb', line 22

def scopes
  @scopes
end

#service_account_idObject (readonly)

Returns the value of attribute service_account_id.



22
23
24
# File 'lib/sign_in_service/sts.rb', line 22

def 
  @service_account_id
end

#user_attributesObject (readonly)

Returns the value of attribute user_attributes.



22
23
24
# File 'lib/sign_in_service/sts.rb', line 22

def user_attributes
  @user_attributes
end

#user_identifierObject (readonly)

Returns the value of attribute user_identifier.



22
23
24
# File 'lib/sign_in_service/sts.rb', line 22

def user_identifier
  @user_identifier
end

Class Method Details

.configure {|Config| ... } ⇒ Object

Yields:



17
18
19
# File 'lib/sign_in_service/sts.rb', line 17

def configure
  yield Config
end