2015-01-23 16 views
5

Bazı veritabanı sütunlarını şifrelemem gerekiyor (Sql Server 2012'de). Sütun düzeyinde şifreleme kullanmamız gerektiğine karar verildi (sql serverde uygulandı). Uygulama tarafında bazı karmaşık alan modellerinin üstünde bir web api oluşturacağım. Temiz bir alan modelini korumak için Entity Framework'ün ilk yaklaşımını kullanmak istiyorum. Burada saklı prosedürlere başvurmayı içermeyen işe yarar bir çözüm var mı? İdeal olarak, sql şifreleme/şifre çözme işlevlerini yapmak için belirli alanları sarmak üzere varlık çerçevesi tarafından oluşturulan sql'i bir şekilde işlemek isterim.Sql Server Sütun Düzeyiyle Şifreleme Varlık Çerçevesi Şifreleme

İdeal olarak, böyle bir şey: SQL Server 2012'de

modelBuilder.Entity<MyTable>().ToTable("Table1").Property(p => p.SensativeData).encrypt("keyName",authenticatorFunc); 
+0

Bazıları etrafa baktıktan sonra, yine de Entity Framework için birkaç seçeneğim kaldı. Diğer taraftan NHibernate, bunu sırasıyla okuma ve yazma için alan formülleri ve Kullanıcı Türleri aracılığıyla desteklemektedir. – Noel

cevap

3

, sütun düzeyi şifreleme

  1. Varlık çerçevesinde Özel Şifreleme işlevi tanımlanması, başlıca iki yolu yani yapılabilir. this blog
  2. SQL Hücre Seviye Şifreleme uygulama this blog kullanarak ve sonuç kümesini almak (tablolarda belirtilen alan için şifre çözme kodu içeren) saklı yordam kullanılarak (burada açık simetrik anahtar kodu çalıştırmak) DBContext Class'ta varlık çerçevesinde yapılır. SQL sunucusunda

2016 yeni özellik yani orada, Daima şifrelenir ve varlık çerçevesi here yılında uygulanmasını vardır.

0

Crypteron herhangi bir SQL Server ile çalışabilir bir ücretsiz Varlık Framework adaptörü, CipherDb sahiptir. Aslında, Crypteron CipherDb herhangi bir Entity Framework uyumlu veritabanı ile çalışır - hatta MySQL, PostGreSQL ve daha fazlası.

Sen [Secure] ile veri modelini açıklama ya Secure_SocialSecurityNumber gibi bir şey için bir özellik (Secure_ anahtar parçasıdır) isim ve CipherDb otomatik veri şifreleme, sabotaj koruması, güvenli anahtar depolama, güvenli anahtar dağıtımı, önbelleğe alma, anahtar rulo gerçekleştirir olabilir Aşırı, ACL ve daha fazlası. Ayrıca akışları, dosyalar, nesneleri, mesaj kuyrukları, NoSQL vb korumak için Crypteron kullanabilirsiniz

Sen https://github.com/crypteron/crypteron-sample-apps

Disclaimer GitHub üzerinde örnek uygulama da bulabilirsiniz: Orada çalışmak ve biz ücretsiz topluluk sürümü var herkesin kullanabileceği