.NET Core:进程之间证书的安全切换

问题描述 投票:0回答:1

我有两个程序集(都是 .NET 6.0),第一个是在提升的权限下运行的引导程序,从机器存储加载 X509 证书。证书必须移交给第二个进程,该进程使用它们并在不同的用户帐户下以非提升的方式运行。

如何安全地将证书从引导程序移交给实际应用程序?内存映射文件还允许不同进程访问,这不仅仅是一个安全缺陷。从引导程序捕获应用程序的输入流似乎是不可能的。未提升的应用程序无法访问机器存储本身。

有没有合适的解决方案?或者至少有一些最佳实践?

BR

c# security .net-6.0 x509certificate2
1个回答
0
投票

怎么样,

  1. 保守他们之间共同的秘密。
  2. Bootstrapper 将使用密钥加密证书并将其存储在某个位置。
  3. 应用程序将从同一位置读取证书并使用公共秘密进行解密。您还可以根据今天的日期动态生成秘密,并用通用随机数填充。
© www.soinside.com 2019 - 2024. All rights reserved.