Module with DSC Resources for Remote Desktop Session Host

Minimum PowerShell version


Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name xRemoteDesktopSessionHost

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deploy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More


DSC Community


Copyright the DSC Community contributors. All rights reserved.



DesiredStateConfiguration DSC DSCResourceKit DSCResource


xRDCertificateConfiguration xRDGatewayConfiguration xRDLicenseConfiguration xRDRemoteApp xRDServer xRDSessionCollection xRDSessionCollectionConfiguration xRDsessionDeployment


This module has no dependencies.

Release Notes

## [2.0.0] - 2020-09-29

### Changed

- Updated filename for CHANGELOG.MD to CHANGELOG.md

## 2.0.0

### Added

- xRemoteDesktopSessionHost
 - Added automatic release with a new CI pipeline.
 - Added DSC HQRM Tests
- xRDCertificateConfiguration
 - New resource to configure the used certificate on a deployment

### Changed

- Changes to xRDSessionCollectionConfiguration
 - Fixing comparison of some RD Session Collection Configuration properties and
   supplied parameters by moving to the DscResource.Common `Test-DscParameterState` cmdlet.
   ([issue #82](https://github.com/dsccommunity/xRemoteDesktopSessionHost/issues/82)).
- Changes to xRDSessionDeployment
 - Fixing Get-TargetResource to target the connection broker, instead of
   assuming localhost
- Changes to xRDServer
 - Changed resouce key from Server alone to Role + Server.
   This allows the resource to be used multiple times for different roles on
   the same server. (Issue #62)
- Changes to xRemoteApp
 - Fix xRDRemoteApp Test-TargetResource to not test PowerShell common parameters
- Changes to tests
 - Pin tests to use Pester v4 instead of latest (v5)


- Changes to xRDRemoteApp
 - Fixing typo in parameter name when calling the function ValidateCustomModeParameters (issue #50).
- Changes to xRDSessionDeployment
 - When RDMS service does not exist the Get-TargetResource will no longer throw an error (issue #47).
- Rename Tests/Unit folder to use upper case on first letter.
- Update appveyor.yml to use the default template.
- Added default template files .codecov.yml, .gitattributes, and .gitignore, and
 .vscode folder.
- xRDSessionCollectionConfiguration:
 - Changed CollectionName variable validation max length to 256
- xRDSessionCollection
 - Changed CollectionName variable validation max length to 256
- xRDRemoteApp
 - Changed CollectionName variable validation max length to 256


- Changes to xRDSessionDeployment
 - Fixed issue where an initial deployment failed due to a convert to lowercase (issue #39).
 - Added unit tests to test Get, Test and Set results in this resource.
- Change to xRDRemoteApp
 - Fixed issue where this resource ignored the CollectionName provided in the parameters (issue #41).
 - Changed key values in schema.mof to only Alias and CollectionName, DisplayName and FilePath are not key values.
 - Added Ensure property (Absent or Present) to enable removal of RemoteApps.
 - Added unit tests to test Get, Test and Set results in this resource.


- Added additional resources, copied from the [Azure RDS quickstart templates](https://github.com/Azure/RDS-Templates).
- xRDSessionCollection:
 - Fixed call to Add-RDSessionHost in Set-TargetResource by properly removing CollectionDescription from PSBoundParameters (issue #28)
 - Fixed bug on Get-TargetResource that did return any collection instead of the one collection the user asked for (issue #27)
 - Added unit tests to test Get, Test and Set results in this resource


- xRDSessionCollectionConfiguration: Add support to configure UserProfileDisks on Windows Server 2016


- Fix issue where DSC configuration gets into a reboot loop because sessionhost does not match (casing) and RDMS service is not started in time


- Updated CollectionName parameter to validate length between 1 and 15 characters, and added tests to verify.


- Converted appveyor.yml to install Pester from PSGallery instead of from Chocolatey.


- Fixed an issue with version checks where OS version greater than 9 would fail (Windows 10/Server 2016)


- Fixed encoding

## 1.0.1


- Initial release with the following resources
 - xRDSessionDeployment
 - xRDSessionCollection
 - xRDSessionCollectionConfiguration
 - xRDRemoteApp

Version History

Version Downloads Last updated
2.0.0 (current version) 89,127 9/29/2020
2.0.0-previe... 1,424 9/29/2020
2.0.0-previe... 2,364 3/25/2020
2.0.0-previe... 5 3/25/2020
2.0.0-previe... 28 1/3/2020 89,017 9/19/2019 163,933 9/5/2018 11,456 7/25/2018 11,786 6/13/2018 2,335 12/20/2017 14,238 3/8/2017 1,042 11/2/2016 1,436 3/31/2016 1,374 9/11/2015
1.0.1 442 5/13/2014
1.0 40 4/8/2014