如何使用 Powershell 获取证书的安全哈希算法
How to get a security hash algorithm for a certificate using Powershell
我需要获取具有特定哈希算法的所有证书的列表。
首先,我尝试按如下方式检索 SignatureAlgorithm:
Get-ChildItem -Recurse | select thumbprint, subject, SignatureAlgorithm
这给了我 System.Security.Cryptography.Oid
作为 SignatureAlgorithm
列的值
我尝试使用 FriendlyName
Get-ChildItem -Recurse | select thumbprint, subject, SignatureAlgorithm.FriendlyName
但是以上返回空白作为 SignatureAlgorithm
的值
如何检索 SignatureAlgorithm
的可读值?还有我如何 select 所有 SHA1
证书使用 Powershell
?
Select-Object
期望显示属性的名称(因为您没有指定参数,所以您使用的是第一个位置,即 -Property
)。没有名为 SignatureAlgorithm.FriendlyName
.
的属性
如果你使用一个计算出来的属性,你可以设计你自己的属性,其中的值是对象SignatureAlgorithm
里面的属性FriendlyName
- 属性。例如:
Get-ChildItem -Recurse | select thumbprint, subject, @{n="SignatureAlgorithm";e={$_.SignatureAlgorithm.FriendlyName}}
(n
是name
的缩写(也可以用l or label
),e
是expression
的缩写)
我需要获取具有特定哈希算法的所有证书的列表。
首先,我尝试按如下方式检索 SignatureAlgorithm:
Get-ChildItem -Recurse | select thumbprint, subject, SignatureAlgorithm
这给了我 System.Security.Cryptography.Oid
作为 SignatureAlgorithm
列的值
我尝试使用 FriendlyName
Get-ChildItem -Recurse | select thumbprint, subject, SignatureAlgorithm.FriendlyName
但是以上返回空白作为 SignatureAlgorithm
如何检索 SignatureAlgorithm
的可读值?还有我如何 select 所有 SHA1
证书使用 Powershell
?
Select-Object
期望显示属性的名称(因为您没有指定参数,所以您使用的是第一个位置,即 -Property
)。没有名为 SignatureAlgorithm.FriendlyName
.
如果你使用一个计算出来的属性,你可以设计你自己的属性,其中的值是对象SignatureAlgorithm
里面的属性FriendlyName
- 属性。例如:
Get-ChildItem -Recurse | select thumbprint, subject, @{n="SignatureAlgorithm";e={$_.SignatureAlgorithm.FriendlyName}}
(n
是name
的缩写(也可以用l or label
),e
是expression
的缩写)