New-EntraApplicationKeyCredential

Cria uma credencial de chave para um aplicativo.

Sintaxe

Default (Default)

New-EntraApplicationKeyCredential

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

Description

O New-EntraApplicationKeyCredential cmdlet cria uma credencial de chave para um aplicativo.

Um aplicativo pode usar esse comando juntamente com Remove-EntraApplicationKeyCredential para automatizar a rolagem de suas chaves expirando.

Como parte da validação da solicitação, a prova de posse de uma chave existente é verificada antes que a ação possa ser executada.

Exemplos

Exemplo 1: Criar uma credencial de chave de aplicativo

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 de chave de aplicativo.

  • -ApplicationId Especifica uma ID exclusiva de um aplicativo
  • -CustomKeyIdentifier Especifica uma ID de chave personalizada.
  • -StartDate Especifica a hora em que a chave se torna válida como um objeto DateTime.
  • -Type Especifica o tipo da chave.
  • -Usage Especifica o uso da chave. para AsymmetricX509Cert o uso deve ser Verifye para X509CertAndPassword o uso deve ser Sign.
  • -Value Especifica o valor da chave.

Você pode usar o Get-EntraApplication cmdlet para recuperar a ID do objeto do aplicativo.

Exemplo 2: Usar um certificado para adicionar uma credencial de chave de aplicativo

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 de chave de aplicativo.

  • -ApplicationId Especifica uma ID exclusiva de um aplicativo
  • -CustomKeyIdentifier Especifica uma ID de chave personalizada.
  • -StartDate Especifica a hora em que a chave se torna válida como um objeto DateTime.
  • -EndDate Especifica a hora em que a chave se torna inválida como um objeto DateTime.
  • -Type Especifica o tipo da chave.
  • -Usage Especifica o uso da chave. para AsymmetricX509Cert o uso deve ser Verifye para X509CertAndPassword o uso deve ser Sign.
  • -Value Especifica o valor da chave.

Parâmetros

-ApplicationId

Especifica uma ID exclusiva de um aplicativo no Microsoft Entra ID.

Propriedades do parâmetro

Tipo:System.String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:IdentificadorDeObjeto

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:True
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-CustomKeyIdentifier

Especifica uma ID de chave personalizada.

Propriedades do parâmetro

Tipo:System.String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-EndDate

Especifica a hora em que a chave se torna inválida como um objeto DateTime.

Propriedades do parâmetro

Tipo:System.DateTime
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-StartDate

Especifica a hora em que a chave se torna válida como um objeto DateTime.

Propriedades do parâmetro

Tipo:System.DateTime
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-Type

Especifica o tipo da chave.

Propriedades do parâmetro

Tipo:KeyType
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-Usage

Especifica o uso da chave.

  • AsymmetricX509Cert: a utilização tem de ser Verify.
  • X509CertAndPassword: a utilização tem de ser Sign.

Propriedades do parâmetro

Tipo:KeyUsage
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-Value

Especifica o valor da chave.

Propriedades do parâmetro

Tipo:System.String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes: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.