26 lines
716 B
C#
26 lines
716 B
C#
namespace AuthHex.Models
|
|
{
|
|
public class UserSession
|
|
{
|
|
|
|
public Guid SessionId { get; set; }
|
|
|
|
public Guid UserId { get; set; }
|
|
|
|
public User User { get; set; } = null!;
|
|
|
|
public string RefreshTokenHash { get; set; } = string.Empty;
|
|
|
|
public string? DeviceName { get; set; }
|
|
public string? OS { get; set; }
|
|
public string? Browser { get; set; }
|
|
public string? IPAddress { get; set; }
|
|
|
|
public DateTime ExpiresAt { get; set; }
|
|
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
|
|
public DateTime? RevokedAt { get; set; }
|
|
|
|
public bool IsActive => RevokedAt == null && ExpiresAt > DateTime.UtcNow;
|
|
}
|
|
}
|