【发布时间】:2020-06-03 13:21:26
【问题描述】:
这是我的要求:
- 一个数据库,其中至少 1 个表上的至少 1 个列是敏感的,应该加密
- DBA 和使用 SSMS 访问数据库的人员应该无法查看列的明文值
- 会有一个客户端 asp.net 应用程序能够检索和解密数据,以及插入和更新到表中
因此,如果我在必要的列上启用始终加密,任何正常查询都会检索这些列的密文。美好的。
客户端应用程序将在连接字符串上有Column Encryption Setting=Enabled,因此将能够加密和解密数据。
但是如何阻止某人连接 SSMS 并启用相同的列加密设置?然后他们可以从表格中选择并查看明文。
简而言之,我如何应用权限,以便只有特定 AD 组中的人员(不包括 DBA)有权访问加密密钥来解密数据?
是否像确保 .net 应用程序所在的 IIS 不在同一台服务器上一样简单,并且只在该 IIS 机器上创建列主密钥证书?
【问题讨论】:
标签: asp.net encryption ssms always-encrypted