通过Windows Admin Center以管理员身份为特定用户安装证书的方法咨询
通过Windows Admin Center以管理员身份为特定用户安装证书的方法咨询
作为管理员,你完全可以不用知道目标用户的密码,就能把证书安装到他的CurrentUser\My存储里——Windows Admin Center本身的证书管理模块确实没提供直接给其他用户导入证书的选项,但咱们可以通过WAC自带的PowerShell终端来完成这个操作,具体步骤如下:
第一步:获取目标用户的SID
先在WAC的PowerShell界面里运行这条命令,把目标用户名替换成你要操作的用户账号名:Get-WmiObject Win32_UserAccount -Filter "Name='目标用户名'" | Select-Object SID执行后会得到类似
S-1-5-21-xxxxxx-xxxxxx-xxxxxx-1001这样的SID字符串,记下来备用。第二步:挂载目标用户的注册表 hive
目标用户的证书存储信息存在他的NTUSER.DAT文件里,咱们需要先把这个文件挂载到注册表中,运行这条命令(同样替换目标用户名):reg load HKU\TempUser "C:\Users\目标用户名\NTUSER.DAT"这里的
TempUser是临时的挂载名,你也可以换成其他自定义名称,只要后续命令保持一致就行。第三步:导入证书到目标用户的存储
根据你要导入的证书类型选择对应的命令:- 如果是带私钥的PFX证书:
注意把Import-PfxCertificate -FilePath "C:\你的证书路径\证书文件.pfx" -CertStoreLocation "Cert:\TempUser\My" -Password (ConvertTo-SecureString "证书密码" -AsPlainText -Force)证书密码替换成你PFX文件的实际密码,证书路径也要对应修改。 - 如果是普通的CER证书(只有公钥):
Import-Certificate -FilePath "C:\你的证书路径\证书文件.cer" -CertStoreLocation "Cert:\TempUser\My"
- 如果是带私钥的PFX证书:
第四步:卸载临时挂载的注册表 hive
证书导入完成后,一定要运行这条命令清理临时挂载的 hive,避免影响目标用户的正常使用:reg unload HKU\TempUser
另外补充下,你说Chrome不认LocalMachine\My里的证书,这是因为Chrome默认优先使用当前登录用户的证书存储,要让它识别机器级的证书需要额外配置浏览器策略,确实不如直接导入到用户个人存储来得省心。
备注:内容来源于stack exchange,提问作者KriZa
相关产品推荐
相关产品推荐

