конфигурацией. Однако похоже, что данные не сохраняются в зашифрованном виде, как предполагалось.
Вот мой код:
csharp
Копировать код
public class Encrptconfig: IEntityTypeConfiguration
{
public void Configure(EntityTypeBuilder builder)
{
builder.IsMultiTenant();
builder.Property(e => e.Name)
.IsEncrypted(SoftFluent.ComponentModel. DataAnnotations.StorageFormat.Base64)
.IsRequired();
}
открытый класс DataEncryption: AuditableEntity, IAggregateRoot
{
публичная строка? Имя {получить; набор;
Код: Выделить всё
public string? Email { get; set; }
публичный класс ApplicationDbContext: BaseDbContext
{
частный IEncryptionProvider _provider только для чтения;
Код: Выделить всё
public ApplicationDbContext()
{
var encryptionKeyBytes = Convert.FromBase64String("TGVhZHJhdA==");
var encryptionIvBytes = Convert.FromBase64String("TGVhZHJhdA==");
_provider = new AesProvider(encryptionKeyBytes, encryptionIvBytes);
}
public DbSet DataEncryption => Set();
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.UseEncryption(_provider);
base.OnModelCreating(modelBuilder);
}
Проблема:
Я ожидаю, что при сохранении данных в таблице DataEncryption свойство Name должно храниться в
зашифрованный формат, и когда я получу его, я должен получить расшифрованное значение. Однако этого
не происходит.
Кто-нибудь знает, что может пойти не так? Любая помощь будет оценена!`
Подробнее здесь: https://stackoverflow.com/questions/791 ... ng-as-expe