无法从C#

时间:2017-09-16 19:37:44

标签: c# powershell

我已在PowerScript脚本下执行使用PowerShell在C#中使用ACMESharp客户端创建LetsEncrypt证书。

Import-Module ACMESharp
if (!(Get-ACMEVault)) 
{
    Initialize-ACMEVault 
}
New-ACMERegistration -Contacts test@xyz.com -AcceptTos

New-ACMEIdentifier -Dns test.xyz.com -Alias test.xyz.com_Identifier
Complete-ACMEChallenge test.xyz.com_Identifier -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = 'test.xyz.com'}
Submit-ACMEChallenge test.xyz.com_Identifier -ChallengeType http-01
Update-ACMEIdentifier test.xyz.com_Identifier -ChallengeType http-01
Update-ACMEIdentifier test.xyz.com_Identifier

执行脚本后,它生成了有效证书,如下所示。

IdentifierPart : test.xyz.com_Identifier
IdentifierType : dns
Identifier     : test.xyz.com
Uri            : https://acme-v01.api.letsencrypt.org/acme/authz/_uNCmvqY9cgUZItjK-VYvgUJu-Ucj5JUCjJb9Vw7tTQ
Status         : valid
Expires        : 10/16/2017 12:31:35 PM
Challenges     : {, iis, }
Combinations   : {1, 2, 0}

现在,我想获得在这种情况下有效的状态认证注册。我想得到状态,并根据我想继续执行更新操作,直到它不成功。

1 个答案:

答案 0 :(得分:0)

您可以使用以下方法查询本地状态:

$status  = Get-ACMEIdentifier test.xyz.com_Identifier
$statusName = $status.Status
Write-Host "Current status is $statusName"

如果您想使用LetsEncrypt中的实际内容更新本地记录,请使用

Update-ACMEIdentifier test.xyz.com_Identifier

更新您的本地信息