Microsoft.DesktopVirtualization hostPools

The hostPools resource type can be deployed to: Resource groups.

To learn about resource group deployments, see Bicep or ARM template.

Template format

To create a Microsoft.DesktopVirtualization/hostPools resource, add the following Bicep or JSON to your template.

resource symbolicname 'Microsoft.DesktopVirtualization/hostPools@2021-09-03-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  sku: {
    capacity: int
    family: 'string'
    name: 'string'
    size: 'string'
    tier: 'string'
  }
  kind: 'string'
  identity: {
    type: 'SystemAssigned'
  }
  managedBy: 'string'
  plan: {
    name: 'string'
    product: 'string'
    promotionCode: 'string'
    publisher: 'string'
    version: 'string'
  }
  properties: {
    customRdpProperty: 'string'
    description: 'string'
    friendlyName: 'string'
    hostPoolType: 'string'
    loadBalancerType: 'string'
    maxSessionLimit: int
    migrationRequest: {
      migrationPath: 'string'
      operation: 'string'
    }
    personalDesktopAssignmentType: 'string'
    preferredAppGroupType: 'string'
    publicNetworkAccess: 'string'
    registrationInfo: {
      expirationTime: 'string'
      registrationTokenOperation: 'string'
      token: 'string'
    }
    ring: int
    ssoadfsAuthority: 'string'
    ssoClientId: 'string'
    ssoClientSecretKeyVaultPath: 'string'
    ssoSecretType: 'string'
    startVMOnConnect: bool
    validationEnvironment: bool
    vmTemplate: 'string'
  }
}

Property values

hostPools

Name Description Value
type The resource type

For Bicep, set this value in the resource declaration.
'Microsoft.DesktopVirtualization/hostPools'
apiVersion The resource api version

For Bicep, set this value in the resource declaration.
'2021-09-03-preview'
name The resource name string (required)
location The geo-location where the resource lives string
tags Resource tags. Dictionary of tag names and values. See Tags in templates
sku ResourceModelWithAllowedPropertySetSku
kind Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value. string
identity ResourceModelWithAllowedPropertySetIdentity
managedBy The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource. string
plan ResourceModelWithAllowedPropertySetPlan
properties Properties of HostPool. HostPoolProperties (required)

ResourceModelWithAllowedPropertySetIdentity

Name Description Value
type The identity type. 'SystemAssigned'

ResourceModelWithAllowedPropertySetPlan

Name Description Value
name A user defined name of the 3rd Party Artifact that is being procured. string (required)
product The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. string (required)
promotionCode A publisher provided promotion code as provisioned in Data Market for the said product/artifact. string
publisher The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic string (required)
version The version of the desired product/artifact. string

HostPoolProperties

Name Description Value
customRdpProperty Custom rdp property of HostPool. string
description Description of HostPool. string
friendlyName Friendly name of HostPool. string
hostPoolType HostPool type for desktop. 'BYODesktop'
'Personal'
'Pooled'
loadBalancerType The type of the load balancer. 'BreadthFirst'
'DepthFirst'
'Persistent'
maxSessionLimit The max session limit of HostPool. int
migrationRequest Properties for arm migration. MigrationRequestProperties
personalDesktopAssignmentType PersonalDesktopAssignment type for HostPool. 'Automatic'
'Direct'
preferredAppGroupType The type of preferred application group type, default to Desktop Application Group 'Desktop'
'None'
'RailApplications'
publicNetworkAccess Enabled allows this resource to be accessed from both public and private networks, Disabled allows this resource to only be accessed via private endpoints 'Disabled'
'Enabled'
registrationInfo Represents a RegistrationInfo definition. RegistrationInfo
ring The ring number of HostPool. int
ssoadfsAuthority URL to customer ADFS server for signing WVD SSO certificates. string
ssoClientId ClientId for the registered Relying Party used to issue WVD SSO certificates. string
ssoClientSecretKeyVaultPath Path to Azure KeyVault storing the secret used for communication to ADFS. string
ssoSecretType The type of single sign on Secret Type. 'Certificate'
'CertificateInKeyVault'
'SharedKey'
'SharedKeyInKeyVault'
startVMOnConnect The flag to turn on/off StartVMOnConnect feature. bool
validationEnvironment Is validation environment. bool
vmTemplate VM template for sessionhosts configuration within hostpool. string

MigrationRequestProperties

Name Description Value
migrationPath The path to the legacy object to migrate. string
operation The type of operation for migration. 'Complete'
'Hide'
'Revoke'
'Start'
'Unhide'

RegistrationInfo

Name Description Value
expirationTime Expiration time of registration token. string
registrationTokenOperation The type of resetting the token. 'Delete'
'None'
'Update'
token The registration token base64 encoded string. string

ResourceModelWithAllowedPropertySetSku

Name Description Value
capacity If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. int
family If the service has different generations of hardware, for the same SKU, then that can be captured here. string
name The name of the SKU. Ex - P3. It is typically a letter+number code string (required)
size The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. string
tier This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. 'Basic'
'Free'
'Premium'
'Standard'