像StoreName和StoreLocation这样的X509Certificates枚举是否足以用于Windows和M



我是.Net和X509Certificates的新手。我将使用.net内核编写一个应用程序,以查找Windows和Mac的所有已安装证书。我在这里已经看了这个例子。我想知道

  1. 这些枚举同时适用于Windows和Macos
  2. 这是否足以在两个平台上找到所有安装的证书

谢谢。

枚举的"作用"在于您可以传入它们。但在macOS上,只有以下StoreName值才能成功:

  • My(读写,如果应用任何自定义信任规则,删除将失败)
  • 根目录(只读)
  • 不允许(只读)

My对应于System.keychain(LocalMachine)或login.keychain(CurrentUser)。

  1. 这是否足以在两个平台上找到所有安装的证书

不,它们在任何平台上都不足以查找所有安装的证书。

  • 在macOS上,可以创建任意数量的密钥链,而.NET无法枚举它们
  • 在Windows上,可以创建任意数量的自定义命名存储,而.NET无法枚举它们
  • 在这两个系统上,东西可以安装在不同的用户下

但是,在这两个平台上,枚举"可用证书"的My存储或"可信证书"的Root存储是一个足够的99%解决方案。

相关内容

  • 没有找到相关文章

最新更新