IdentityShroud/IdentityShroud.Core/Model/RealmKey.cs

27 lines
801 B
C#
Raw Permalink Normal View History

2026-02-20 17:35:38 +01:00
using System.ComponentModel.DataAnnotations.Schema;
using IdentityShroud.Core.Contracts;
using IdentityShroud.Core.Security;
using Microsoft.EntityFrameworkCore;
2026-02-20 17:35:38 +01:00
namespace IdentityShroud.Core.Model;
[Table("realm_key")]
public record RealmKey
2026-02-20 17:35:38 +01:00
{
public required Guid Id { get; init; }
public required string KeyType { get; init; }
public required EncryptedDek Key { get; init; }
public required DateTime CreatedAt { get; init; }
2026-02-20 17:35:38 +01:00
public DateTime? RevokedAt { get; set; }
/// <summary>
/// Key with highest priority will be used. While there is not really a use case for this I know some users
/// are more comfortable replacing keys by using priority then directly deactivating the old key.
/// </summary>
public int Priority { get; set; } = 10;
}