Class UserEntity
- Namespace
- SEBT.Portal.Infrastructure.Data.Entities
- Assembly
- SEBT.Portal.Infrastructure.dll
Entity model for tracking user IAL level.
public class UserEntity
- Inheritance
-
objectUserEntity
Properties
CoLoadedLastUpdated
The date and time when the co-loaded status was last updated from the source system.
public DateTime? CoLoadedLastUpdated { get; set; }
Property Value
- DateTime?
CreatedAt
The date and time when the user was first created.
public DateTime CreatedAt { get; set; }
Property Value
- DateTime
DateOfBirth
Encrypted yyyy-MM-dd payload (or transitional ISO plaintext during migration/backfill).
public string? DateOfBirth { get; set; }
Property Value
- string
AES-GCM ciphertext for the canonical (lowercase) email. Equality lookup uses EmailHash.
public string? Email { get; set; }
Property Value
- string
EmailHash
HMAC-derived lookup fingerprint for canonical email equality in SQL.
public string? EmailHash { get; set; }
Property Value
- string
ExternalProviderId
The subject identifier from the external identity provider (e.g., PingOne sub claim). Null for OTP-authenticated users.
public string? ExternalProviderId { get; set; }
Property Value
- string
IalLevel
The Identity Assurance Level (IAL) this user has achieved. Stored as int for enum valid values: 0 = None, 1 = IAL1, 2 = IAL1plus, 3 = IAL2
public int IalLevel { get; set; }
Property Value
- int
Id
The unique identifier for the user (primary key).
public Guid Id { get; set; }
Property Value
- Guid
IdProofingAttemptCount
Number of times this user has submitted ID proofing to Socure.
public int IdProofingAttemptCount { get; set; }
Property Value
- int
IdProofingCompletedAt
The date and time when ID proofing was completed.
public DateTime? IdProofingCompletedAt { get; set; }
Property Value
- DateTime?
IdProofingSessionId
The session ID from the ID proofing provider (e.g., Socure).
public string? IdProofingSessionId { get; set; }
Property Value
- string
IdProofingStatus
Workflow state of ID proofing (NotStarted, InProgress, Completed, Failed, Expired)
public int IdProofingStatus { get; set; }
Property Value
- int
IsCoLoaded
Indicates whether the user's record was co-loaded from an external system. This value is populated from external systems via batch processes or database queries.
public bool IsCoLoaded { get; set; }
Property Value
- bool
Phone
Phone number when used as household identifier.
public string? Phone { get; set; }
Property Value
- string
SnapId
SNAP case/client ID when used as household identifier.
public string? SnapId { get; set; }
Property Value
- string
Ssn
SSN or last-4 when used as household identifier (per state policy).
public string? Ssn { get; set; }
Property Value
- string
TanfId
TANF case/client ID when used as household identifier.
public string? TanfId { get; set; }
Property Value
- string
UpdatedAt
The date and time when the user record was last updated.
public DateTime UpdatedAt { get; set; }
Property Value
- DateTime