using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using IdentityShroud.Core.Security; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; namespace IdentityShroud.Core.Model; [Table("client_secret")] public class ClientSecret { [Key] public int Id { get; set; } public Guid ClientId { get; set; } public DateTime CreatedAt { get; set; } public DateTime? Expires { get; set; } public DateTime? RevokedAt { get; set; } public required EncryptedValue Secret { get; set; } } public class ClientSecretConfiguration : IEntityTypeConfiguration { public void Configure(EntityTypeBuilder b) { b.ToTable("client_secret"); b.HasKey(e => e.Id); b.ComplexProperty(e => e.Secret); } }