Guida alla migrazione e note sulla versione .NET 2.0 per l'insieme di credenziali delle chiavi di AzureAzure Key Vault .NET 2.0 - Release Notes and Migration Guide

Le note e le linee guida seguenti sono destinate agli sviluppatori che usano la libreria .NET / C# di Azure Key Vault.The following notes and guidance are for developers working with Azure Key Vault .NET / C# library. Nel passaggio dalla versione 1.0 alla versione 2.0 sono state apportate alcune modifiche. Per poter però usufruire dei miglioramenti funzionali e delle nuove funzionalità, ad esempio la funzionalità Certificati Key Vault, è necessaria un'operazione di migrazione nel codice.In the transition from the 1.0 version to the 2.0 version, a number of updates have been made that will require migration work in your code in order for you to benefit from the functional improvements and feature additions such as Key Vault certificates support.

Certificati Key VaultKey Vault certificates

La funzionalità Certificati dell'insieme di credenziali delle chiavi supporta la gestione di certificati X509 e consente di eseguire le operazioni seguenti:Key Vault certificates support provides for management of your x509 certificates and the following behaviors:

  • Il proprietario di un certificato può creare un certificato tramite un processo di creazione dell'insieme di credenziali delle chiavi o tramite l'importazione di un certificato esistente.Allows a certificate owner to create a certificate through a Key Vault creation process or through the import of an existing certificate. Sono inclusi i certificati autofirmati e i certificati generati dall'autorità di certificazione.This includes both self-signed and Certificate Authority generated certificates.
  • Il proprietario di un certificato dell'insieme di credenziali delle chiavi può implementare l'archiviazione sicura e la gestione di certificati X509 senza interagire con materiale della chiave privata.Allows a Key Vault certificate owner to implement secure storage and management of X509 certificates without interaction with private key material.
  • Il proprietario di un certificato può creare criteri che guidano l'insieme di credenziali delle chiavi nella gestione del ciclo di vita di un certificato.Allows a certificate owner to create a policy that directs Key Vault to manage the life-cycle of a certificate.
  • I proprietari di un certificato possono specificare informazioni sul contatto per notificare eventi sul ciclo di vita di un certificato, come la scadenza e il rinnovo.Allows certificate owners to provide contact information for notification about life-cycle events of expiration and renewal of certificate.
  • Viene supportato il rinnovo automatico con autorità di certificazione selezionate, ad esempio provider di certificati X509 / Autorità di certificazione partner dell'insieme di credenziali delle chiavi.Supports automatic renewal with selected issuers - Key Vault partner X509 certificate providers / certificate authorities.

    • NOTA: sono ammessi anche i provider e le autorità di certificazione senza partnership, ma non supportano la funzionalità di rinnovo automatico.NOTE - Non-partnered providers/authorities are also allowed but, will not support the auto renewal feature.

Supporto .NET.NET support

  • .NET 4.0 non è supportata dalla versione 2.0 della libreria .NET/C# dell'insieme di credenziali delle chiavi di Azure.NET 4.0 is not supported by the 2.0 version of the Azure Key Vault .NET/C# library
  • .NET Core è supportata dalla versione 2.0 della libreria .NET/C# dell'insieme di credenziali delle chiavi di Azure.NET Core is supported by the 2.0 version of the Azure Key Vault .NET/C# library

Spazi dei nomiNamespaces

  • Lo spazio dei nomi per i modelli viene cambiato da Microsoft.Azure.KeyVault a Microsoft.Azure.KeyVault.Models.The namespace for models is changed from Microsoft.Azure.KeyVault to Microsoft.Azure.KeyVault.Models.
  • Lo spazio dei nomi Microsoft.Azure.KeyVault.Internal viene rimosso.The Microsoft.Azure.KeyVault.Internal namespace is dropped.
  • Lo spazio dei nomi delle dipendenze di Azure SDK viene modificato da Hyak.Common e Hyak.Common.Internals in Microsoft.Rest e Microsoft.Rest.SerializationThe Azure SDK dependencies namespace are changed from Hyak.Common and Hyak.Common.Internals to Microsoft.Rest and Microsoft.Rest.Serialization

Modifiche del tipoType changes

  • Secret modificato in SecretBundleSecret changed to SecretBundle
  • Dictionary modificato in IDictionaryDictionary changed to IDictionary
  • List, string [] modificato in IListList, string [] changed to IList
  • NextList modificato in NextPageLinkNextList changed to NextPageLink

