Class: StandardId::Web::TokenManager

Inherits:
Object
  • Object
show all
Defined in:
lib/standard_id/web/token_manager.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request) ⇒ TokenManager

Returns a new instance of TokenManager.



6
7
8
# File 'lib/standard_id/web/token_manager.rb', line 6

def initialize(request)
  @request = request
end

Instance Attribute Details

#requestObject (readonly)

Returns the value of attribute request.



4
5
6
# File 'lib/standard_id/web/token_manager.rb', line 4

def request
  @request
end

Instance Method Details

#create_browser_session(account) ⇒ Object



10
11
12
13
14
15
16
17
# File 'lib/standard_id/web/token_manager.rb', line 10

def create_browser_session()
  StandardId::BrowserSession.create!(
    account: ,
    ip_address: StandardId::Utils::IpNormalizer.normalize(request.remote_ip),
    user_agent: request.user_agent,
    expires_at: StandardId::BrowserSession.expiry
  )
end

#create_remember_token(password_credential) ⇒ Object



19
20
21
22
23
24
25
26
27
# File 'lib/standard_id/web/token_manager.rb', line 19

def create_remember_token(password_credential)
  {
    value: password_credential.generate_token_for(:remember_me),
    expires: StandardId::BrowserSession.remember_me_expiry,
    httponly: true,
    secure: request.ssl?,
    same_site: :lax
  }
end