Guida alla migrazione e note sulla versione .NET 2.0 per l'insieme di credenziali delle chiavi di Azure

Le informazioni seguenti consentono la migrazione alla versione 2.0 della libreria di Azure Key Vault per C# e .NET. È necessario che le app scritte per le versioni precedenti siano aggiornate per supportare la versione più recente. Queste modifiche sono necessarie per supportare completamente le funzionalità nuove e migliorate, come ad esempio i certificati Key Vault.

Certificati Key Vault

I certificati Key Vault gestiscono i certificati x509 e supportano i comportamenti seguenti:

  • Creare dei certificati tramite un processo di creazione Key Vault o importare un certificato esistente. Sono inclusi sia i certificati autofirmati che i certificati generati dall'autorità di certificazione.
  • Archiviare e gestire in modo sicuro l'archiviazione di certificati x509 senza alcuna interazione tramite materiale con chiave privata.
  • Definire i criteri necessari per l'insieme di credenziali chiave per la gestione del ciclo di vita dei certificati.
  • Fornire informazioni di contatto per eventi inerenti il ciclo di vita, ad esempio avvisi di scadenza e notifiche di rinnovo.
  • Rinnovare automaticamente i certificati con autorità emittenti selezionate (provider di certificati X509 partner per Key Vault e autorità di certificazione).* Supportare certificati forniti da parti (non-partner) e autorità di certificazione altenrative (non supporta il rinnovo automatico).

Supporto .NET

  • .NET 4.0 non è supportata dalla versione 2.0 della libreria .NET di Azure Key Vault
  • .NET Framework 4.5.2 non è supportata dalla versione 2.0 della libreria .NET di Azure Key Vault
  • .NET Standard 1.4 non è supportata dalla versione 2.0 della libreria .NET di Azure Key Vault

Namespaces (Spazi dei nomi)

  • Lo spazio dei nomi per i modelli viene cambiato da Microsoft.Azure.KeyVault a Microsoft.Azure.KeyVault.Models.

  • Lo spazio dei nomi Microsoft.Azure.KeyVault.Internal viene rimosso.

  • Nello spazio dei nomi delle seguenti dipendenze SDK di Azure

    • Hyak.Common è ora Microsoft.Rest.
    • Hyak.Common.Internals è ora Microsoft.Rest.Serialization.

Modifiche del tipo

  • Secret modificato in SecretBundle
  • Dictionary modificato in IDictionary
  • List<T>, string [] modificato in IList<T>
  • NextList modificato in NextPageLink

Tipi restituiti

  • KeyList e SecretList ora restituiscono IPage<T> anziché ListKeysResponseMessage
  • L'oggetto BackupKeyAsync generato restituirà BackupKeyResult che contiene Valore (BLOB di backup). Prima veniva eseguito il wrapping del metodo e veniva restituito solo il valore.

Eccezioni

  • KeyVaultClientException viene modificato in KeyVaultErrorException
  • L'errore del servizio è stato modificato da exception.Error in exception.Body.Error.Message.
  • Le informazioni aggiuntive sono rimosse dal messaggio di errore per [JsonExtensionData].

Costruttori

  • Invece di accettare HttpClient come argomento del costruttore, il costruttore accetta solo HttpClientHandler o DelegatingHandler[].

Pacchetti scaricati

Quando un client elabora una dipendenza Key Vault, vengono scaricati i pacchetti seguenti:

Elenco dei pacchetti precedenti

  • package id="Hyak.Common" version="1.0.2" targetFramework="net45"
  • package id="Microsoft.Azure.Common" version="2.0.4" targetFramework="net45"
  • package id="Microsoft.Azure.Common.Dependencies" version="1.0.0" targetFramework="net45"
  • package id="Microsoft.Azure.KeyVault" version="1.0.0" targetFramework="net45"
  • package id="Microsoft.Bcl" version="1.1.9" targetFramework="net45"
  • package id="Microsoft.Bcl.Async" version="1.0.168" targetFramework="net45"
  • package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45"
  • package id="Microsoft.Net.Http" version="2.2.22" targetFramework="net45"

Elenco dei pacchetti correnti

  • package id="Microsoft.Azure.KeyVault" version="2.0.0-preview" targetFramework="net45"
  • package id="Microsoft.Rest.ClientRuntime" version="2.2.0" targetFramework="net45"
  • package id="Microsoft.Rest.ClientRuntime.Azure" version="3.2.0" targetFramework="net45"

Modifiche alle classi

  • La classe UnixEpoch è stata rimossa.
  • La classe Base64UrlConverter viene rinominata Base64UrlJsonConverter.

Altre modifiche

  • A questa versione dell'API è stato aggiunto il supporto per la configurazione dei criteri per i tentativi dell'operazione insieme di credenziali delle chiavi su errori temporanei.

Microsoft.Azure.Management.KeyVault NuGet

  • Per le operazioni che restituivano un insieme di credenziali, il tipo restituito era una classe che conteneva una proprietà Vault. Il tipo restituito è ora Vault.
  • PermissionsToKeys e PermissionsToSecrets ora sono Permissions.Keys e Permissions.Secrets
  • Alcune delle modifiche che riguardano i tipi restituiti si applicano anche al piano di controllo.

Microsoft.Azure.KeyVault.Extensions NuGet

  • Il pacchetto viene interrotto a Microsoft.Azure.KeyVault.Extensions e Microsoft.Azure.KeyVault.Cryptography per le operazioni di crittografia.