dotnet / dotnet/EntityFramework.Docs
Document guidance on implementing application level encryption on entity properties
- Dominant language
- Mermaid
- Stars
- 1.7k
- Forks
- 2k
- Avg merge
- 7d 23h
- Merged PRs (30d)
- 16
Description
We recently worked on a project where we needed to provide encryption of sensitive properties managed by entity framework core. We ended up landed on using the approach documented in [this repo](https://github.com/Eastrall/EntityFrameworkCore.DataEncryption). However, it would appear that SQL Always Encrypted may be a more officially supported implementation of application level encryption for properties/columns. At least when using Azure SQL or SQL Server.
It would be helpful if the [efcore docs](https://docs.microsoft.com/en-us/ef/core/) provided some guidance on approaches for application level encryption by provider.
The approach we took I believe would be more generic and probably work with other providers such as cosmos since it does not have any dependencies to SQL Server. However, that comes with a trade off of rolling our own encryption provider/service. Therefore, something like SQL Always encrypted maybe favored when using SQL Server or Azure SQL since its managed by the framework.
cc @ajcvickers @JeremyLikness
Contributor guide
Assessment
This issue has not been assessed yet.