New-EntraApplicationKeyCredential

Crea una credencial de clave para una aplicación.

Sintaxis

Default (valor predeterminado)

New-EntraApplicationKeyCredential

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

Description

El New-EntraApplicationKeyCredential cmdlet crea una credencial de clave para una aplicación.

Una aplicación puede usar este comando junto con Remove-EntraApplicationKeyCredential para automatizar la puesta en marcha de sus claves de expiración.

Como parte de la validación de la solicitud, se comprueba la prueba de posesión de una clave existente antes de que se pueda realizar la acción.

Ejemplos

Ejemplo 1: Creación de una nueva credencial de clave de aplicación

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}

En este ejemplo se muestra cómo crear una credencial de clave de aplicación.

  • -ApplicationId Especifica un identificador único de una aplicación.
  • -CustomKeyIdentifier Especifica un identificador de clave personalizado.
  • -StartDate Especifica la hora en que la clave se vuelve válida como un objeto DateTime.
  • -Type Especifica el tipo de la clave.
  • -Usage Especifica el uso de la clave. para AsymmetricX509Cert el uso debe ser Verifyy para X509CertAndPassword el uso debe ser Sign.
  • -Value Especifica el valor de la clave.

Puede usar el Get-EntraApplication cmdlet para recuperar el identificador de objeto de la aplicación.

Ejemplo 2: Uso de un certificado para agregar una credencial de clave de aplicación

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

En este ejemplo se muestra cómo crear una credencial de clave de aplicación.

  • -ApplicationId Especifica un identificador único de una aplicación.
  • -CustomKeyIdentifier Especifica un identificador de clave personalizado.
  • -StartDate Especifica la hora en que la clave se vuelve válida como un objeto DateTime.
  • -EndDate Especifica la hora en que la clave deja de ser válida como un objeto DateTime.
  • -Type Especifica el tipo de la clave.
  • -Usage Especifica el uso de la clave. para AsymmetricX509Cert el uso debe ser Verifyy para X509CertAndPassword el uso debe ser Sign.
  • -Value Especifica el valor de la clave.

Parámetros

-ApplicationId

Especifica un identificador único de una aplicación en Microsoft Entra ID.

Propiedades de parámetro

Tipo:System.String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:ObjectId (identificador de objeto)

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:True
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-CustomKeyIdentifier

Especifica un identificador de clave personalizado.

Propiedades de parámetro

Tipo:System.String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-EndDate

Especifica la hora en que la clave deja de ser válida como un objeto DateTime.

Propiedades de parámetro

Tipo:System.DateTime
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-StartDate

Especifica la hora en que la clave se vuelve válida como un objeto DateTime.

Propiedades de parámetro

Tipo:System.DateTime
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-Type

Especifica el tipo de la clave.

Propiedades de parámetro

Tipo:KeyType
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-Usage

Especifica el uso de la clave.

  • AsymmetricX509Cert: el uso debe ser Verify.
  • X509CertAndPassword: el uso debe ser Sign.

Propiedades de parámetro

Tipo:KeyUsage
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

-Value

Especifica el valor de la clave.

Propiedades de parámetro

Tipo:System.String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:True
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.