繁体   English   中英

如何导入pfx证书并为所有用户设置私钥权限

[英]How to import pfx certificate and set private key permissions for all users

我有自签名的pfx证书,并且具有2个用户(A和B)的计算机。 我需要使用某些命令行工具安装证书,并且该证书应对所有用户可用。

如果用户A在LocalMachine \\ My或LocalMachine \\ Root中手动安装证书,则该证书仅对用户A可用,因为用户B没有私钥权限。

我试过了

winhttpcertcfg.exe -i cert.pfx -p pass -a Everyone -c LOCAL_MACHINE\Root

但这无济于事,证书仅适用于运行winhttpcertcfg的用户。

我试过了

winhttpcertcfg.exe -i cert.pfx -p pass -a Everyone -c LOCAL_MACHINE\My

但无论-c参数如何,它都将证书安装在Root中而不是My中。

我试过了

certutil -f -p pass -importpfx "cert.pfx"

但这无济于事,证书仅适用于运行certutil的用户。

如果我的商店的问题可以手动解决:

  • 右键单击本地计算机证书管理器中的证书->所有任务->管理私钥
  • 添加用户A和B并设置必要的权限。

但是我需要在安装应用程序时使用的一些自动方式。

要导入证书,可以使用此powershell命令

Import-PfxCertificate -FilePath $certFilename cert:$certStoreLocation -Password $mypwd

并使用它来管理权限

如何使用Powershell向用户授予证书私钥上的权限?

尝试向私钥授予权限时,Import-PfxCertificate出现问题。 返回的证书和证书对象使用

cert:\LocalMachine\My 

两者的私钥属性都为null。

我必须使用x509证书存储区和x509certifcate2对象导入证书和私钥。 然后我就可以在Powershell中更改私钥权限

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM