using System; using System.Collections.Generic; using zero.Core.Entities; namespace zero.Core.Identity { public interface IIdentityUserWithRoles : IIdentityUser { /// /// The roles (aliases) of the user /// List RoleIds { get; set; } } public interface IIdentityUser : IZeroEntity { /// /// Optional username (can also be used as login when configured) /// string Username { get; set; } /// /// E-Mail address which is also used as the username /// string Email { get; set; } /// /// Whether the email address has been confirmed /// bool IsEmailConfirmed { get; set; } /// /// The password hash /// string PasswordHash { get; set; } /// /// The security stamp /// string SecurityStamp { get; set; } /// /// The user's claims, for use in claims-based authentication. /// List Claims { get; set; } /// /// Number of times sign in failed. /// int AccessFailedCount { get; set; } /// /// Whether the user is locked out. /// bool LockoutEnabled { get; set; } /// /// When the user lock out is over. /// DateTimeOffset? LockoutEnd { get; set; } ///// ///// Whether 2-factor authentication is enabled or not ///// //bool TwoFactorEnabled { get; set; } ///// ///// The two-factor authenticator key ///// //string TwoFactorAuthenticatorKey { get; set; } ///// ///// The list of two factor authentication recovery codes ///// //List TwoFactorRecoveryCodes { get; set; } } }