Why am I getting "Key Password Entry Date Invalid". trying to create an Active Directory principal

I was trying to consolidate a bunch of operations around creating and updating AD services and applications. The stream I ran into is the following:

  • Get a certificate from an Azure key store
  • Create a Service Principle (and Application) using a certificate for authentication.
PS> Get-AzureKeyVaultCertificate -VaultName certs -Name CertName

Name: CertName
Certificate: [Subject]
                CN = certName.foo.com

              [Issuer]
                CN = certName.foo.com

              [Serial Number]
                xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

              [Not Before]
                6/2/2017 5:41:26 PM

              [Not After]
                6/2/2018 5:51:26 PM

              [Thumbprint]
                XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Id: https://certs.vault.azure.net:443/certificates/certname/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
KeyId: https://certs.vault.azure.net:443/keys/certname/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
SecretId: https://certs.vault.azure.net:443/secrets/certname/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Thumbprint: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Tags: {[Thumbprint, XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX]}
Enabled: True
Created: 6/3/2017 2:11:31 AM
Updated: 6/3/2017 2:11:31 AM

PS> New-AzureRmADServicePrincipal -DisplayName "Cert access" -CertValue $ ([System.Convert] :: ToBase64String ($ cert.Certificate.GetRawCertData ())) -StartDate $ cert.Certificate.GetEffective.DateStringate () -Effective.Certificate .GetExpirationDateString ()

New-AzureRmADServicePrincipal: Key credential start date is invalid.
At line: 1 char: 1
+ New-AzureRmADServicePrincipal -DisplayName "Cert access" - ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo: InvalidOperation: (:) [New-AzureRmADServicePrincipal], Exception
    + FullyQualifiedErrorId: Request_BadRequest, Microsoft.Azure.Commands.ActiveDirectory.NewAzureADServicePrincipalCommand

Why can I get the Key Start Date Invalid ?

+3


source to share


1 answer


According to your error log, it seems that the time format is incorrect. I suggest you use [System.DateTime]::Now

to set the time. I am testing in my lab, I am not responding to your error log, the script works for me. I suggest you check.

##import certificate to key valut
$Password = ConvertTo-SecureString -String "*******" -AsPlainText -Force
Import-AzureKeyVaultCertificate -VaultName "shuikey" -Name "ImportCert01" -FilePath "C:\shui.pfx" -Password $Password
##set start time and expire time
$now = [System.DateTime]::Now
$yearfromnow = $now.AddYears(1)
##Get certificate from key vault
$cert=Get-AzureKeyVaultCertificate -VaultName certs -Name CertName

New-AzureRmADServicePrincipal -DisplayName "Cert access" -CertValue $([System.Convert]::ToBase64String($cert.Certificate.GetRawCertData())) -StartDate $now -EndDate $yearfromnow

      



enter image description here

+2


source







All Articles