using Clarity.Server.Data; using System.ComponentModel.DataAnnotations.Schema; namespace Clarity.Server.Entity { public class Profile : IPIIEntity { public Guid Id { get; set; } /// Keycloak subject ID (the "sub" claim). Unique per user. public string KeycloakSubject { get; set; } = string.Empty; // Actual Application data [PiiData] public string FirstName { get; set; } [PiiData] public string MiddleName { get; set; } [PiiData] public string LastName { get; set; } [PiiData] public string Ssn { get; set; } // Audit // Onboarding Flow public bool OnboardingComplete { get; set; } = false; public DateTimeOffset CreatedAt { get; set; } = DateTimeOffset.UtcNow; public byte[] EncryptedDek { get; set; } = Array.Empty(); public string Tenant { get; set; } = string.Empty; } }