Class: UserIdentity

Inherits:
Common::RedisStore show all
Defined in:
app/models/user_identity.rb

Overview

Stores attributes used to identify a user. Serves as a set of inputs to an MVI lookup. Also serves as the receiver of identity attributes received from alternative sources during the SSO flow.

Direct Known Subclasses

IAMUserIdentity

Constant Summary

Constants inherited from Common::RedisStore

Common::RedisStore::REQ_CLASS_INSTANCE_VARS

Instance Method Summary collapse

Methods inherited from Common::RedisStore

create, delete, #destroy, #destroyed?, exists?, #expire, find, find_or_build, #initialize, #initialize_dup, keys, #persisted?, pop, redis_key, redis_store, redis_ttl, #save, #save!, #ttl, #update, #update!

Constructor Details

This class inherits a constructor from Common::RedisStore

Instance Method Details

#loa3?Boolean

LOA3 no longer just means ID.me FICAM LOA3. It could also be DSLogon or MHV Premium users. It could also be DSLogon or MHV NON PREMIUM users who have done ID.me FICAM LOA3. Additionally, LOA3 does not automatically mean user has opted to have MFA.

Returns:

  • (Boolean)


47
48
49
# File 'app/models/user_identity.rb', line 47

def loa3?
  loa && loa[:current].try(:to_i) == LOA::THREE
end

#loa_highest_presentObject (private)



58
59
60
# File 'app/models/user_identity.rb', line 58

def loa_highest_present
  errors.add(:loa, 'loa[:highest] is not present!') if loa[:highest].blank?
end