Table of Contents

Namespace SEBT.Portal.Core.Models.Auth

Classes

ClaimsPrincipalExtensions

Extension methods for resolving authentication-related claims from a ClaimsPrincipal.

CoLoadedBenefitIdentifierMatch

Verifies a co-loaded user's submitted SNAP/TANF identifier against values already on file (user record and/or co-loaded Summer EBT cases from the state connector).

IdProofingBenefitIdentifierTypes

SNAP/TANF identifier options from the id-proofing onboarding form. These values are matched in-portal against co-loaded records; they are not sent to Socure as national_id. Co-loaded users who submit one of these types may be streamlined to completed proofing without a Socure match.

IdProofingKeys

Maps ProtectedResource+ProtectedAction enum pairs to the config key strings used in IdProofingRequirements.

JwtClaimTypes

Constants for JWT claim type names used in the application.

OidcClaims

Claim-name sets shared by every consumer of IdP-issued tokens.

OtpCode

Represents a one-time password (OTP) code used for authentication purposes.

PreAuthSession

server-side pre-auth session created at GET /api/auth/oidc/{stateCode}/config. Binds the OIDC PKCE flow to the browser that initiated it via the oidc_session cookie. State transitions: Created → CallbackCompleted → LoginCompleted. Any attempt to advance from a state other than the immediately preceding one fails.

Immutable: state transitions produce a new instance via with expressions so concurrent reads on a shared cache reference cannot observe partial mutations.

User

Represents a user in the system with ID proofing status.

UserIalLevelExtensions

Extension methods for resolving UserIalLevel from claims.

Structs

IdProofingDecision

Result of an identity proofing evaluation: whether the user is allowed and what level would be required if they are not.

Enums

IalLevel

Identity Assurance Level (IAL) for ID proofing requirements. Config values are bound case-insensitively (e.g. "IAL1", "ial1", "IAL1plus").

IdProofingStatus

Workflow state of ID proofing for a user. Separate from IAL (Identity Assurance Level) - status tracks process state, IAL tracks assurance achieved.

PreAuthSessionPhase

Lifecycle phases of a pre-auth session.

ProtectedAction

An action on a protected resource that requires identity assurance.

ProtectedResource

A resource protected by identity assurance requirements. Each resource may have view and/or write requirements configured.

UserIalLevel

The Identity Assurance Level (IAL) a user has achieved through ID proofing. Used for PII visibility and feature access decisions.