为了账号安全,请及时绑定邮箱和手机立即绑定

.NET 的 X509Store 可以用于从远程 Linux 商店获取证书吗?

.NET 的 X509Store 可以用于从远程 Linux 商店获取证书吗?

C#
慕婉清6462132 2021-06-16 18:15:59
我正在编写一个服务来定期遍历生产中远程服务器上的证书存储,目的是跟踪使用的证书、位置和到期日期,以防某些未按要求更新。遍历 Windows 服务器按预期工作。但我不确定在 (Ubuntu) linux 上如何处理 Tomcat 商店。X509Store 对象是否能够以远程 Linux 机器为目标?StoreName 和 StoreLocation 概念如何映射到那里?如何进行身份验证?我假设它需要一个 SSH 会话来尝试连接到商店。是的,我不知道从哪里开始。using(var store = new X509Store($@"\\{serverName}\{storeName}", StoreLocation.LocalMachine)){    store.Open(OpenFlags.ReadOnly);    foreach(var cert in store.Certificates)    {        var issuedTo = cert.GetNameInfo(X509NameType.SimpleName, false);
查看完整描述

1 回答

?
慕村225694

TA贡献1880条经验 获得超4个赞

不可以。Linux 上的 X509Store API 尝试将 Windows 行为模拟到本地进程,但它没有远程功能。

在 Windows 上,X509Store 的真正实现是 CAPI CertStore* API,它具有内在的跨机器通信能力(可能通过 WinRPC);但它们基本上是操作系统的一部分。

在 Linux 上,该功能仅由 System.Security.Cryptography.X509Certificates 库提供,因此根本没有任何远程侦听功能。

在 macOS 上,可能没有任何东西可以远程监听,但 X509Store 类是 Security.framework 的 SecKeychain* 和 SecTrust* API 的解释和投影,因此可能在较低级别存在某种程度的远程交互。


查看完整回答
反对 回复 2021-06-26
  • 1 回答
  • 0 关注
  • 116 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信