【问题标题】:Is there any equivalent to ICertRequest in dotnet 5 or dotnet 6?dotnet 5 或 dotnet 6 中是否有与 ICertRequest 等效的内容?
【发布时间】:2021-12-18 07:47:47
【问题描述】:

我有一个用 dotnet 框架编写的应用程序,我正在移植到 dotnet 5(可能不久之后会移植到 dotnet 6)。

现在它使用ICertRequest 接口 (Win32 API) 向我们的本地 CA 提交 CSR。我一辈子都找不到如何在纯托管的 dotnet 代码中执行此操作。

我查看了整个 System.Security.Cryptography 命名空间,但找不到任何东西。请帮忙?

我也不想使用 BouncyCastle。

【问题讨论】:

    标签: c# .net winapi certificate pki


    【解决方案1】:

    dotnet 5 或 dotnet 6 中是否有 ICertRequest 等价物?

    没有。

    最接近的类似物是CertificateRequest 类,可用于构建证书请求或以编程方式制作证书。将请求提交给 CA 并接收响应留给调用者作为练习。

    由于 COM 证书注册是特定于 Windows 的功能集,而 .NET 现在是跨平台产品,因此不太可能有直接版本作为 .NET 本身的一部分提供。

    可能有也可能没有封装 ICertRequest/ICEnroll 的社区包。

    【讨论】:

    • “将请求提交给 CA 并接收响应留给调用者作为练习。”好吧,这很糟糕,因为我是来电者。由于此功能可能永远不会被放入 .NET 中,因为它是跨平台的,Microsoft 希望开发人员做什么?我们如何做我们过去在 dotnet 框架中做的事情?
    • @Dbloom 如果您在带有 .NET Framework 的 Windows 上使用 COM 互操作,那么在 .NET(nee Core)上的 Windows 上也可以正常工作。它只是不适用于 Linux/Mac/等。
    • 您是说(新核心)吗?如果是这样,您是说 COM 互操作在 Windows 上的 .NET 5+ 中仍然有效吗?所以我现有的代码应该仍然有效吗?也许我的误解是 COM 互操作不能在 .NET 5+ 上工作。
    • “née”:最初称为。 “.NET Core”现在只是“.NET”。而且,是的,COM 互操作仍然有效(在 Windows 上)
    • 我今天学了一个新词。感谢您的所有帮助。
    猜你喜欢
    • 2016-03-15
    • 1970-01-01
    • 2019-11-06
    • 2021-06-25
    • 1970-01-01
    • 2018-11-09
    • 2018-04-09
    • 2023-03-17
    • 2021-11-09
    相关资源
    最近更新 更多