有没有办法以编程方式编辑给定 x.509 证书启用的用途?

此功能可通过证书 mmc 管理单元(下面的超链接)使用,但我需要通过代码执行该操作。最好是C#。

修改证书的属性

有帮助吗?

解决方案

MMC 可以做任何 Crypto API 可以做的事情,并且有很多与证书相关的功能,例如 证书添加增强型密钥使用标识符 或者 CertSetCertificateContextProperty. 。有一个完整的例子 C 程序示例:获取和设置证书属性, ,包括对“增强密钥用法”的修改,指定证书有效的用途。例如,要使服务器端的证书对 SSL 有效,您必须添加 EKU OID 1.3.6.1.5.5.7.3.1 (又名。'服务器身份验证'),请参阅 配置 SSL 使用的证书.

C# 的等价物是 X509KeyUsage扩展 班级。有关示例,请参阅类规范的链接。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top