1.0.0-beta.1 (2021-08-31)
Breaking Changes
Guidance to migrate from previous version of Azure Management SDK
General New Features
- Support MSAL.NET, Azure.Identity is out of box for supporting MSAL.NET
- Support [OpenTelemetry](https://opentelemetry.io/) for distributed tracing
- HTTP pipeline with custom policies
- Better error-handling
- Support uniform telemetry across all languages
NOTE: For more information about unified authentication, please refer to Azure Identity documentation for .NET
Package Name
The package name has been changed from Microsoft.Azure.Management.KeyVault
to Azure.ResourceManager.KeyVault
Management Client Changes
Example: Create a Key Vault Instance:
Before upgrade:
using Microsoft.Azure.Management.KeyVault;
using Microsoft.Azure.Management.KeyVault.Models;
using Microsoft.Rest;
var tokenCredentials = new TokenCredentials("YOUR ACCESS TOKEN");
var keyVaultManagementClient = new KeyVaultManagementClient(tokenCredentials);
var vault = await keyVaultManagementClient.Vaults.BeginCreateOrUpdateAsync
(
resourceGroupName,
vaultName,
parameters
);
After upgrade:
using Azure.Identity;
using Azure.ResourceManager.KeyVault;
using Azure.ResourceManager.KeyVault.Models;
ArmClient client = new ArmClient(new DefaultAzureCredential());
ResourceGroup resourceGroup = await armClient.DefaultSubscription.GetResourceGroups().GetAsync("myRgName");
VaultContainer vaultContainer = resourceGroup.GetVaults();
VaultCreateOrUpdateOperation lro = await vaultsOperations.CreateOrUpdateAsync(vaultName, parameters);
Vault vault = lro.Value;
Object Model Changes
Example: Create a Permissions Model
Before upgrade:
var permissions = new Permissions
{
Keys = new string[] { "all" },
Secrets = new string[] { "all" },
Certificates = new string[] { "all" },
Storage = new string[] { "all" },
}
After upgrade:
var permissions = new Permissions
{
Keys = new [] { new KeyPermissions("all") },
Secrets = new [] { new SecretPermissions("all") },
Certificates = new [] { new CertificatePermissions("all") },
Storage = new [] { new StoragePermissions("all") },
};