Set up preview features in Azure subscription

This article shows you how to manage preview features in your Azure subscription. Preview features let you opt in to new functionality before it's released. Some preview features are available to anyone who wants to opt in. Other preview features require approval from the product team.

Azure Feature Exposure Control (AFEC) is available through the Microsoft.Features namespace. Preview features have the following format for the resource ID:

Microsoft.Features/providers/{resourceProviderNamespace}/features/{featureName}

Required access

To list, register, or unregister preview features in your Azure subscription, you need access to the Microsoft.Features/* actions. This permission is granted through the Contributor and Owner built-in roles. You can also specify the required access through a custom role.

List preview features

You can list all the preview features and their registration states for an Azure subscription.

To list all the subscription's preview features, use the Get-AzProviderFeature cmdlet.

Get-AzProviderFeature -ListAvailable
FeatureName      ProviderName     RegistrationState
-----------      ------------     -----------------
betaAccess       Microsoft.AAD    NotRegistered
previewAccess    Microsoft.AAD    Registered
tipAccess        Microsoft.AAD    Pending
testAccess       Microsoft.AAD    Unregistered

To filter the output for a specific resource provider, use the ProviderNamespace parameter. The default output shows only the registered features. To display all preview features for a resource provider, use the ListAvailable parameter with the ProviderNamespace parameter.

Get-AzProviderFeature -ProviderNamespace "Microsoft.Compute" -ListAvailable
FeatureName                          ProviderName        RegistrationState
-----------                          ------------        -----------------
AHUB                                 Microsoft.Compute   Unregistered
AllowManagedDisksReplaceOSDisk       Microsoft.Compute   Registered
AllowPreReleaseRegions               Microsoft.Compute   Pending
InGuestPatchVMPreview                Microsoft.Compute   NotRegistered

You can filter the output for a specific preview feature using the FeatureName parameter.

Get-AzProviderFeature -FeatureName "InGuestPatchVMPreview" -ProviderNamespace "Microsoft.Compute"
FeatureName             ProviderName        RegistrationState
-----------             ------------        -----------------
InGuestPatchVMPreview   Microsoft.Compute   NotRegistered

Register preview feature

Register a preview feature in your Azure subscription to expose more functionality for a resource provider. Some preview features require approval.

After a preview feature is registered in your subscription, you'll see one of two states: Registered or Pending.

  • For a preview feature that doesn't require approval, the state is Registered.
  • If a preview feature requires approval, the registration state is Pending. You must request approval from the Azure service offering the preview feature. Usually, you request access through a support ticket.
    • To request approval, submit an Azure support request.
    • After the registration is approved, the preview feature's state changes to Registered.

Some services require other methods, such as email, to get approval for pending request. Check announcements about the preview feature for information about how to get access.

To register a preview feature, use the Register-AzProviderFeature cmdlet.

Register-AzProviderFeature -FeatureName "InGuestPatchVMPreview" -ProviderNamespace "Microsoft.Compute"
FeatureName             ProviderName        RegistrationState
-----------             ------------        -----------------
InGuestPatchVMPreview   Microsoft.Compute   Registering

To view the registration's status, use the Get-AzProviderFeature cmdlet.

Get-AzProviderFeature -FeatureName "InGuestPatchVMPreview" -ProviderNamespace "Microsoft.Compute"
FeatureName             ProviderName        RegistrationState
-----------             ------------        -----------------
InGuestPatchVMPreview   Microsoft.Compute   Registered

Unregister preview feature

When you've finished using a preview feature, unregister it from your Azure subscription. You may notice two different statuses after unregistering the feature. If you unregister through the portal, the status is set to Not registered. If you unregister through Azure CLI, PowerShell, or REST API, the status is set to Unregistered. The status is different because the portal deletes the feature registration, but the commands unregister the feature. In both cases, the feature is no longer available in your subscription. In both cases, you can opt in to the feature again by re-registering it.

To unregister a preview feature, use the Unregister-AzProviderFeature cmdlet. The RegistrationState state changes to Unregistered.

Unregister-AzProviderFeature -FeatureName "InGuestPatchVMPreview" -ProviderNamespace "Microsoft.Compute"
FeatureName             ProviderName        RegistrationState
-----------             ------------        -----------------
InGuestPatchVMPreview   Microsoft.Compute   Unregistering

To view the unregistration's status, use the Get-AzProviderFeature cmdlet.

Get-AzProviderFeature -FeatureName "InGuestPatchVMPreview" -ProviderNamespace "Microsoft.Compute"
FeatureName             ProviderName        RegistrationState
-----------             ------------        -----------------
InGuestPatchVMPreview   Microsoft.Compute   Unregistered

The following example displays an Unregistered preview feature for the Microsoft.Compute resource provider.

Get-AzProviderFeature  -ProviderNamespace "Microsoft.Compute" -ListAvailable | Where-Object { $_.RegistrationState -eq "Unregistered" }
FeatureName             ProviderName        RegistrationState
-----------             ------------        -----------------
InGuestPatchVMPreview   Microsoft.Compute   Unregistered

Configuring preview features using Azure Policy

Subscriptions can be remediated to register to a preview feature if not already registered using a built-in policy definition. Note that new subscriptions added to an existing tenant won't be automatically registered.

Next steps