首先介绍一下背景;我们在 Windows Server 2016 上运行 IIS10,并且我们有一个 SQL 数据库,其中包含在运行 2016 的单独 SQL 服务器上使用 Always Encrypted 加密的列。有问题的应用程序是 C#.NET 中的 ASP MVC,使用通过包含Column Encryption Setting=Enabled
参数的 Linq 的连接字符串。私钥位于 iis apppool\defaultapppool 的个人证书目录中,并且还放置在本地计算机中,并为应用程序池提供访问权限。
我已经确定,当我的机器(创建密钥的地方)访问该站点时,数据被解密,然后在所有其他连接上工作。但是,几分钟后我的机器没有连接,其他用户将收到有关证书不存在的错误。
我目前有一个计划任务每三分钟运行一次,以在 chrome 中加载站点以使其保持活动状态,但我想要一个永久的解决方案。
有任何想法吗?