New-EntraApplicationKeyCredential

Cria uma credencial-chave para uma aplicação.

Sintaxe

Default (Predefinição)

New-EntraApplicationKeyCredential

    -ApplicationId <String>
    [-CustomKeyIdentifier <String>]
    [-Type <KeyType>]
    [-Usage <KeyUsage>]
    [-Value <String>]
    [-EndDate <DateTime>]
    [-StartDate <DateTime>]
    [<CommonParameters>]

Descrição

O New-EntraApplicationKeyCredential cmdlet cria uma credencial chave para uma aplicação.

Uma aplicação pode usar este comando juntamente Remove-EntraApplicationKeyCredential com a automatização da rolagem das suas chaves a expirar.

Como parte da validação do pedido, a prova da posse de uma chave existente é verificada antes de a ação poder ser realizada.

Exemplos

Exemplo 1: Criar uma nova credencial-chave de aplicação

Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$application = Get-EntraApplication -Filter "DisplayName eq 'Contoso Helpdesk Application'"
$params = @{
    ApplicationId = $application.Id
    CustomKeyIdentifier = 'EntraPowerShellKey'
    StartDate = '2024-03-21T14:14:14Z'
    Type = 'Symmetric'
    Usage = 'Sign'
    Value = '<my-value>'
}
New-EntraApplicationKeyCredential @params
CustomKeyIdentifier : {84, 101, 115, 116}
EndDate             : 2024-03-21T14:14:14Z
KeyId               : aaaaaaaa-0b0b-1c1c-2d2d-333333333333
StartDate           : 2025-03-21T14:14:14Z
Type                : Symmetric
Usage               : Sign
Value               : {49, 50, 51}

Este exemplo mostra como criar uma credencial-chave de aplicação.

  • -ApplicationId Especifica um ID único de uma aplicação
  • -CustomKeyIdentifier Especifica um ID de chave personalizado.
  • -StartDate Especifica o momento em que a chave se torna válida como objeto DateTime.
  • -Type Especifica o tipo da chave.
  • -Usage Especifica o uso da chave. pois AsymmetricX509Cert o uso deve ser Verifye para X509CertAndPassword o uso deve ser Sign.
  • -Value Especifica o valor da chave.

Pode usar o Get-EntraApplication cmdlet para recuperar o ID do Objeto da aplicação.

Exemplo 2: Use um certificado para adicionar uma credencial de chave de aplicação

Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$application = Get-EntraApplication -Filter "DisplayName eq 'Contoso Helpdesk Application'"
$cer = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2 #create a new certificate object
$cer.Import('C:\Users\ContosoUser\appcert.cer')
$bin = $cer.GetRawCertData()
$base64Value = [System.Convert]::ToBase64String($bin)
$bin = $cer.GetCertHash()
$base64Thumbprint = [System.Convert]::ToBase64String($bin)
$keyid = [System.Guid]::NewGuid().ToString()

$params = @{
    ApplicationId = $application.Id
    CustomKeyIdentifier = $base64Thumbprint
    Type = 'AsymmetricX509Cert'
    Usage = 'Verify'
    Value = $base64Value
    StartDate = $cer.GetEffectiveDateString()
    EndDate = $cer.GetExpirationDateString()
}
New-EntraApplicationKeyCredential @params

Este exemplo mostra como criar uma credencial-chave de aplicação.

  • -ApplicationId Especifica um ID único de uma aplicação
  • -CustomKeyIdentifier Especifica um ID de chave personalizado.
  • -StartDate Especifica o momento em que a chave se torna válida como objeto DateTime.
  • -EndDate Especifica o momento em que a chave se torna inválida como objeto DateTime.
  • -Type Especifica o tipo da chave.
  • -Usage Especifica o uso da chave. pois AsymmetricX509Cert o uso deve ser Verifye para X509CertAndPassword o uso deve ser Sign.
  • -Value Especifica o valor da chave.

Parâmetros

-ApplicationId

Especifica um ID único de uma aplicação no Microsoft Entra ID.

Propriedades dos parâmetros

Tipo:System.String
Valor predefinido:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:IdentificadorDoObjeto

Conjuntos de parâmetros

(All)
Posto:Named
Obrigatório:True
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-CustomKeyIdentifier

Especifica um ID de chave personalizado.

Propriedades dos parâmetros

Tipo:System.String
Valor predefinido:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Posto:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-EndDate

Especifica o momento em que a chave se torna inválida como objeto DateTime.

Propriedades dos parâmetros

Tipo:System.DateTime
Valor predefinido:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Posto:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-StartDate

Especifica o momento em que a chave se torna válida como objeto DateTime.

Propriedades dos parâmetros

Tipo:System.DateTime
Valor predefinido:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Posto:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Type

Especifica o tipo da chave.

Propriedades dos parâmetros

Tipo:KeyType
Valor predefinido:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Posto:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Usage

Especifica o uso da chave.

  • AsymmetricX509Cert: O uso deve ser Verify.
  • X509CertAndPassword: O uso deve ser Sign.

Propriedades dos parâmetros

Tipo:KeyUsage
Valor predefinido:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Posto:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Value

Especifica o valor da chave.

Propriedades dos parâmetros

Tipo:System.String
Valor predefinido:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Posto:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.