如何使用PowerShell获取Azure密钥保管库证书的激活日期
获取Azure密钥保管库证书的激活日期(PowerShell)
Get-AzKeyVaultCertificate返回的顶层对象确实不会直接显示证书的激活日期,因为该信息存储在证书的X.509详情中,需要通过关联的密钥保管库机密来解析。
以下是具体的PowerShell操作步骤:
- 先获取目标证书的基本对象,拿到它对应的机密ID
- 通过机密ID获取证书的原始数据,解析为X509证书对象
- 从X509对象中提取激活日期(
NotBefore属性)和过期日期(NotAfter属性)
# 替换为你的密钥保管库名称和证书名称 $vaultName = "your-keyvault-name" $certName = "your-certificate-name" # 获取证书基础信息 $cert = Get-AzKeyVaultCertificate -VaultName $vaultName -Name $certName # 获取关联的机密并解析为X509证书 $secret = Get-AzKeyVaultSecret -VaultName $vaultName -Name $cert.Name $certBytes = [Convert]::FromBase64String($secret.SecretValueText) $x509Cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($certBytes) # 提取并输出激活日期 $activationDate = $x509Cert.NotBefore Write-Host "证书激活日期: $activationDate" # 可选:输出过期日期 $expirationDate = $x509Cert.NotAfter Write-Host "证书过期日期: $expirationDate"
另外,如果是配置了自动续订的证书,你也可以通过证书的策略属性查看预期的有效期配置,但实际激活日期仍以X509证书的NotBefore为准:
# 查看证书策略中的有效期设置(单位:月) $cert.Policy.ValidityInMonths
内容的提问来源于stack exchange,提问作者user1335978
相关产品推荐
相关产品推荐

