使用PSKeyVault证书向Azure服务主体添加身份验证时出现请求错误

使用PSKeyVault证书向Azure服务主体添加身份验证时出现请求错误,azure,powershell,active-directory,azure-active-directory,Azure,Powershell,Active Directory,Azure Active Directory,我有一个工作脚本,用于获取证书并将其分配给Azure服务主体进行身份验证: $rawData = $Certificate.Certificate.GetRawCertData() $base64Value = [System.Convert]::ToBase64String($rawData) $hash = $Certificate.Certificate.GetCertHash() $base64Thumbprint = [System.Convert]:

我有一个工作脚本,用于获取证书并将其分配给Azure服务主体进行身份验证:

    $rawData = $Certificate.Certificate.GetRawCertData()
    $base64Value = [System.Convert]::ToBase64String($rawData)

    $hash = $Certificate.Certificate.GetCertHash()
    $base64Thumbprint = [System.Convert]::ToBase64String($hash)

    New-AzureADApplicationKeyCredential `
            -ObjectId $app.ObjectId `
            -CustomKeyIdentifier $base64Thumbprint `
            -Type AsymmetricX509Cert `
            -Usage Verify `
            -Value $base64Value `
            -StartDate $Certificate.Created `
            -EndDate $Certificate.Certificate.NotAfter
模块更新后,收到的证书型号从[Microsoft.Azure.Commands.KeyVault.Models.KeyVault证书]更改为新的AzureADApplicationKeyCredential,并返回此错误:

Code: Request_BadRequest
Message: When present, application key identifier cannot be empty and can be at most 32 bytes.
Parameter name: applicationKeyIdentifierValue
RequestId: 95338cec-c81f-436d-a692-e49784b3fd1a
DateTimeStamp: Tue, 28 Aug 2018 22:47:44 GMT
HttpStatusCode: BadRequest
HttpStatusDescription: Bad Request
HttpResponseStatus: Completed

问题是,我找不到旧的KeyVaultCertificate模型的技术文档来将其与新的进行比较,即使在示例中,给出的也是一个X509Certificate2,因此我不知道我缺少了什么

这可能是azure powershell github repo上出现问题的一个很好的候选。在这里打开一个问题:

我认为KeyVault直接将证书存储为证书。我想用…键。。。cmdlet保留用于存储密码之类的内容。但我可能错了。从新的AzureKeyVaultCertificatePolicy开始,然后继续工作。当凭证描述太长时,我得到了这个。