答案1
答案2
Windows 中不存在任何证书“文件夹”;证书存储在内部数据库中(Windows 注册表),您可以使用您在原始问题中列出的方式进行交互。最简单的方法是进入该数据库只需放入certmgr.msc
您的开始/运行框即可。
如果您确实好奇,您可以在以下位置找到实际的注册表项:
\SOFTWARE\Microsoft\SystemCertificates\
适用HKEY_CURRENT_USER
于用户特定证书和HKEY_LOCAL_MACHINE
机器特定证书,但它们将是不可读的二进制块。最好使用多媒体存储我之前列出的管理单元。
答案3
以下是位置摘要(注册表项和文件):
用户级别(注册表):
HKEY_CURRENT_USER\Software\Microsoft\SystemCertificates
:包含当前用户的设置证书。
HKEY_CURRENT_USER\Software\Policies\Microsoft\SystemCertificates
:与之前的位置类似,但这对应于部署了 GPO(组策略)的用户证书。
HKEY_USERS\SID-User\Software\Microsoft\SystemCertificates
:对应于某些用户证书的配置。每个用户在注册表中都有其分支,并带有 SID(安全标识符)。
计算机级别(注册表):
HKEY_LOCAL_MACHINE\Software\Microsoft\SystemCertificates
:包含所有计算机用户的设置证书。
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\SystemCertificates
:与上一个位置类似,但这对应于部署了 GPO 的计算机证书。
服务级别(注册中心):
HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Services\ServiceName\SystemCertificates
:包含计算机上所有服务的设置证书。
Active Directory 级别(注册表):
HKEY_LOCAL_MACHINE\Software\Microsoft\EnterpriseCertificates
:在 Active Directory 级别颁发的证书。
并且还有一些与Windows证书存储相对应的文件夹和文件。
该文件夹是隐藏的,公钥和私钥位于不同的文件夹中。
用户证书(文件):
%APPDATA%\Microsoft\SystemCertificates\My\Certificates
%USERPROFILE%\AppData\Roaming\Microsoft\Crypto\RSA\SID
%USERPROFILE%\AppData\Roaming\Microsoft\Credentials
%USERPROFILE%\AppData\Roaming\Microsoft\Protect\SID
计算机证书(文件):
C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys
摘自: http://www.sysadmit.com/2017/10/windows-donde-se-guardan-certificados.html
答案4
给 PowerShell 一个机会:
Get-Childitem Cert:\currentUser -Recurse | Format-Table -AutoSize PSPath, FriendlyName, DnsNamelist