Tipi restituitiReturn types

  • KeyList e SecretList restituiranno IPage anziché ListKeysResponseMessageKeyList and SecretList will return IPage instead of ListKeysResponseMessage
  • L'oggetto BackupKeyAsync generato restituirà BackupKeyResult che contiene Value (BLOB di backup).The generated BackupKeyAsync will return BackupKeyResult which contains Value (back-up blob). Prima veniva eseguito il wrapping del metodo e veniva restituito solo il valore.Before the method was wrapped and returning only the value.

EccezioniExceptions

  • KeyVaultClientException viene modificato in KeyVaultErrorExceptionKeyVaultClientException is changed to KeyVaultErrorException
  • L'errore del servizio viene modificato da exception.Error in exception.Body.Error.Message.The service error is changed from exception.Error to exception.Body.Error.Message.
  • Le informazioni aggiuntive sono rimosse dal messaggio di errore per [JsonExtensionData].Removed additional info from the error message for [JsonExtensionData].

CostruttoriConstructors

  • Invece di accettare HttpClient come argomento del costruttore, il costruttore accetta solo HttpClientHandler o DelegatingHandler[].Instead of accepting an HttpClient as a constructor argument, the constructor only accepts HttpClientHandler or DelegatingHandler[].

Pacchetti scaricatiDownloaded packages

Durante l'elaborazione di una dipendenza dall'insieme di credenziali delle chiavi da parte del client, venivano scaricati i pacchetti seguentiWhen a client is processing a dependency on Key Vault the following were downloaded

Elenco dei pacchetti precedentiPrevious package list

  • package id="Hyak.Common" version="1.0.2" targetFramework="net45"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" version="2.0.4" targetFramework="net45"
  • package id="Microsoft.Azure.Common.Dependencies" version="1.0.0" 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.Azure.KeyVault" version="1.0.0" targetFramework="net45"
  • package id="Microsoft.Bcl" version="1.1.9" 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.Async" version="1.0.168" targetFramework="net45"
  • package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45"package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45"
  • package id="Microsoft.Net.Http" version="2.2.22" targetFramework="net45"package id="Microsoft.Net.Http" version="2.2.22" targetFramework="net45"

Elenco dei pacchetti correntiCurrent package list

  • package id="Microsoft.Azure.KeyVault" version="2.0.0-preview" targetFramework="net45"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" version="2.2.0" targetFramework="net45"
  • package id="Microsoft.Rest.ClientRuntime.Azure" version="3.2.0" targetFramework="net45"package id="Microsoft.Rest.ClientRuntime.Azure" version="3.2.0" targetFramework="net45"

Modifiche alle classiClass changes

  • La UnixEpoch è stata rimossaUnixEpoch class has been removed
  • La classe Base64UrlConverter viene rinominata in Base64UrlJsonConverterBase64UrlConverter class is renamed to Base64UrlJsonConverter

Altre modificheOther changes

  • 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.Support for the configuration of KV operation retry policy on transient failures has been added to this version of the API.

Microsoft.Azure.Management.KeyVault NuGetMicrosoft.Azure.Management.KeyVault NuGet

  • Per le operazioni che restituivano un insieme di credenziali, il tipo restituito era una classe che conteneva una proprietà Vault.For the operations that returned a vault, the return type was a class that contained a Vault property. Il tipo restituito è ora Vault.The return type is now Vault.
  • PermissionsToKeys e PermissionsToSecrets ora sono Permissions.Keys e Permissions.SecretsPermissionsToKeys and PermissionsToSecrets are now Permissions.Keys and Permissions.Secrets
  • Alcune delle modifiche che riguardano i tipi restituiti si applicano anche al piano di controllo.Some of the return types changes apply to the control-plane as well.

Microsoft.Azure.KeyVault.Extensions NuGetMicrosoft.Azure.KeyVault.Extensions NuGet

  • Il pacchetto viene interrotto a Microsoft.Azure.KeyVault.Extensions e Microsoft.Azure.KeyVault.Cryptography per le operazioni di crittografia.The package is broken up to Microsoft.Azure.KeyVault.Extensions and Microsoft.Azure.KeyVault.Cryptography for the cryptography operations.