如何使用 PowerShell 獲取 Windows 證書詳細資訊?
我們知道 Windows 證書駐留在證書儲存中,但有時根據名稱查詢證書或獲取特定證書的詳細資訊可能會很麻煩。
您可以使用 MMC 或使用 **CertMgr.msc** 命令訪問證書儲存。證書儲存在 CurrentUser、ServiceAccount 和本地計算機中。要使用 PowerShell 訪問證書儲存,您需要訪問 PSDrive,證書儲存在名為 **Cert** 的驅動器中,如下所示。
PS C:\> Get-PSDrive cert | ft -AutoSize Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- Cert Certificate \
假設我們要檢索儲存在本地計算機帳戶的根目錄中的證書的詳細資訊,則可以使用以下命令。
示例
Get-ChildItem Cert:\LocalMachine\Root\
輸出
PSParentPath: Microsoft.PowerShell.Security\Certificate::LocalMachine\Root Thumbprint Subject ---------- ------- CDD4EEAE6000AC7F40C3802C171E30148030C072 CN=Microsoft Root Certificate Authority BE36A4562FB2EE05DBB3D32323ADF445084ED656 CN=Thawte Timestamping CA, OU=Thawte Ce A43489159A520F0D93D032CCAF37E7FE20A8B419 CN=Microsoft Root Authority, OU=Microso 92B46C76E13054E104F230517E6E504D43AB10B5 CN=Symantec Enterprise Mobile Root for 8F43288AD272F3103B6FB1428485EA3014C0BCFE CN=Microsoft Root Certificate Authority 7F88CD7223F3C813818C994614A89C99FA3B5247 CN=Microsoft Authenticode(tm) Root Auth
或者您也可以使用以下命令,
Get-Item Cert:\LocalMachine\Root\* | ft -AutoSize
以下命令將獲取所有 Microsoft 證書。
Get-ChildItem Cert:\LocalMachine\Root\ | where{$_.Subject -like "*Microsoft*"}要查詢特定證書,您應該知道證書的友好名稱。例如,要從根儲存中查詢 **“DigiCert”** 證書,
示例
Get-ChildItem Cert:\LocalMachine\Root\ | where{$_.FriendlyName -eq 'DigiCert'}輸出
Thumbprint Subject ---------- ------- A8985D3A65E5E5C4B2D7D66D40C6DD2FB19C5436 CN=DigiCert Global Root CA, OU=www.digicert.com, 0563B8630D62D75ABBC8AB1E4BDFB5A899B24D43 CN=DigiCert Assured ID Root CA, OU=www.digicert.com
要直接從 **LocalComputer、CurrentUser** 或 **Root** 儲存中搜索,請使用 **-Recurse** 引數。
Get-ChildItem Cert:\LocalMachine\ -Recurse | where{$_.FriendlyName -eq 'DigiCert'}獲取指紋或友好名稱後,可以使用 fl * 管道獲取證書的完整詳細資訊。
Get-ChildItem Cert:\LocalMachine\root | where{$_.FriendlyName -eq 'DigiCert'} | fl *對於遠端伺服器,我們可以使用 **Invoke-Command**,以下示例將獲取來自遠端伺服器的證書。
示例
Invoke-Command -ComputerName Test1Comp, Test2Comp -Scriptblock{
Get-ChildItem Cert:\LocalMachine\root | where{$_.FriendlyName -eq 'DigiCert'}
}
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP