Add-AzKeyVaultKey

Crea una chiave in un insieme di credenziali delle chiavi o importa una chiave in un insieme di credenziali delle chiavi.

Sintassi

Add-AzKeyVaultKey
   [-VaultName] <String>
   [-Name] <String>
   -Destination <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-VaultName] <String>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Destination <String>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   -HsmName <String>
   [-Name] <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   -KeyType <String>
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   -HsmName <String>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-InputObject] <PSKeyVault>
   [-Name] <String>
   -Destination <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-InputObject] <PSKeyVault>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Destination <String>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-HsmObject] <PSManagedHsm>
   [-Name] <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   -KeyType <String>
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-HsmObject] <PSManagedHsm>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-ResourceId] <String>
   [-Name] <String>
   -Destination <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   [-ResourceId] <String>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Destination <String>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-KeyType <String>]
   [-CurveName <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   -HsmResourceId <String>
   [-Name] <String>
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-Size <Int32>]
   -KeyType <String>
   [-CurveName <String>]
   [-Exportable]
   [-Immutable]
   [-ReleasePolicyPath <String>]
   [-UseDefaultCVMPolicy]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Add-AzKeyVaultKey
   -HsmResourceId <String>
   [-Name] <String>
   -KeyFilePath <String>
   [-KeyFilePassword <SecureString>]
   [-Disable]
   [-KeyOps <String[]>]
   [-Expires <DateTime>]
   [-NotBefore <DateTime>]
   [-Tag <Hashtable>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Descrizione

Il cmdlet Add-AzKeyVaultKey crea una chiave in un insieme di credenziali delle chiavi in Azure Key Vault o importa una chiave in un insieme di credenziali delle chiavi. Usare questo cmdlet per aggiungere chiavi usando uno dei metodi seguenti:

  • Creare una chiave in un modulo di protezione hardware (HSM) nel servizio Key Vault.
  • Creare una chiave nel software nel servizio Key Vault.
  • Importare una chiave dal proprio modulo di protezione hardware (HSM) ai moduli di protezione hardware nel servizio Key Vault.
  • Importare una chiave da un file pfx nel computer.
  • Importare una chiave da un file pfx nel computer in moduli di protezione hardware (HSM) nel servizio Key Vault. Per una di queste operazioni, è possibile fornire attributi chiave o accettare le impostazioni predefinite. Se si crea o si importa una chiave con lo stesso nome di una chiave esistente nell'insieme di credenziali delle chiavi, la chiave originale viene aggiornata con i valori specificati per la nuova chiave. È possibile accedere ai valori precedenti usando l'URI specifico della versione per tale versione della chiave. Per informazioni sulle versioni principali e sulla struttura URI, vedere Informazioni su chiavi e segreti nella documentazione dell'API REST di Key Vault. Nota: per importare una chiave dal proprio modulo di sicurezza hardware, è prima necessario generare un pacchetto BYOK (un file con estensione byok) usando il set di strumenti BYOK di Azure Key Vault. Per altre informazioni, vedere Come generare e trasferire chiavi protette dal modulo di protezione hardware per Azure Key Vault. Come procedura consigliata, eseguire il backup della chiave dopo la creazione o l'aggiornamento usando il cmdlet Backup-AzKeyVaultKey. Non esiste alcuna funzionalità di annullamento, quindi se si elimina accidentalmente la chiave o la si elimina e quindi si cambia idea, la chiave non è recuperabile a meno che non si disponga di un backup di esso che è possibile ripristinare.

Esempio

Esempio 1: Creare una chiave

Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITSoftware' -Destination 'Software'

Vault/HSM Name : contoso
Name           : ITSoftware
Key Type       : RSA
Key Size       : 2048
Curve Name     : 
Version        : 67da57e9cadf48a2ad8d366b115843ab
Id             : https://contoso.vault.azure.net:443/keys/ITSoftware/67da57e9cadf48a2ad8d366b115843ab
Enabled        : True
Expires        :
Not Before     :
Created        : 5/21/2018 11:10:58 PM
Updated        : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags           :

Questo comando crea una chiave protetta da software denominata ITSoftware nell'insieme di credenziali delle chiavi denominato Contoso.

Esempio 2: Creare una chiave EC

Add-AzKeyVaultKey -VaultName test-kv -Name test-key -Destination Software -KeyType EC

Vault/HSM Name : test-kv
Name           : test-key
Key Type       : EC
Key Size       :
Curve Name     : P-256
Version        : 4da74af2b4fd47d6b1aa0b05c9a2ed13
Id             : https://test-kv.vault.azure.net:443/keys/test-key/4da74af2b4fd47d6b1aa0b05c9a2ed13
Enabled        : True
Expires        :
Not Before     :
Created        : 8/24/2021 6:38:34 AM
Updated        : 8/24/2021 6:38:34 AM
Recovery Level : Recoverable+Purgeable
Tags           :

Questo comando crea una chiave EC protetta da software denominata test-key nell'insieme di credenziali delle chiavi denominato test-kv. Il nome della curva è P-256 per impostazione predefinita.

Esempio 3: Creare una chiave protetta da modulo di protezione hardware

Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITHsm' -Destination 'HSM'

Vault Name     : contoso
Name           : ITHsm
Version        : 67da57e9cadf48a2ad8d366b115843ab
Id             : https://contoso.vault.azure.net:443/keys/ITSoftware/67da57e9cadf48a2ad8d366b115843ab
Enabled        : True
Expires        :
Not Before     :
Created        : 5/21/2018 11:10:58 PM
Updated        : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags           :

Questo comando crea una chiave protetta da HSM nell'insieme di credenziali delle chiavi denominato Contoso.

Esempio 4: Creare una chiave con valori non predefiniti

$KeyOperations = 'decrypt', 'verify'
$Expires = (Get-Date).AddYears(2).ToUniversalTime()
$NotBefore = (Get-Date).ToUniversalTime()
$Tags = @{'Severity' = 'high'; 'Accounting' = "true"}
Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITHsmNonDefault' -Destination 'HSM' -Expires $Expires -NotBefore $NotBefore -KeyOps $KeyOperations -Disable -Tag $Tags

Vault/HSM Name : contoso
Name           : ITHsmNonDefault
Key Type       : RSA
Key Size       : 2048
Version        : 929bfc14db84439b823ffd1bedadaf5f
Id             : https://contoso.vault.azure.net:443/keys/ITHsmNonDefault/929bfc14db84439b823ffd1bedadaf5f
Enabled        : False
Expires        : 5/21/2020 11:12:43 PM
Not Before     : 5/21/2018 11:12:50 PM
Created        : 5/21/2018 11:13:17 PM
Updated        : 5/21/2018 11:13:17 PM
Purge Disabled : False
Tags           : Name        Value
                 Severity    high
                 Accounting  true

Il primo comando archivia i valori decrittografare e verificare nella variabile $KeyOperations. Il secondo comando crea un oggetto DateTime , definito in formato UTC, usando il cmdlet Get-Date . L'oggetto specifica un periodo di due anni in futuro. Il comando archivia tale data nella variabile $Expires. Per ulteriori informazioni, digitare Get-Help Get-Date. Il terzo comando crea un oggetto DateTime usando il cmdlet Get-Date . L'oggetto specifica l'ora UTC corrente. Il comando archivia tale data nella variabile $NotBefore. Il comando finale crea una chiave denominata ITHsmNonDefault che è una chiave protetta da HSM. Il comando specifica i valori per le operazioni chiave consentite archiviate $KeyOperations. Il comando specifica le ore per i parametri Expires e NotBefore creati nei comandi precedenti e tag per gravità elevata e IT. La nuova chiave è disabilitata. È possibile abilitarla usando il cmdlet Set-AzKeyVaultKey .

Esempio 5: Importare una chiave protetta da HSM

Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITByok' -KeyFilePath 'C:\Contoso\ITByok.byok' -Destination 'HSM'

Vault Name     : contoso
Name           : ITByok
Version        : 67da57e9cadf48a2ad8d366b115843ab
Id             : https://contoso.vault.azure.net:443/keys/ITByok/67da57e9cadf48a2ad8d366b115843ab
Enabled        : True
Expires        :
Not Before     :
Created        : 5/21/2018 11:10:58 PM
Updated        : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags           :

Questo comando importa la chiave denominata ITByok dal percorso specificato dal parametro KeyFilePath . La chiave importata è una chiave protetta da HSM. Per importare una chiave dal proprio modulo di sicurezza hardware, è prima necessario generare un pacchetto BYOK (un file con estensione byok) usando il set di strumenti BYOK di Azure Key Vault. Per altre informazioni, vedere Come generare e trasferire chiavi protette dal modulo di protezione hardware per Azure Key Vault.

Esempio 6: Importare una chiave protetta da software

$Password = ConvertTo-SecureString -String 'Password' -AsPlainText -Force
Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITPfx' -KeyFilePath 'C:\Contoso\ITPfx.pfx' -KeyFilePassword $Password

Vault Name     : contoso
Name           : ITPfx
Version        : 67da57e9cadf48a2ad8d366b115843ab
Id             : https://contoso.vault.azure.net:443/keys/ITPfx/67da57e9cadf48a2ad8d366b115843ab
Enabled        : True
Expires        :
Not Before     :
Created        : 5/21/2018 11:10:58 PM
Updated        : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags           :

Il primo comando converte una stringa in una stringa protetta usando il cmdlet ConvertTo-SecureString e quindi archivia tale stringa nella variabile $Password. Per ulteriori informazioni, digitare Get-Help ConvertTo-SecureString. Il secondo comando crea una password software nell'insieme di credenziali delle chiavi contoso. Il comando specifica il percorso per la chiave e la password archiviata in $Password.

Esempio 7: Importare una chiave e assegnare attributi

$Password = ConvertTo-SecureString -String 'password' -AsPlainText -Force
$Expires = (Get-Date).AddYears(2).ToUniversalTime()
$Tags = @{ 'Severity' = 'high'; 'Accounting' = "true" }
Add-AzKeyVaultKey -VaultName 'contoso' -Name 'ITPfxToHSM' -Destination 'HSM' -KeyFilePath 'C:\Contoso\ITPfx.pfx' -KeyFilePassword $Password -Expires $Expires -Tag $Tags

Vault Name     : contoso
Name           : ITPfxToHSM
Version        : 929bfc14db84439b823ffd1bedadaf5f
Id             : https://contoso.vault.azure.net:443/keys/ITPfxToHSM/929bfc14db84439b823ffd1bedadaf5f
Enabled        : True
Expires        : 5/21/2020 11:12:43 PM
Not Before     :
Created        : 5/21/2018 11:13:17 PM
Updated        : 5/21/2018 11:13:17 PM
Purge Disabled : False
Tags           : Name        Value
                 Severity    high
                 Accounting  true

Il primo comando converte una stringa in una stringa protetta usando il cmdlet ConvertTo-SecureString e quindi archivia tale stringa nella variabile $Password. Il secondo comando crea un oggetto DateTime usando il cmdlet Get-Date e quindi archivia tale oggetto nella variabile $Expires. Il terzo comando crea la variabile $tags per impostare i tag per la gravità elevata e l'IT. Il comando finale importa una chiave come chiave HSM dal percorso specificato. Il comando specifica l'ora di scadenza archiviata in $Expires e la password archiviata in $Password e applica i tag archiviati in $tags.

Esempio 8: Generare una chiave di scambio delle chiavi (KEK) per la funzionalità "Bring Your Own Key" (BYOK)

$key = Add-AzKeyVaultKey -VaultName $vaultName -Name $keyName -Destination HSM -Size 2048 -KeyOps "import"

Genera una chiave (denominata chiave di scambio delle chiavi(KEK) . La chiave KEK deve essere una chiave RSA-HSM che ha solo l'operazione di importazione della chiave. Solo lo SKU di Key Vault Premium supporta le chiavi RSA-HSM. Per altri dettagli, vedere https://learn.microsoft.com/azure/key-vault/keys/hsm-protected-keys

Esempio 9: Creare una chiave sicura in hsm gestito

<# release_policy_template.json
{
  "anyOf": [
    {
      "allOf": [
        {
          "claim": "<claim name>",
          "equals": "<value to match>"
        }
      ],
      "authority": "<issuer>"
    }
  ],
  "version": "1.0.0"
}
#>
Add-AzKeyVaultKey -HsmName testmhsm -Name test-key -KeyType RSA -Exportable -ReleasePolicyPath release_policy.json

Vault/HSM Name : testmhsm
Name           : test-key
Key Type       : RSA
Key Size       : 2048
Curve Name     : 
Version        : ed6b026bf0a605042006635713d33ef6
Id             : https://testmhsm.managedhsm.azure.net:443/keys/test-key/ed6b026bf0a605042006635713d33ef6
Enabled        : True
Expires        : 
Not Before     : 
Created        : 6/2/2022 7:14:37 AM
Updated        : 6/2/2022 7:14:37 AM
Recovery Level : Recoverable+Purgeable
Release Policy : 
                 Content Type   : application/json; charset=utf-8
                 Policy Content : {"anyOf":[{"allOf":[{"claim":"x-ms-sgx-is-debuggable","equals":"true"}],"authority":"htt 
                 ps://sharedeus.eus.attest.azure.net/"}],"version":"1.0.0"}
                 Immutable      : False


Tags           :

Creare una chiave sicura in hsm gestito denominato testmhsm. Il nome è test-key e il tipo è RSA.

Esempio 10: aggiungere una chiave per una macchina virtuale riservata a un insieme di credenziali delle chiavi.

New-AzKeyVault -Name $keyVaultName -Location $location -ResourceGroupName $resourceGroupName -Sku Premium -EnablePurgeProtection -EnabledForDiskEncryption;
$cvmAgent = Get-AzADServicePrincipal -ApplicationId 'bf7b6499-ff71-4aa2-97a4-f372087be7f0';
Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -ResourceGroupName $resourceGroupName -ObjectId $cvmAgent.id -PermissionsToKeys get,release;

$keySize = 3072;
Add-AzKeyVaultKey -VaultName $keyVaultName -Name $keyName -Size $keySize -KeyOps wrapKey,unwrapKey -KeyType RSA -Destination HSM -Exportable -UseDefaultCVMPolicy;

Vault/HSM Name : <Vault Name>
Name           : <Key Name>
Key Type       : RSA
Key Size       : 3072
Curve Name     :
Version        : <Version>
Id             : <Id>
Enabled        : True
Expires        :
Not Before     :
Created        : 9/9/2022 8:36:00 PM
Updated        : 9/9/2022 8:36:00 PM
Recovery Level : Recoverable
Release Policy :
                 Content Type   : application/json; charset=utf-8
                 Policy Content : <Policy Content>
                 Immutable      : False
Tags           :

Parametri

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CurveName

Specifica il nome della curva della crittografia a curva ellittica, questo valore è valido quando KeyType è EC.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Credenziali, account, tenant e sottoscrizione usati per la comunicazione con Azure

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Destination

Specifica se aggiungere la chiave come chiave protetta da software o come chiave protetta da HSM nel servizio Key Vault. I valori validi sono: HSM e Software. Nota: per usare HSM come destinazione, è necessario disporre di un insieme di credenziali delle chiavi che supporta i moduli di protezione hardware. Per altre informazioni su livelli di servizio e funzionalità per l'insieme di credenziali delle chiavi di Azure, vedere il sito Web relativo ai prezzi dell'insieme di credenziali delle chiavi di Azure. Questo parametro è obbligatorio quando si crea una nuova chiave. Se si importa una chiave usando il parametro KeyFilePath , questo parametro è facoltativo:

  • Se non si specifica questo parametro e questo cmdlet importa una chiave con estensione byok, importa tale chiave come chiave protetta da HSM. Il cmdlet non può importare tale chiave come chiave protetta da software.
  • Se non si specifica questo parametro e questo cmdlet importa una chiave con estensione pfx, importa la chiave come chiave protetta da software.
Type:String
Accepted values:HSM, Software, HSM, Software
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Disable

Indica che la chiave da aggiungere è impostata su uno stato iniziale disabilitato. Qualsiasi tentativo di usare la chiave avrà esito negativo. Usare questo parametro se si precaricano le chiavi che si intende abilitare in un secondo momento.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Expires

Specifica l'ora di scadenza della chiave in formato UTC, come oggetto DateTime , per la chiave aggiunta da questo cmdlet. Se non specificato, la chiave non scadrà. Per ottenere un oggetto DateTime , utilizzare il cmdlet Get-Date . Per ulteriori informazioni, digitare Get-Help Get-Date. Si noti che la scadenza viene ignorata per la chiave di scambio delle chiavi usata nel processo BYOK.

Type:Nullable<T>[DateTime]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Exportable

Indica se la chiave privata può essere esportata.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HsmName

Nome HSM. Il cmdlet costruisce il nome di dominio completo di un modulo di protezione hardware gestito in base al nome e all'ambiente attualmente selezionato.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-HsmObject

Oggetto HSM.

Type:PSManagedHsm
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-HsmResourceId

ID risorsa del modulo di protezione hardware.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Immutable

Imposta il criterio di rilascio come stato non modificabile. Una volta contrassegnato come non modificabile, questo flag non può essere reimpostato e i criteri non possono essere modificati in alcuna circostanza.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Oggetto Insieme di credenziali.

Type:PSKeyVault
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-KeyFilePassword

Specifica una password per il file importato come oggetto SecureString . Per ottenere un oggetto SecureString , utilizzare il cmdlet ConvertTo-SecureString . Per ulteriori informazioni, digitare Get-Help ConvertTo-SecureString. È necessario specificare questa password per importare un file con estensione pfx.

Type:SecureString
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-KeyFilePath

Specifica il percorso di un file locale contenente il materiale della chiave importato da questo cmdlet. Le estensioni di file valide sono byok e pfx.

  • Se il file è un file con estensione byok, la chiave viene protetta automaticamente dai moduli di protezione hardware dopo l'importazione e non è possibile eseguire l'override di questa impostazione predefinita.
  • Se il file è un file pfx, la chiave viene protetta automaticamente dal software dopo l'importazione. Per eseguire l'override di questa impostazione predefinita, impostare il parametro Destination su HSM in modo che la chiave sia protetta da HSM. Quando si specifica questo parametro, il parametro Destination è facoltativo.
Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-KeyOps

Specifica una matrice di operazioni che è possibile eseguire usando la chiave aggiunta da questo cmdlet. Se non si specifica questo parametro, è possibile eseguire tutte le operazioni. I valori accettabili per questo parametro sono un elenco delimitato da virgole di operazioni chiave come definito dalla specifica JWK (JSON Web Key):

  • crittografare
  • decrypt
  • wrapKey
  • unwrapKey
  • sign
  • verify
  • import (solo per kek, vedere l'esempio 7)
Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-KeyType

Specifica il tipo di chiave di questa chiave. Quando si importano chiavi BYOK, per impostazione predefinita è "RSA".

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Name

Specifica il nome della chiave da aggiungere all'insieme di credenziali delle chiavi. Questo cmdlet costruisce il nome di dominio completo (FQDN) di una chiave in base al nome specificato da questo parametro, al nome dell'insieme di credenziali delle chiavi e all'ambiente corrente. Il nome deve essere una stringa di lunghezza da 1 a 63 caratteri che contiene solo 0-9, a-z, A-Z e - (simbolo trattino).

Type:String
Aliases:KeyName
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotBefore

Specifica l'ora, come oggetto DateTime , prima della quale non è possibile utilizzare la chiave. Questo parametro usa l'ora UTC. Per ottenere un oggetto DateTime , utilizzare il cmdlet Get-Date . Se non si specifica questo parametro, la chiave può essere usata immediatamente.

Type:Nullable<T>[DateTime]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ReleasePolicyPath

Percorso di un file contenente la definizione dei criteri JSON. Regole dei criteri in base alle quali è possibile esportare una chiave.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceId

ID risorsa dell'insieme di credenziali.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Size

Dimensioni della chiave RSA, in bit. Se non specificato, il servizio fornirà un valore predefinito sicuro.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tag

Coppie chiave-valore sotto forma di tabella hash. Ad esempio: @{key0="value0"; key1=$null; key2="value2"}

Type:Hashtable
Aliases:Tags
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseDefaultCVMPolicy

Specifica di usare i criteri predefiniti in cui è possibile esportare la chiave per la crittografia del disco CVM.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VaultName

Specifica il nome dell'insieme di credenziali delle chiavi a cui questo cmdlet aggiunge la chiave. Questo cmdlet costruisce il nome di dominio completo di un insieme di credenziali delle chiavi in base al nome specificato da questo parametro e all'ambiente corrente.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

PSKeyVault

PSManagedHsm

String

Output

PSKeyVaultKey