xexchange
Version information
This version is compatible with:
- Puppet Enterprise 2023.8.x, 2023.7.x, 2023.6.x, 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x
- Puppet >= 7.0.0 < 9.0.0
Start using this module
Add this module to your Puppetfile:
mod 'dsc-xexchange', '1.34.0-0-4'
Learn more about managing modules with a PuppetfileDocumentation
xexchange
Table of Contents
Description
This is an auto-generated module, using the Puppet DSC Builder to vendor and expose the xExchange PowerShell module's DSC resources as Puppet resources. The functionality of this module comes entirely from the vendored PowerShell resources, which are pinned at v1.34.0. The PowerShell module describes itself like this:
Module with DSC Resources for deployment and configuration of Microsoft Exchange Server.
For information on troubleshooting to determine whether any encountered problems are with the Puppet wrapper or the DSC resource, see the troubleshooting section below.
Requirements
This module, like all auto-generated Puppetized DSC modules, relies on two important technologies in the Puppet stack: the Puppet Resource API and the puppetlabs/pwshlib Puppet module.
The Resource API provides a simplified option for writing types and providers and is responsible for how this module is structured. The Resource API ships inside of Puppet starting with version 6. While it is technically possible to add the Resource API functionality to Puppet 5.5.x, the DSC functionality has not been tested in this setup. For more information on the Resource API, review the documentation.
The module also depends on the pwshlib module. This Puppet module includes two important things: the ruby-pwsh library for running PowerShell code from ruby and the base provider for DSC resources, which this module leverages.
All of the actual work being done to call the DSC resources vendored with this module is in this file from the pwshlib module. This is important for troubleshooting and bug reporting, but doesn't impact your use of the module except that the end result will be that nothing works, as the dependency is not installed alongside this module!
Long File Path Support
Several PowerShell modules with DSC Resources end up with very long file paths once vendored, many of which exceed the 260 character limit for file paths. Luckily in Windows 10 (build 1607+), Windows Server 2016 (build 1607+), and Windows Server 2019 there is now an option for supporting long file paths transparently!
We strongly recommend enabling long file path support on any machines using this module to avoid path length issues.
You can set this value using the Puppet registry_value
resource:
registry_value { 'HKLM\System\CurrentControlSet\Control\FileSystem\LongPathsEnabled':
ensure => 'present',
data => [1],
provider => 'registry',
type => 'dword',
}
You can also set this value outside of Puppet by following the Microsoft documentation.
Usage
You can specify any of the DSC resources from this module like a normal Puppet resource in your manifests. The examples below use DSC resources from from the PowerShellGet repository, regardless of what module you're looking at here; the syntax, not the specifics, is what's important.
For reference documentation about the DSC resources exposed in this module, see the Reference Forge tab, or the REFERENCE.md file.
# Include a meaningful title for your resource declaration
dsc_psrepository { 'Add team module repo':
dsc_name => 'foo',
dsc_ensure => present,
# This location is nonsense, can be any valid folder on your
# machine or in a share, any location the SourceLocation param
# for the DSC resource will accept.
dsc_sourcelocation => 'C:\Program Files',
# You must always pass an enum fully lower-cased;
# Puppet is case sensitive even when PowerShell isn't
dsc_installationpolicy => untrusted,
}
dsc_psrepository { 'Trust public gallery':
dsc_name => 'PSGallery',
dsc_ensure => present,
dsc_installationpolicy => trusted,
}
dsc_psmodule { 'Make Ruby manageable via uru':
dsc_name => 'RubyInstaller',
dsc_ensure => present,
}
Credentials
Credentials are always specified as a hash of the username and password for the account. The password must use the Puppet Sensitive type; this ensures that logs and reports redact the password, displaying it instead as <Sensitive [value redacted]>.
dsc_psrepository { 'PowerShell Gallery':
dsc_name => 'psgAllery',
dsc_installationpolicy => 'Trusted',
dsc_psdscrunascredential => {
user => 'apple',
password => Sensitive('foobar'),
},
}
Class-Based Resources
Class-based DSC Resources can be used like any other DSC Resource in this module, with one important note:
Due to a bug in calling class-based DSC Resources by path instead of module name, each call to Invoke-DscResource
needs to temporarily munge the system-level environment variable for PSModulePath
;
the variable is reset prior to the end of each invocation.
CIM Instances
Because the CIM instances for DSC resources are fully mapped, the types actually explain fairly precisely what the shape of each CIM instance has to be - and, moreover, the type definition means that you get checking at catalog compile time. Puppet parses CIM instances are structured hashes (or arrays of structured hashes) that explicitly declare their keys and the valid types of values for each key.
So, for the dsc_accesscontrolentry
property of the dsc_ntfsaccessentry
type, which has a MOF type of NTFSAccessControlList[]
, Puppet defines the CIM instance as:
Array[Struct[{
accesscontrolentry => Array[Struct[{
accesscontroltype => Enum['Allow', 'Deny'],
inheritance => Enum['This folder only', 'This folder subfolders and files', 'This folder and subfolders', 'This folder and files', 'Subfolders and files only', 'Subfolders only', 'Files only'],
ensure => Enum['Present', 'Absent'],
cim_instance_type => 'NTFSAccessControlEntry',
filesystemrights => Array[Enum['AppendData', 'ChangePermissions', 'CreateDirectories', 'CreateFiles', 'Delete', 'DeleteSubdirectoriesAndFiles', 'ExecuteFile', 'FullControl', 'ListDirectory', 'Modify', 'Read', 'ReadAndExecute', 'ReadAttributes', 'ReadData', 'ReadExtendedAttributes', 'ReadPermissions', 'Synchronize', 'TakeOwnership', 'Traverse', 'Write', 'WriteAttributes', 'WriteData', 'WriteExtendedAttributes']]
}]],
forceprincipal => Optional[Boolean],
principal => Optional[String],
}]]
A valid example of that in a puppet manifest looks like this:
dsc_accesscontrollist => [
{
accesscontrolentry => [
{
accesscontroltype => 'Allow',
inheritance => 'This folder only',
ensure => 'Present',
filesystemrights => 'ChangePermissions',
cim_instance_type => 'NTFSAccessControlEntry',
},
],
principal => 'veryRealUserName',
},
]
For more information about using a built module, check out our narrative documentation.
Properties
Note that the only properties specified in a resource declaration which are passed to Invoke-Dsc are all prepended with dsc.
If a property does _not start with dsc_ it is used to control how Puppet interacts with DSC/other Puppet resources - for example,
specifying a unique name for the resource for Puppet to distinguish between declarations or Puppet metaparameters (notifies,
before, etc).
Validation Mode
By default, these resources use the property validation mode, which checks whether or not the resource is in the desired state the same way most Puppet resources are validated;
by comparing the properties returned from the system with those specified in the manifest.
Sometimes, however, this is insufficient;
many DSC Resources return data that does not compare properly to the desired state (some are missing properties, others are malformed, some simply cannot be strictly compared).
In these cases, you can set the validation mode to resource
, which falls back on calling Invoke-DscResource
with the Test
method and trusts that result.
When using the resource
validation mode, the resource is tested once and will then treat all properties of that resource as in sync (if the result returned true
) or not in sync.
This loses the granularity of change reporting for the resource but prevents flapping and unexpected behavior.
# This will flap because the DSC resource never returns name in SecurityPolicyDsc v2.10.0.0
dsc_securityoption { 'Enforce Anonoymous SID Translation':
dsc_name => 'Enforce Anonymous SID Translation',
dsc_network_access_allow_anonymous_sid_name_translation => 'Disabled',
}
# This will idempotently apply
dsc_psrepository { 'PowerShell Gallery':
validation_mode => 'resource',
dsc_name => 'Enforce Anonymous SID Translation',
dsc_network_access_allow_anonymous_sid_name_translation => 'Disabled',
}
It is important to note that this feature is only supported with a version of puppetlabs-pwshlib
equal to or higher than 0.9.0
, in which the supporting code for the DSC Base Provider to implement custom insync was shipped.
Finally, while this module's metadata says that the supported Puppet versions are 6.0.0 and up, the implementation of the validation_mode
parameter relies on the custom_insync
feature of the Puppet Resource API.
The custom_insync
feature first shipped in the puppet-resource_api
version 1.8.14
, which itself is only included in Puppet versions equal to or newer than 6.23.0
and 7.8.0
for the 6x and 7x platforms respectively.
Using this module against older Puppet versions will result in a warning (example below) and only use the default property-by-property change reporting, regardless of the setting of validation_mode
.
Warning: Unknown feature detected: ["custom_insync"]
Troubleshooting
In general, there are three broad categories of problems:
- Problems with the way the underlying DSC resource works.
- Problems with the type definition, where you can't specify a valid set of properties for the DSC resource
- Problems with calling the underlying DSC resource - the parameters aren't being passed correctly or the resource can't be found
Unfortunately, problems with the way the underlying DSC resource works are something we can't help directly with. You'll need to file an issue with the upstream maintainers for the PowerShell module.
Problems with the type definition are when a value that should be valid according to the DSC resource's documentation and code is not accepted by the Puppet wrapper. If and when you run across one of these, please file an issue with the Puppet DSC Builder; this is where the conversion happens and once we know of a problem we can fix it and regenerate the Puppet modules. To help us identify the issue, please specify the DSC module, version, resource, property and values that are giving you issues. Once a fix is available we will regenerate and release updated versions of this Puppet wrapper.
Problems with calling the underlying DSC resource become apparent by comparing <value passed in in puppet>
with <value received by DSC>
.
In this case, please file an issue with the puppetlabs/pwshlib module, which is where the DSC base provider actually lives.
We'll investigate and prioritize a fix and update the puppetlabs/pwshlib module.
Updating to the pwshlib version with the fix will immediately take advantage of the improved functionality without waiting for this module to be reconverted and published.
For specific information on troubleshooting a generated module, check the troubleshooting guide for the puppet.dsc module.
Known Limitations
-
Currently, because of the way Puppet caches files on agents, use of the legacy
puppetlabs-dsc
module is not compatible with this or any auto-generated DSC module. Inclusion of both will lead to pluginsync conflicts. -
Right now, if you have the same version of a PowerShell module with class-based DSC Resources in your PSModulePath as vendored in a Puppetized DSC Module, you cannot use those class-based DSC Resources from inside of Puppet due to a bug in DSC which prevents using a module by path reference instead of name. Instead, DSC will see that there are two DSC Resources for the same module and version and then error out.
-
When PowerShell Script Block Logging is enabled, data marked as sensitive in your manifest may appear in these logs as plain text. It is highly recommended, by both Puppet and Microsoft, that you also enable Protected Event Logging alongside this to encrypt the logs to protect this information.
Configuring the LCM
In order for a Puppetized DSC module to function, the DSC Local Configuration Manager (LCM) RefreshMode
must be set to either Push
or Disabled
.
The default value for RefreshMode
in WMF 5.0 and WMF 5.1 is Push
- so if it has not been set to anything else then there is no action needed on your part.
However if the value of the LCM has been set to anything other than Push
then the module will not function and so the value must either be changed back or disabled.
The Puppetized DSC modules use the Invoke-DscResource
cmdlet to invoke DSC Resources of the target machine.
If the RefreshMode
is set to Pull
, DSC Resources will only run from a DSC Pull Server - in this setting DSC does not allow any DSC Resources to be run interactively on the host.
Module Installation
If you're using this module with Puppet Enterprise and Code Manager, everything should "just work" - no errors or issues acquiring and deploying this or any Puppetized DSC module to nodes.
Unfortunately, due a bug in minitar which prevents it from unpacking archives with long file paths, both r10k
and serverless Puppet (via puppet module install
) methods of installing modules with long path names will fail.
In short, minitar is unable to unpack modules that contain long file paths (though it can create them).
As a workaround, you can retrieve DSC modules from the forge via PowerShell and 7zip:
$ModuleAuthor = 'dsc'
$ModuleName = 'xremotedesktopsessionhost'
$ModuleVersion = '2.0.0-0-1'
$ArchiveFileName = "$ModuleAuthor-$ModuleName-$ModuleVersion.tar.gz"
$DownloadUri = "https://forge.puppet.com/v3/files/$ArchiveFileName"
# Download the module tar.gz to the current directory
Invoke-WebRequest -Uri $DownloadUri -OutFile ./$ArchiveFileName
# Use 7zip to extract the module to the current directory
& 7z x $ArchiveFileName -so | & 7z x -aoa -si -ttar
Reference
Table of Contents
Resource types
dsc_xexchaccepteddomain
: The DSC xExchAcceptedDomain resource type. Automatically generated from version 1.34.0dsc_xexchactivesyncvirtualdirectory
: The DSC xExchActiveSyncVirtualDirectory resource type. Automatically generated from version 1.34.0dsc_xexchaddresslist
: The DSC xExchAddressList resource type. Automatically generated from version 1.34.0dsc_xexchantimalwarescanning
: The DSC xExchAntiMalwareScanning resource type. Automatically generated from version 1.34.0dsc_xexchautodiscovervirtualdirectory
: The DSC xExchAutodiscoverVirtualDirectory resource type. Automatically generated from version 1.34.0dsc_xexchautomountpoint
: The DSC xExchAutoMountPoint resource type. Automatically generated from version 1.34.0dsc_xexchclientaccessserver
: The DSC xExchClientAccessServer resource type. Automatically generated from version 1.34.0dsc_xexchdatabaseavailabilitygroup
: The DSC xExchDatabaseAvailabilityGroup resource type. Automatically generated from version 1.34.0dsc_xexchdatabaseavailabilitygroupmember
: The DSC xExchDatabaseAvailabilityGroupMember resource type. Automatically generated from version 1.34.0dsc_xexchdatabaseavailabilitygroupnetwork
: The DSC xExchDatabaseAvailabilityGroupNetwork resource type. Automatically generated from version 1.34.0dsc_xexchecpvirtualdirectory
: The DSC xExchEcpVirtualDirectory resource type. Automatically generated from version 1.34.0dsc_xexcheventloglevel
: The DSC xExchEventLogLevel resource type. Automatically generated from version 1.34.0dsc_xexchexchangecertificate
: The DSC xExchExchangeCertificate resource type. Automatically generated from version 1.34.0dsc_xexchexchangeserver
: The DSC xExchExchangeServer resource type. Automatically generated from version 1.34.0dsc_xexchfrontendtransportservice
: The DSC xExchFrontendTransportService resource type. Automatically generated from version 1.34.0dsc_xexchimapsettings
: The DSC xExchImapSettings resource type. Automatically generated from version 1.34.0dsc_xexchinstall
: The DSC xExchInstall resource type. Automatically generated from version 1.34.0dsc_xexchjetstress
: The DSC xExchJetstress resource type. Automatically generated from version 1.34.0dsc_xexchjetstresscleanup
: The DSC xExchJetstressCleanup resource type. Automatically generated from version 1.34.0dsc_xexchmailboxdatabase
: The DSC xExchMailboxDatabase resource type. Automatically generated from version 1.34.0dsc_xexchmailboxdatabasecopy
: The DSC xExchMailboxDatabaseCopy resource type. Automatically generated from version 1.34.0dsc_xexchmailboxserver
: The DSC xExchMailboxServer resource type. Automatically generated from version 1.34.0dsc_xexchmailboxtransportservice
: The DSC xExchMailboxTransportService resource type. Automatically generated from version 1.34.0dsc_xexchmaintenancemode
: The DSC xExchMaintenanceMode resource type. Automatically generated from version 1.34.0dsc_xexchmapivirtualdirectory
: The DSC xExchMapiVirtualDirectory resource type. Automatically generated from version 1.34.0dsc_xexchoabvirtualdirectory
: The DSC xExchOabVirtualDirectory resource type. Automatically generated from version 1.34.0dsc_xexchoutlookanywhere
: The DSC xExchOutlookAnywhere resource type. Automatically generated from version 1.34.0dsc_xexchowavirtualdirectory
: The DSC xExchOwaVirtualDirectory resource type. Automatically generated from version 1.34.0dsc_xexchpopsettings
: The DSC xExchPopSettings resource type. Automatically generated from version 1.34.0dsc_xexchpowershellvirtualdirectory
: The DSC xExchPowerShellVirtualDirectory resource type. Automatically generated from version 1.34.0dsc_xexchreceiveconnector
: The DSC xExchReceiveConnector resource type. Automatically generated from version 1.34.0dsc_xexchremotedomain
: The DSC xExchRemoteDomain resource type. Automatically generated from version 1.34.0dsc_xexchsendconnector
: The DSC xExchSendConnector resource type. Automatically generated from version 1.34.0dsc_xexchtransportservice
: The DSC xExchTransportService resource type. Automatically generated from version 1.34.0dsc_xexchumcallroutersettings
: The DSC xExchUMCallRouterSettings resource type. Automatically generated from version 1.34.0dsc_xexchumservice
: The DSC xExchUMService resource type. Automatically generated from version 1.34.0dsc_xexchwaitforadprep
: The DSC xExchWaitForADPrep resource type. Automatically generated from version 1.34.0dsc_xexchwaitfordag
: The DSC xExchWaitForDAG resource type. Automatically generated from version 1.34.0dsc_xexchwaitformailboxdatabase
: The DSC xExchWaitForMailboxDatabase resource type. Automatically generated from version 1.34.0dsc_xexchwebservicesvirtualdirectory
: The DSC xExchWebServicesVirtualDirectory resource type. Automatically generated from version 1.34.0
Resource types
dsc_xexchaccepteddomain
The DSC xExchAcceptedDomain resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchaccepteddomain
type.
dsc_addressbookenabled
Data type: Optional[Boolean]
The AddressBookEnabled parameter specifies whether to enable recipient filtering for this accepted domain.
dsc_domaintype
Data type: Optional[Enum['Authoritative', 'authoritative', 'ExternalRelay', 'externalrelay', 'InternalRelay', 'internalrelay']]
The DomainType parameter specifies the type of accepted domain that you want to configure.
dsc_ensure
Data type: Optional[Enum['Present', 'present', 'Absent', 'absent']]
Specifies whether this accepted domain should be present or absent
dsc_makedefault
Data type: Optional[Boolean]
The MakeDefault parameter specifies whether the accepted domain is the default domain.
dsc_matchsubdomains
Data type: Optional[Boolean]
The MatchSubDomains parameter enables mail to be sent by and received from users on any subdomain of this accepted domain.
dsc_name
Data type: Optional[String]
The Name parameter specifies a unique name for the accepted domain object.
Parameters
The following parameters are available in the dsc_xexchaccepteddomain
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_domainname
namevar
Data type: String
The domain name of the accepted domain.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchactivesyncvirtualdirectory
The DSC xExchActiveSyncVirtualDirectory resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchactivesyncvirtualdirectory
type.
dsc_activesyncserver
Data type: Optional[String]
dsc_allowservicerestart
Data type: Optional[Boolean]
dsc_autocertbasedauth
Data type: Optional[Boolean]
dsc_autocertbasedauthhttpsbindings
Data type: Optional[Array[String]]
dsc_autocertbasedauththumbprint
Data type: Optional[String]
dsc_baditemreportingenabled
Data type: Optional[Boolean]
dsc_basicauthenabled
Data type: Optional[Boolean]
dsc_clientcertauth
Data type: Optional[Enum['Ignore', 'ignore', 'Accepted', 'accepted', 'Required', 'required']]
dsc_compressionenabled
Data type: Optional[Boolean]
dsc_domaincontroller
Data type: Optional[String]
dsc_extendedprotectionflags
Data type: Optional[Array[Enum['None', 'none', 'Proxy', 'proxy', 'NoServiceNameCheck', 'noservicenamecheck', 'AllowDotlessSpn', 'allowdotlessspn', 'ProxyCohosting', 'proxycohosting']]]
dsc_extendedprotectionspnlist
Data type: Optional[Array[String]]
dsc_extendedprotectiontokenchecking
Data type: Optional[Enum['None', 'none', 'Allow', 'allow', 'Require', 'require']]
dsc_externalauthenticationmethods
Data type: Optional[Array[String]]
dsc_externalurl
Data type: Optional[String]
dsc_installisapifilter
Data type: Optional[Boolean]
dsc_internalauthenticationmethods
Data type: Optional[Array[String]]
dsc_internalurl
Data type: Optional[String]
dsc_mobileclientcertificateauthorityurl
Data type: Optional[String]
dsc_mobileclientcertificateprovisioningenabled
Data type: Optional[Boolean]
dsc_mobileclientcerttemplatename
Data type: Optional[String]
dsc_name
Data type: Optional[String]
dsc_remotedocumentsactionforunknownservers
Data type: Optional[Enum['Allow', 'allow', 'Block', 'block']]
dsc_remotedocumentsallowedservers
Data type: Optional[Array[String]]
dsc_remotedocumentsblockedservers
Data type: Optional[Array[String]]
dsc_remotedocumentsinternaldomainsuffixlist
Data type: Optional[Array[String]]
dsc_sendwatsonreport
Data type: Optional[Boolean]
dsc_windowsauthenabled
Data type: Optional[Boolean]
Parameters
The following parameters are available in the dsc_xexchactivesyncvirtualdirectory
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_identity
namevar
Data type: String
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchaddresslist
The DSC xExchAddressList resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchaddresslist
type.
dsc_conditionalcompany
Data type: Optional[Array[String]]
The ConditionalCompany parameter specifies a precanned filter that's based on the value of the recipient's Company property.
dsc_conditionalcustomattribute1
Data type: Optional[Array[String]]
The ConditionalCustomAttribute1 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute1 property.
dsc_conditionalcustomattribute10
Data type: Optional[Array[String]]
The ConditionalCustomAttribute10 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute10 property.
dsc_conditionalcustomattribute11
Data type: Optional[Array[String]]
The ConditionalCustomAttribute11 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute11 property.
dsc_conditionalcustomattribute12
Data type: Optional[Array[String]]
The ConditionalCustomAttribute12 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute12 property.
dsc_conditionalcustomattribute13
Data type: Optional[Array[String]]
The ConditionalCustomAttribute13 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute13 property.
dsc_conditionalcustomattribute14
Data type: Optional[Array[String]]
The ConditionalCustomAttribute14 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute14 property.
dsc_conditionalcustomattribute15
Data type: Optional[Array[String]]
The ConditionalCustomAttribute15 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute15 property.
dsc_conditionalcustomattribute2
Data type: Optional[Array[String]]
The ConditionalCustomAttribute2 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute2 property.
dsc_conditionalcustomattribute3
Data type: Optional[Array[String]]
The ConditionalCustomAttribute3 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute3 property.
dsc_conditionalcustomattribute4
Data type: Optional[Array[String]]
The ConditionalCustomAttribute4 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute4 property.
dsc_conditionalcustomattribute5
Data type: Optional[Array[String]]
The ConditionalCustomAttribute5 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute5 property.
dsc_conditionalcustomattribute6
Data type: Optional[Array[String]]
The ConditionalCustomAttribute6 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute6 property.
dsc_conditionalcustomattribute7
Data type: Optional[Array[String]]
The ConditionalCustomAttribute7 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute7 property.
dsc_conditionalcustomattribute8
Data type: Optional[Array[String]]
The ConditionalCustomAttribute8 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute8 property.
dsc_conditionalcustomattribute9
Data type: Optional[Array[String]]
The ConditionalCustomAttribute9 parameter specifies a precanned filter that's based on the value of the recipient's ConditionalCustomAttribute9 property.
dsc_conditionaldepartment
Data type: Optional[Array[String]]
The ConditionalDepartment parameter specifies a precanned filter that's based on the value of the recipient's Department property.
dsc_conditionalstateorprovince
Data type: Optional[Array[String]]
The ConditionalStateOrProvince parameter specifies a precanned filter that's based on the value of the recipient's StateOrProvince property.
dsc_container
Data type: Optional[String]
The Container parameter specifies where to create the address list.
dsc_displayname
Data type: Optional[String]
The DisplayName parameter specifies where to create the address list.
dsc_ensure
Data type: Optional[Enum['Present', 'present', 'Absent', 'absent']]
Should this resource be present or absent
dsc_includedrecipients
Data type: Optional[Array[Enum['MailboxUsers', 'mailboxusers', 'MailContacts', 'mailcontacts', 'MailGroups', 'mailgroups', 'MailUsers', 'mailusers', 'Resources', 'resources', 'AllRecipients', 'allrecipients']]]
The IncludedRecipients parameter specifies where to create the address list.
dsc_recipientcontainer
Data type: Optional[String]
The RecipientContainer parameter specifies a filter that's based on the recipient's location in Active Directory.
dsc_recipientfilter
Data type: Optional[String]
The RecipientFilter parameter specifies a custom OPath filter that's based on the value of any available recipient property.
Parameters
The following parameters are available in the dsc_xexchaddresslist
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_name
namevar
Data type: String
The name of the address list.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchantimalwarescanning
The DSC xExchAntiMalwareScanning resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchantimalwarescanning
type.
dsc_allowservicerestart
Data type: Optional[Boolean]
Whether the Transport services should be automatically restarted after a status change
Parameters
The following parameters are available in the dsc_xexchantimalwarescanning
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange
dsc_enabled
namevar
Data type: Boolean
Whether Exchange Anti-malware scanning should be Enabled
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchautodiscovervirtualdirectory
The DSC xExchAutodiscoverVirtualDirectory resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchautodiscovervirtualdirectory
type.
dsc_allowservicerestart
Data type: Optional[Boolean]
Whether it is OK to recycle the app pool after making changes. Defaults to $true.
dsc_basicauthentication
Data type: Optional[Boolean]
Specifies whether Basic authentication is enabled on the virtual directory.
dsc_digestauthentication
Data type: Optional[Boolean]
Specifies whether Digest authentication is enabled on the virtual directory.
dsc_domaincontroller
Data type: Optional[String]
Specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory.
dsc_extendedprotectionflags
Data type: Optional[Array[Enum['None', 'none', 'Proxy', 'proxy', 'NoServiceNameCheck', 'noservicenamecheck', 'AllowDotlessSpn', 'allowdotlessspn', 'ProxyCohosting', 'proxycohosting']]]
Specifies custom settings for Extended Protection for Authentication on the virtual directory.
dsc_extendedprotectionspnlist
Data type: Optional[Array[String]]
Specifies a list of valid Service Principal Names (SPNs) if you're using Extended Protection for Authentication on the virtual directory.
dsc_extendedprotectiontokenchecking
Data type: Optional[Enum['None', 'none', 'Allow', 'allow', 'Require', 'require']]
Defines how you want to use Extended Protection for Authentication on the virtual directory.
dsc_oauthauthentication
Data type: Optional[Boolean]
Specifies whether OAuth authentication is enabled on the virtual directory.
dsc_windowsauthentication
Data type: Optional[Boolean]
Specifies whether Integrated Windows authentication is enabled on the virtual directory.
dsc_wssecurityauthentication
Data type: Optional[Boolean]
Specifies whether WS-Security (Web Services Security) authentication is enabled on the virtual directory.
Parameters
The following parameters are available in the dsc_xexchautodiscovervirtualdirectory
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_identity
namevar
Data type: String
The Identity parameter specifies the Autodiscover virtual directory that you want to modify.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchautomountpoint
The DSC xExchAutoMountPoint resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchautomountpoint
type.
dsc_autodagdatabasesrootfolderpath
Data type: String
The parent folder for Exchange database mount point folders.
dsc_autodagvolumesrootfolderpath
Data type: String
The parent folder for Exchange volume mount point folders.
dsc_createsubfolders
Data type: Optional[Boolean]
If $true, specifies that DBNAME.db and DBNAME.log subfolders should be automatically created underneath the ExchangeDatabase mount points. Defaults to $false.
dsc_disktodbmap
Data type: Array[String]
An array of strings containing the databases for each disk. Databases on the same disk should be in the same string, and comma separated. Example: 'DB1,DB2','DB3,DB4'. This puts DB1 and DB2 on one disk, and DB3 and DB4 on another.
dsc_ensureexchangevolumemountpointislast
Data type: Optional[Boolean]
Whether the EXVOL mount point should be moved to be the last mount point listed on each disk. Defaults to $false.
dsc_filesystem
Data type: Optional[Enum['NTFS', 'ntfs', 'REFS', 'refs']]
The file system to use when formatting the volume. Defaults to NTFS.
dsc_mindisksize
Data type: Optional[String]
The minimum size of a disk to consider using. Defaults to none. Should be in a format like '1024MB' or '1TB'.
dsc_partitioningscheme
Data type: Optional[Enum['MBR', 'mbr', 'GPT', 'gpt']]
The partitioning scheme for the volume. Defaults to GPT.
dsc_sparevolumecount
Data type: Integer[0, 4294967295]
How many spare volumes will be available.
dsc_unitsize
Data type: Optional[String]
The unit size to use when formatting the disk. Defaults to 64k.
dsc_volumeprefix
Data type: Optional[String]
The prefix to give to Exchange Volume folders. Defaults to EXVOL.
Parameters
The following parameters are available in the dsc_xexchautomountpoint
type.
dsc_identity
namevar
Data type: String
The name of the server. Not actually used for anything.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchclientaccessserver
The DSC xExchClientAccessServer resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchclientaccessserver
type.
dsc_autodiscoverserviceinternaluri
Data type: Optional[String]
The AutoDiscoverServiceInternalUri parameter specifies the internal URL of the Autodiscover service.
dsc_autodiscoversitescope
Data type: Optional[Array[String]]
The AutoDiscoverSiteScope parameter specifies the Active Directory site that the Autodiscover service is authoritative for. Clients that connect to the Autodiscover service by using the internal URL need to exist in the specified site.
dsc_cleanupinvalidalternateserviceaccountcredentials
Data type: Optional[Boolean]
The CleanUpInvalidAlternateServiceAccountCredentialsswitch specifies whether to remove a previously configured alternate service account that's no longer valid.
dsc_domaincontroller
Data type: Optional[String]
The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.
dsc_removealternateserviceaccountcredentials
Data type: Optional[Boolean]
The RemoveAlternateServiceAccountCredentialsswitch specifies whether to remove a previously distributed alternate service account.
Parameters
The following parameters are available in the dsc_xexchclientaccessserver
type.
dsc_alternateserviceaccountcredential
dsc_credential
dsc_identity
dsc_psdscrunascredential
dsc_timeout
name
validation_mode
dsc_alternateserviceaccountcredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
The AlternateServiceAccountCredential parameter specifies an alternative service account that'stypically used for Kerberos authentication.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_identity
namevar
Data type: String
The hostname of the Client Access Server.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchdatabaseavailabilitygroup
The DSC xExchDatabaseAvailabilityGroup resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchdatabaseavailabilitygroup
type.
dsc_alternatewitnessdirectory
Data type: Optional[String]
dsc_alternatewitnessserver
Data type: Optional[String]
dsc_autodagautoredistributeenabled
Data type: Optional[Boolean]
dsc_autodagautoreseedenabled
Data type: Optional[Boolean]
dsc_autodagbitlockerenabled
Data type: Optional[Boolean]
dsc_autodagdatabasecopiesperdatabase
Data type: Optional[Integer[-2147483648, 2147483647]]
dsc_autodagdatabasecopiespervolume
Data type: Optional[Integer[-2147483648, 2147483647]]
dsc_autodagdatabasesrootfolderpath
Data type: Optional[String]
dsc_autodagdiskreclaimerenabled
Data type: Optional[Boolean]
dsc_autodagtotalnumberofdatabases
Data type: Optional[Integer[-2147483648, 2147483647]]
dsc_autodagtotalnumberofservers
Data type: Integer[-2147483648, 2147483647]
dsc_autodagvolumesrootfolderpath
Data type: Optional[String]
dsc_databaseavailabilitygroupipaddresses
Data type: Optional[Array[String]]
dsc_datacenteractivationmode
Data type: Optional[Enum['Off', 'off', 'DagOnly', 'dagonly']]
dsc_domaincontroller
Data type: Optional[String]
dsc_filesystem
Data type: Optional[Enum['NTFS', 'ntfs', 'ReFS', 'refs']]
dsc_manualdagnetworkconfiguration
Data type: Optional[Boolean]
dsc_networkcompression
Data type: Optional[Enum['Disabled', 'disabled', 'Enabled', 'enabled', 'InterSubnetOnly', 'intersubnetonly', 'SeedOnly', 'seedonly']]
dsc_networkencryption
Data type: Optional[Enum['Disabled', 'disabled', 'Enabled', 'enabled', 'InterSubnetOnly', 'intersubnetonly', 'SeedOnly', 'seedonly']]
dsc_preferencemovefrequency
Data type: Optional[String]
dsc_replaylagmanagerenabled
Data type: Optional[Boolean]
dsc_replicationport
Data type: Optional[Integer[0, 65535]]
dsc_skipdagvalidation
Data type: Optional[Boolean]
dsc_witnessdirectory
Data type: Optional[String]
dsc_witnessserver
Data type: Optional[String]
Parameters
The following parameters are available in the dsc_xexchdatabaseavailabilitygroup
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_name
namevar
Data type: String
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchdatabaseavailabilitygroupmember
The DSC xExchDatabaseAvailabilityGroupMember resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchdatabaseavailabilitygroupmember
type.
dsc_dagname
Data type: String
dsc_domaincontroller
Data type: Optional[String]
dsc_skipdagvalidation
Data type: Optional[Boolean]
Parameters
The following parameters are available in the dsc_xexchdatabaseavailabilitygroupmember
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_mailboxserver
namevar
Data type: String
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchdatabaseavailabilitygroupnetwork
The DSC xExchDatabaseAvailabilityGroupNetwork resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchdatabaseavailabilitygroupnetwork
type.
dsc_databaseavailabilitygroup
Data type: String
The DAG where the network will live.
dsc_domaincontroller
Data type: Optional[String]
The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.
dsc_ensure
Data type: Enum['Present', 'present', 'Absent', 'absent']
Whether the DAG network should exist or not.
dsc_ignorenetwork
Data type: Optional[Boolean]
The IgnoreNetwork parameter indicates that the specified network should be ignored and not used by the DAG.
dsc_replicationenabled
Data type: Optional[Boolean]
The ReplicationEnabled parameter specifies whether the network can be used for replication activity. If this parameter isn't specified, the default behavior is to enable the network for replication.
dsc_subnets
Data type: Optional[Array[String]]
The Subnets parameter specifies one or more subnets that are associated with the DAG network.
Parameters
The following parameters are available in the dsc_xexchdatabaseavailabilitygroupnetwork
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_name
namevar
Data type: String
The name of the DAG network.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchecpvirtualdirectory
The DSC xExchEcpVirtualDirectory resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchecpvirtualdirectory
type.
dsc_adfsauthentication
Data type: Optional[Boolean]
The AdfsAuthentication parameter specifies that the ECP virtual directory allows users to authenticate through Active Directory Federation Services (AD FS) authentication. This parameter accepts $true or $false. The default value is $false.
dsc_adminenabled
Data type: Optional[Boolean]
The AdminEnabled parameter specifies that the EAC isn't able to be accessed through the Internet.
dsc_allowservicerestart
Data type: Optional[Boolean]
Whether it is OK to recycle the app pool after making changes. Defaults to $true.
dsc_basicauthentication
Data type: Optional[Boolean]
The BasicAuthentication parameter specifies whether Basic authentication is enabled on the virtual directory.
dsc_digestauthentication
Data type: Optional[Boolean]
The DigestAuthentication parameter specifies whether Digest authentication is enabled on the virtual directory.
dsc_domaincontroller
Data type: Optional[String]
The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.
dsc_extendedprotectionflags
Data type: Optional[Array[Enum['None', 'none', 'Proxy', 'proxy', 'NoServiceNameCheck', 'noservicenamecheck', 'AllowDotlessSpn', 'allowdotlessspn', 'ProxyCohosting', 'proxycohosting']]]
Specifies custom settings for Extended Protection for Authentication on the virtual directory.
dsc_extendedprotectionspnlist
Data type: Optional[Array[String]]
Specifies a list of valid Service Principal Names (SPNs) if you're using Extended Protection for Authentication on the virtual directory.
dsc_extendedprotectiontokenchecking
Data type: Optional[Enum['None', 'none', 'Allow', 'allow', 'Require', 'require']]
Defines how you want to use Extended Protection for Authentication on the virtual directory.
dsc_externalauthenticationmethods
Data type: Optional[Array[String]]
The ExternalAuthenticationMethods parameter specifies the authentication methods supported on the Exchange server from outside the firewall.
dsc_externalurl
Data type: Optional[String]
The ExternalURL parameter specifies the URL that's used to connect to the virtual directory from outside the firewall.
dsc_formsauthentication
Data type: Optional[Boolean]
The FormsAuthentication parameter specifies whether forms-based authentication is enabled on the ECP virtual directory.
dsc_gziplevel
Data type: Optional[Enum['Off', 'off', 'Low', 'low', 'High', 'high', 'Error', 'error']]
The GzipLevel parameter sets Gzip configuration information for the ECP virtual directory.
dsc_internalurl
Data type: Optional[String]
The InternalURL parameter specifies the URL that's used to connect to the virtual directory from inside the firewall.
dsc_owaoptionsenabled
Data type: Optional[Boolean]
Specifies that Outlook on the web Options is enabled for end users.
dsc_windowsauthentication
Data type: Optional[Boolean]
The WindowsAuthentication parameter specifies whether Integrated Windows authentication is enabled on the virtual directory.
Parameters
The following parameters are available in the dsc_xexchecpvirtualdirectory
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_identity
namevar
Data type: String
The Identity of the ECP Virtual Directory.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexcheventloglevel
The DSC xExchEventLogLevel resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexcheventloglevel
type.
dsc_level
Data type: Enum['Lowest', 'lowest', 'Low', 'low', 'Medium', 'medium', 'High', 'high', 'Expert', 'expert']
The Level parameter specifies the log level for the specific event logging category.
Parameters
The following parameters are available in the dsc_xexcheventloglevel
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange
dsc_identity
namevar
Data type: String
The Identity parameter specifies the name of the event logging category for which you want to set the event logging level.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchexchangecertificate
The DSC xExchExchangeCertificate resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchexchangecertificate
type.
dsc_allowextraservices
Data type: Optional[Boolean]
Get-ExchangeCertificate sometimes displays more services than are actually enabled. Setting this to true allows tests to pass in that situation as long as the requested services are present.
dsc_certfilepath
Data type: Optional[String]
The file path to the certificate .pfx file that should be imported.
dsc_domaincontroller
Data type: Optional[String]
The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.
dsc_donotrequiressl
Data type: Optional[Boolean]
Setting DoNotRequireSsl to True prevents DSC from enabling the Require SSL setting on the Default Web Site when you enable the certificate for IIS. Defaults to False.
dsc_ensure
Data type: Enum['Present', 'present', 'Absent', 'absent']
Whether the certificate should be present or not.
dsc_networkserviceallowed
Data type: Optional[Boolean]
Setting NetworkServiceAllowed to True gives the built-in Network Service account permission to read the certificate's private key without enabling the certificate for SMTP. Defaults to False.
dsc_services
Data type: Optional[Array[String]]
The Services parameter specifies the Exchange services that the certificate is enabled for.
Parameters
The following parameters are available in the dsc_xexchexchangecertificate
type.
dsc_certcreds
dsc_credential
dsc_psdscrunascredential
dsc_thumbprint
dsc_timeout
name
validation_mode
dsc_certcreds
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials containing the password to the .pfx file in CertFilePath.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_thumbprint
namevar
Data type: String
Thumbprint of the certificate to work on.
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchexchangeserver
The DSC xExchExchangeServer resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchexchangeserver
type.
dsc_allowservicerestart
Data type: Optional[Boolean]
Whether it is OK to restart the Information Store service after licensing the server. Defaults to $false.
dsc_customerfeedbackenabled
Data type: Optional[Boolean]
The CustomerFeedbackEnabled parameter specifies whether the Exchange server is enrolled in the Microsoft Customer Experience Improvement Program (CEIP). The CEIP collects anonymous information about how you use Exchange and problems that you might encounter. If you decide not to participate in the CEIP, the servers are opted-out automatically.
dsc_domaincontroller
Data type: Optional[String]
The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.
dsc_errorreportingenabled
Data type: Optional[Boolean]
The ErrorReportingEnabled parameter specifies whether error reporting is enabled.
dsc_internetwebproxy
Data type: Optional[String]
The InternetWebProxy parameter specifies the web proxy server that the Exchange server uses to reach the internet. A valid value for this parameter is the URL of the web proxy server.
dsc_internetwebproxybypasslist
Data type: Optional[Array[String]]
The InternetWebProxyBypassList parameter specifies a list of servers that bypass the web proxy server specified by the InternetWebProxy parameter. You identify the servers by their FQDN (for example, server01.contoso.com).
dsc_monitoringgroup
Data type: Optional[String]
The MonitoringGroup parameter specifies how to add your Exchange servers to monitoring groups. You can add your servers to an existing group or create a monitoring group based on location or deployment, or to partition monitoring responsibility among your servers.
dsc_productkey
Data type: Optional[String]
The ProductKey parameter specifies the server product key.
dsc_staticconfigdomaincontroller
Data type: Optional[String]
The StaticConfigDomainController parameter specifies whether to configure a domain controller to be used by the server via Directory Service Access (DSAccess).
dsc_staticdomaincontrollers
Data type: Optional[Array[String]]
The StaticDomainControllers parameter specifies whether to configure a list of domain controllers to be used by the server via DSAccess.
dsc_staticexcludeddomaincontrollers
Data type: Optional[Array[String]]
The StaticExcludedDomainControllers parameter specifies whether to exclude a list of domain controllers from being used by the server.
dsc_staticglobalcatalogs
Data type: Optional[Array[String]]
The StaticGlobalCatalogs parameter specifies whether to configure a list of global catalogs to be used by the server via DSAccess.
dsc_workloadmanagementpolicy
Data type: Optional[String]
The -ResourcePolicy, -WorkloadManagementPolicy and *-WorkloadPolicy system workload management cmdlets have been deprecated. System workload management settings should be customized only under the direction of Microsoft Customer Service and Support.
Parameters
The following parameters are available in the dsc_xexchexchangeserver
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_identity
namevar
Data type: String
The Identity parameter specifies the GUID, distinguished name (DN), or name of the server.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchfrontendtransportservice
The DSC xExchFrontendTransportService resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchfrontendtransportservice
type.
dsc_agentlogenabled
Data type: Optional[Boolean]
The AgentLogEnabled parameter specifies whether the agent log is enabled. The default value is $true.
dsc_agentlogmaxage
Data type: Optional[String]
The AgentLogMaxAge parameter specifies the maximum age for the agent log file. Log files older than the specified value are deleted. The default value is 7.00:00:00 or 7 days.
dsc_agentlogmaxdirectorysize
Data type: Optional[String]
The AgentLogMaxDirectorySize parameter specifies the maximum size of all agent logs in the agent log directory. When a directory reaches its maximum file size, the server deletes the oldest log files first. The default value is 250 MB.
dsc_agentlogmaxfilesize
Data type: Optional[String]
The AgentLogMaxFileSize parameter specifies the maximum size of each agent log file. When a log file reaches its maximum file size, a new log file is created. The default value is 10 MB.
dsc_agentlogpath
Data type: Optional[String]
The AgentLogPath parameter specifies the default agent log directory location.
dsc_allowservicerestart
Data type: Optional[Boolean]
Whether it is OK to restart the MSExchangeFrontEndTransport service after making changes. Defaults to $false.
dsc_antispamagentsenabled
Data type: Optional[Boolean]
The AntispamAgentsEnabled parameter specifies whether anti-spam agents are installed on the server specified with the Identity parameter. The default value is $false for the Front End Transport service.
dsc_connectivitylogenabled
Data type: Optional[Boolean]
The ConnectivityLogEnabled parameter specifies whether the connectivity log is enabled. The default value is $true.
dsc_connectivitylogmaxage
Data type: Optional[String]
The ConnectivityLogMaxAge parameter specifies the maximum age for the connectivity log file. Log files older than the specified value are deleted. The default value is 30 days.
dsc_connectivitylogmaxdirectorysize
Data type: Optional[String]
The ConnectivityLogMaxDirectorySize parameter specifies the maximum size of all connectivity logs in the connectivity log directory. When a directory reaches its maximum file size, the server deletes the oldest log files first. The default value is 1000 MB.
dsc_connectivitylogmaxfilesize
Data type: Optional[String]
The ConnectivityLogMaxFileSize parameter specifies the maximum size of each connectivity log file. When a log file reaches its maximum file size, a new log file is created. The default value is 10 MB.
dsc_connectivitylogpath
Data type: Optional[String]
The ConnectivityLogPath parameter specifies the default connectivity log directory location.
dsc_dnslogenabled
Data type: Optional[Boolean]
The DnsLogEnabled parameter specifies whether the DNS log is enabled. The default value is $false.
dsc_dnslogmaxage
Data type: Optional[String]
The DnsLogMaxAge parameter specifies the maximum age for the DNS log file. Log files older than the specified value are deleted. The default value is 7.00:00:00 or 7 days.
dsc_dnslogmaxdirectorysize
Data type: Optional[String]
The DnsLogMaxDirectorySize parameter specifies the maximum size of all DNS logs in the DNS log directory. When a directory reaches its maximum file size, the server deletes the oldest log files first. The default value is 100 MB.
dsc_dnslogmaxfilesize
Data type: Optional[String]
The DnsLogMaxFileSize parameter specifies the maximum size of each DNS log file. When a log file reaches its maximum file size, a new log file is created. The default value is 10 MB.
dsc_dnslogpath
Data type: Optional[String]
The DnsLogPath parameter specifies the DNS log directory location. The default value is blank ($null), which indicates no location is configured. If you enable DNS logging, you need to specify a local file path for the DNS log files by using this parameter.
dsc_externaldnsadapterenabled
Data type: Optional[Boolean]
The ExternalDNSAdapterEnabled parameter specifies one or more Domain Name System (DNS) servers that Exchange uses for external DNS lookups.
dsc_externaldnsadapterguid
Data type: Optional[String]
The ExternalDNSAdapterGuid parameter specifies the network adapter that has the DNS settings used for DNS lookups of destinations that exist outside the Exchange organization.
dsc_externaldnsprotocoloption
Data type: Optional[Enum['Any', 'any', 'UseTcpOnly', 'usetcponly', 'UseUdpOnly', 'useudponly']]
The ExternalDNSProtocolOption parameter specifies which protocol to use when querying external DNS servers. The valid options for this parameter are Any, UseTcpOnly, and UseUdpOnly. The default value is Any.
dsc_externaldnsservers
Data type: Optional[Array[String]]
The ExternalDNSServers parameter specifies the list of external DNS servers that the server queries when resolving a remote domain. You must separate IP addresses by using commas. The default value is an empty list ({}).
dsc_externalipaddress
Data type: Optional[String]
The ExternalIPAddress parameter specifies the IP address used in the Received message header field for every message that travels through the Front End Transport service.
dsc_internaldnsadapterenabled
Data type: Optional[Boolean]
The InternalDNSAdapterEnabled parameter specifies one or more DNS servers that Exchange uses for internal DNS lookups.
dsc_internaldnsadapterguid
Data type: Optional[String]
The InternalDNSAdapterGuid parameter specifies the network adapter that has the DNS settings used for DNS lookups of servers that exist inside the Exchange organization.
dsc_internaldnsprotocoloption
Data type: Optional[Enum['Any', 'any', 'UseTcpOnly', 'usetcponly', 'UseUdpOnly', 'useudponly']]
The InternalDNSProtocolOption parameter specifies which protocol to use when you query internal DNS servers. Valid options for this parameter are Any, UseTcpOnly, or UseUdpOnly. The default value is Any.
dsc_internaldnsservers
Data type: Optional[Array[String]]
The InternalDNSServers parameter specifies the list of DNS servers that should be used when resolving a domain name. DNS servers are specified by IP address and are separated by commas. The default value is any empty list ({}).
dsc_intraorgconnectorprotocollogginglevel
Data type: Optional[Enum['None', 'none', 'Verbose', 'verbose']]
The IntraOrgConnectorProtocolLoggingLevel parameter enables or disables SMTP protocol logging on the implicit and invisible intra-organization Send connector in the Front End Transport service.
dsc_maxconnectionrateperminute
Data type: Optional[Integer[-2147483648, 2147483647]]
The MaxConnectionRatePerMinute parameter specifies the maximum rate that connections are allowed to be opened with the transport service.
dsc_receiveprotocollogmaxage
Data type: Optional[String]
The ReceiveProtocolLogMaxAge parameter specifies the maximum age of a protocol log file that's shared by all Receive connectors in the Transport service on the server. Log files that are older than the specified value are automatically deleted.
dsc_receiveprotocollogmaxdirectorysize
Data type: Optional[String]
The ReceiveProtocolLogMaxDirectorySize parameter specifies the maximum size of the protocol log directory that's shared by all Receive connectors in the Front End Transport service on the server. When the maximum directory size is reached, the server deletes the oldest log files first.
dsc_receiveprotocollogmaxfilesize
Data type: Optional[String]
The ReceiveProtocolLogMaxFileSize parameter specifies the maximum size of a protocol log file that's shared by all Receive connectors in the Front End Transport service on the server. When a log file reaches its maximum file size, a new log file is created.
dsc_receiveprotocollogpath
Data type: Optional[String]
The ReceiveProtocolLogPath parameter specifies the location of the protocol log directory for all Receive connectors in the Front End Transport service on the server.
dsc_routingtablelogmaxage
Data type: Optional[String]
The RoutingTableLogMaxAge parameter specifies the maximum routing table log age. Log files older than the specified value are deleted. The default value is 7 days.
dsc_routingtablelogmaxdirectorysize
Data type: Optional[String]
The RoutingTableLogMaxDirectorySize parameter specifies the maximum size of the routing table log directory. When the maximum directory size is reached, the server deletes the oldest log files first. The default value is 250 MB.
dsc_routingtablelogpath
Data type: Optional[String]
The RoutingTableLogPath parameter specifies the directory location where routing table log files should be stored.
dsc_sendprotocollogmaxage
Data type: Optional[String]
The SendProtocolLogMaxAge parameter specifies the maximum age of a protocol log file that's shared by all Send connectors in the Front End Transport service that have this server configured as a source server. Log files that are older than the specified value are deleted.
dsc_sendprotocollogmaxdirectorysize
Data type: Optional[String]
The SendProtocolLogMaxDirectorySize parameter specifies the maximum size of the protocol log directory that's shared by all Send connectors in the Front End Transport service that have this server configured as a source server. When the maximum directory size is reached, the server deletes the oldest log files first.
dsc_sendprotocollogmaxfilesize
Data type: Optional[String]
The SendProtocolLogMaxFileSize parameter specifies the maximum size of a protocol log file that's shared by all the Send connectors in the Front End Transport service that have this server configured as a source server. When a log file reaches its maximum file size, a new log file is created.
dsc_sendprotocollogpath
Data type: Optional[String]
The SendProtocolLogPath parameter specifies the location of the protocol log directory for all Send connectors in the Front End Transport service that have this server configured as a source server.
dsc_transientfailureretrycount
Data type: Optional[Integer[-2147483648, 2147483647]]
The TransientFailureRetryCount parameter specifies the maximum number of immediate connection retries attempted when the server encounters a connection failure with a remote server. The default value is 6. The valid input range for this parameter is from 0 through 15. When the value of this parameter is set to 0, the server doesn't immediately attempt to retry an unsuccessful connection.
dsc_transientfailureretryinterval
Data type: Optional[String]
The TransientFailureRetryInterval parameter controls the connection interval between each connection attempt specified by the TransientFailureRetryCount parameter. For the Front End Transport service, the default value of the TransientFailureRetryInterval parameter is 5 minutes.
Parameters
The following parameters are available in the dsc_xexchfrontendtransportservice
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_identity
namevar
Data type: String
Hostname of the server to configure.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchimapsettings
The DSC xExchImapSettings resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchimapsettings
type.
dsc_allowservicerestart
Data type: Optional[Boolean]
Whether it is OK to restart the IMAP services after making changes. Defaults to $false.
dsc_authenticatedconnectiontimeout
Data type: Optional[String]
The AuthenticatedConnectionTimeout parameter specifies the period of time to wait before closing an idle authenticated connection.
dsc_banner
Data type: Optional[String]
The Banner parameter specifies the text string that's displayed to connecting IMAP4 clients.
dsc_calendaritemretrievaloption
Data type: Optional[Enum['iCalendar', 'icalendar', 'IntranetUrl', 'intraneturl', 'InternetUrl', 'interneturl', 'Custom', 'custom']]
The CalendarItemRetrievalOption parameter specifies how calendar items are presented to IMAP4 clients.
dsc_domaincontroller
Data type: Optional[String]
The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.
dsc_enableexactrfc822size
Data type: Optional[Boolean]
The EnableExactRFC822Size parameter specifies how message sizes are presented to IMAP4 clients.
dsc_enablegssapiandntlmauth
Data type: Optional[Boolean]
The EnableGSSAPIAndNTLMAuth parameter specifies whether connections can use Integrated Windows authentication (NTLM) using the Generic Security Services application programming interface (GSSAPI). This setting applies to connections where Transport Layer Security (TLS) is disabled.
dsc_enforcecertificateerrors
Data type: Optional[Boolean]
The EnforceCertificateErrors parameter specifies whether to enforce valid Secure Sockets Layer (SSL) certificate validation failures.
dsc_extendedprotectionpolicy
Data type: Optional[Enum['None', 'none', 'Allow', 'allow', 'Require', 'require']]
The ExtendedProtectionPolicy parameter specifies how Extended Protection for Authentication is used.
dsc_externalconnectionsettings
Data type: Optional[Array[String]]
The ExternalConnectionSettings parameter specifies the host name, port, and encryption method that's used by external IMAP4 clients (IMAP4 connections from outside your corporate network).
dsc_internalconnectionsettings
Data type: Optional[Array[String]]
The InternalConnectionSettings parameter specifies the host name, port, and encryption method that's used by internal IMAP4 clients (IMAP4 connections from inside your corporate network).
dsc_logfilelocation
Data type: Optional[String]
The LogFileLocation parameter specifies the location for the IMAP4 protocol log files.
dsc_logfilerolloversettings
Data type: Optional[Enum['Hourly', 'hourly', 'Daily', 'daily', 'Weekly', 'weekly', 'Monthly', 'monthly']]
The LogFileRollOverSettings parameter specifies how frequently IMAP4 protocol logging creates a new log file.
dsc_logintype
Data type: Optional[Enum['PlainTextLogin', 'plaintextlogin', 'PlainTextAuthentication', 'plaintextauthentication', 'SecureLogin', 'securelogin']]
The LoginType parameter specifies the authentication method for IMAP4 connections.
dsc_logperfilesizequota
Data type: Optional[String]
The LogPerFileSizeQuota parameter specifies the maximum size of a IMAP4 protocol log file.
dsc_maxcommandsize
Data type: Optional[Integer[-2147483648, 2147483647]]
The MaxCommandSize parameter specifies the maximum size in bytes of a single IMAP4 command.
dsc_maxconnectionfromsingleip
Data type: Optional[Integer[-2147483648, 2147483647]]
The MaxConnectionFromSingleIP parameter specifies the maximum number of IMAP4 connections that are accepted by the Exchange server from a single IP address.
dsc_maxconnections
Data type: Optional[Integer[-2147483648, 2147483647]]
The MaxConnections parameter specifies the maximum number of IMAP4 connections that are accepted by the Exchange server.
dsc_maxconnectionsperuser
Data type: Optional[Integer[-2147483648, 2147483647]]
The MaxConnectionsPerUser parameter specifies the maximum number of IMAP4 connections that are allowed for each user.
dsc_messageretrievalmimeformat
Data type: Optional[Enum['TextOnly', 'textonly', 'HtmlOnly', 'htmlonly', 'HtmlAndTextAlternative', 'htmlandtextalternative', 'TextEnrichedOnly', 'textenrichedonly', 'TextEnrichedAndTextAlternative', 'textenrichedandtextalternative', 'BestBodyFormat', 'bestbodyformat', 'Tnef', 'tnef']]
The MessageRetrievalMimeFormat parameter specifies the MIME encoding of messages.
dsc_owaserverurl
Data type: Optional[String]
The OwaServerUrl parameter specifies the URL that's used to retrieve calendar information for instances of custom Outlook on the web calendar items.
dsc_preauthenticatedconnectiontimeout
Data type: Optional[String]
The PreAuthenticatedConnectionTimeout parameter specifies the period of time to wait before closing an idle IMAP4 connection that isn't authenticated.
dsc_protocollogenabled
Data type: Optional[Boolean]
The ProtocolLogEnabled parameter specifies whether to enable protocol logging for IMAP4.
dsc_proxytargetport
Data type: Optional[Integer[-2147483648, 2147483647]]
The ProxyTargetPort parameter specifies the port on the Microsoft Exchange IMAP4 Backend service that listens for client connections that are proxied from the Microsoft Exchange IMAP4 service.
dsc_showhiddenfoldersenabled
Data type: Optional[Boolean]
The ShowHiddenFoldersEnabled parameter specifies whether hidden mailbox folders are visible.
dsc_sslbindings
Data type: Optional[Array[String]]
The SSLBindings parameter specifies the IP address and TCP port that's used for IMAP4 connection that's always encrypted by SSL/TLS. This parameter uses the syntax :.
dsc_suppressreadreceipt
Data type: Optional[Boolean]
The SuppressReadReceipt parameter specifies whether to stop duplicate read receipts from being sent to IMAP4 clients that have the Send read receipts for messages I send setting configured in their IMAP4 email program.
dsc_unencryptedortlsbindings
Data type: Optional[Array[String]]
The X509CertificateName parameter specifies the certificate that's used for encrypting IMAP4 client connections.
dsc_x509certificatename
Data type: Optional[String]
The X509CertificateName parameter specifies the certificate that's used for encrypting IMAP4 client connections.
Parameters
The following parameters are available in the dsc_xexchimapsettings
type.
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to establish a remote PowerShell session to Exchange.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_server
namevar
Data type: String
The IMAP server to configure.
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchinstall
The DSC xExchInstall resource type. Automatically generated from version 1.34.0
Parameters
The following parameters are available in the dsc_xexchinstall
type.
dsc_arguments
namevar
Data type: String
Command line arguments to pass to setup.exe
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
The credentials to use to perform the installation
dsc_path
namevar
Data type: String
Full path to setup.exe in the Exchange 2013 setup directory
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchjetstress
The DSC xExchJetstress resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchjetstress
type.
dsc_jetstressparams
Data type: String
Command line parameters to pass into JetstressCmd.exe
dsc_jetstresspath
Data type: String
The path to the folder where Jetstress is installed, and which contains JetstressCmd.exe
dsc_maxwaitminutes
Data type: Optional[Integer[0, 4294967295]]
The maximum amount of time that the Scheduled Task which runs Jetstress can execute for. Defaults to 0, which means there is no time limit.
dsc_minachievediops
Data type: Optional[Integer[0, 4294967295]]
The minimum value reported in the Achieved Transactional I/O per Second section of the Jetstress report for the run to be considered successful. Defaults to 0.
Parameters
The following parameters are available in the dsc_xexchjetstress
type.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
dsc_type
namevar
Data type: Enum['Performance', 'performance', 'Stress', 'stress', 'DatabaseBackup', 'databasebackup', 'SoftRecovery', 'softrecovery']
Specifies the Type which was defined in the JetstressConfig.xml file. Valid values are Performance, Stress, DatabaseBackup, or SoftRecovery. Defaults to Performance.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchjetstresscleanup
The DSC xExchJetstressCleanup resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchjetstresscleanup
type.
dsc_configfilepath
Data type: Optional[String]
Either ConfigFilePath, or DatabasePaths AND LogPaths MUST be specified. ConfigFilePath takes precedence. This is the full path to the JetstressConfig.xml file. If ConfigFilePath is specified, the config file will be used to determine the database and log folders that need to be removed
dsc_databasepaths
Data type: Optional[Array[String]]
Either ConfigFilePath, or DatabasePaths AND LogPaths MUST be specified. DatabasePaths specifies the paths to database directories that should be cleaned up.
dsc_deleteassociatedmountpoints
Data type: Optional[Boolean]
Defaults to $false. If specified, indicates that mount points associated with the Jetstress database and log paths should be removed
dsc_logpaths
Data type: Optional[Array[String]]
Either ConfigFilePath, or DatabasePaths AND LogPaths MUST be specified. LogPaths specifies the paths to log directories that should be cleaned up.
dsc_outputsavelocation
Data type: Optional[String]
If RemoveBinaries is set to $true and Jetstress output was saved to the default location (the installation path of Jetstress), specifies the folder path to copy the Jetstress output files to.
dsc_removebinaries
Data type: Optional[Boolean]
Specifies that the files in the Jetstress installation directory should be removed
Parameters
The following parameters are available in the dsc_xexchjetstresscleanup
type.
dsc_jetstresspath
namevar
Data type: String
The path to the folder where Jetstress is installed, and which contains JetstressCmd.exe
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_timeout
Data type: Optional[Integer]
The maximum time in seconds to wait for the DSC resource to complete.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xexchmailboxdatabase
The DSC xExchMailboxDatabase resource type. Automatically generated from version 1.34.0
Properties
The following properties are available in the dsc_xexchmailboxdatabase
type.
dsc_adserversettingspreferredserver
Data type: Optional[String]
An optional domain controller to pass to Set-AdServerSettings -PreferredServer
dsc_allowfilerestore
Data type: Optional[Boolean]
The AllowFileRestore parameter specifies whether to allow a database to be restored from a backup.
dsc_allowservicerestart
Data type: Optional[Boolean]
Whether it is okay to restart the Information Store Service after adding a database. Defaults to $false.
dsc_autodagexcludefrommonitoring
Data type: Optional[Boolean]
The AutoDagExcludedFromMonitoringparameter specifies whether to exclude the mailbox database from the ServerOneCopyMonitor, which alerts an administrator when a replicated database has only one healthy copy available.
dsc_backgrounddatabasemaintenance
Data type: Optional[Boolean]
The BackgroundDatabaseMaintenance parameter specifies whether the Extensible Storage Engine (ESE) performs database maintenance.
dsc_calendarloggingquota
Data type: Optional[String]
The CalendarLoggingQuota parameter specifies the maximum size of the log in the Recoverable Items folder of the mailbox that stores changes to calendar items.
dsc_circularloggingenabled
Data type: Optional[Boolean]
The CircularLoggingEnabled parameter specifies whether circular logging is enabled for the database.
dsc_databasecopycount
Data type: Integer[0, 4294967295]
The number of copies that the database will have once fully configured
dsc_datamovereplicationconstraint
Data type: Optional[Enum['None', 'none', 'SecondCopy', 'secondcopy', 'SecondDatacenter', 'seconddatacenter', 'AllDatacenters', 'alldatacenters', 'AllCopies', 'allcopies']]
The DataMoveReplicationConstraint parameter specifies the throttling behavior for high availability mailbox moves.
dsc_deleteditemretention
Data type: Optional[String]
The DeletedItemRetention parameter specifies the length of time to keep deleted items in the Recoverable Items\Deletions folder in mailboxes.
dsc_domaincontroller
Data type: Optional[String]
The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.
dsc_edbfilepath
Data type: String
The EdbFilePath parameter specifies the path to the database files.
dsc_eventhistoryretentionperiod
Data type: Optional[String]
The EventHistoryRetentionPeriod parameter specifies the length of time to keep event data.
dsc_indexenabled
Data type: Optional[Boolean]
The IndexEnabled parameter specifies whether Exchange Search indexes the mailbox database.
dsc_isexcludedfromprovisioning
Data type: Optional[Boolean]
The IsExcludedFromProvisioning parameter specifies whether to exclude the database from the mailbox provisioning load balancer that distributes new mailboxes randomly and evenly across the available databases.
dsc_isexcludedfromprovisioningbyoperator
Data type: Optional[Boolean]
The IIsExcludedFromProvisioningByOperator parameter specifies whether to exclude the database from the mailbox provisioning load balancer that distributes new mailboxes randomly and evenly across the available databases.
dsc_isexcludedfromprovisioningduetologicalcorruption
Data type: Optional[Boolean]
The IsExcludedFromProvisioningDueToLogicalCorruption parameter specifies whether to exclude the database from the mailbox provisioning load balancer that distributes new mailboxes randomly and evenly across the available databases.
dsc_isexcludedfromprovisioningreason
Data type: Optional[String]
The IsExcludedFromProvisioningReason parameter specifies the reason why you excluded the mailbox database from the mailbox provisioning load balancer.
dsc_issuewarningquota
Data type: Optional[String]
The IssueWarningQuota parameter specifies the warning threshold for the size of the mailbox.
dsc_issuspendedfromprovisioning
Data type: Optional[Boolean]
The IsSuspendedFromProvisioning parameter specifies whether to exclude the database from the mailbox provisioning load balancer that distributes new mailboxes randomly and evenly across the available databases.
dsc_journalrecipient
Data type: Optional[String]
The JournalRecipient parameter specifies the journal recipient to use for per-database journaling for all mailboxes on the database.
dsc_logfolderpath
Data type: String
The LogFolderPath parameter specifies the folder location for log files.
dsc_mailboxretention
Data type: Optional[String]
The MailboxRetention parameter specifies the length of time to keep deleted mailboxes before they are permanently deleted or purged.
dsc_metacachedatabasemaxcapacityinbytes
Data type: Optional[Integer[-9223372036854775808, 9223372036854775807]]
The MetaCacheDatabaseMaxCapacityInBytes parameter specifies the size of the metacache database in bytes. To convert gigabytes to bytes, multiply the value by 1024^3. For terabytes to bytes, multiply by 1024^4.
dsc_mountatstartup
Data type: Optional[Boolean]
The MountAtStartup parameter specifies whether to mount the mailbox database when the Microsoft Exchange Information Store service starts.
dsc_offlineaddressbook
Data type: Optional[String]
The OfflineAddressBook parameter specifies the offline address book that's associated with the mailbox database.
dsc_prohibitsendquota
Data type: Optional[String]
The ProhibitSendQuota parameter specifies a size limit for the mailbox. If the mailbox reaches or exceeds this size, the mailbox can't send new messages, and the user receives a descriptive warning message.
dsc_prohibitsendreceivequota
Data type: Optional[String]
The ProhibitSendReceiveQuota parameter specifies a size limit for the mailbox. If the mailbox reaches or exceeds this size, the mailbox can't send or receive new messages. Messages sent to the mailbox are returned to the sender with a descriptive error message. This value effectively determines the maximum size of the mailbox.
dsc_recoverableitemsquota
Data type: Optional[String]
The RecoverableItemsQuota parameter specifies the maximum size for the Recoverable Items folder of the mailbox.
dsc_recoverableitemswarningquota
Data type: Optional[String]
The RecoverableItemsWarningQuota parameter specifies the warning threshold for the size of the Recoverable Items folder for the mailbox.
dsc_retaindeleteditemsuntilbackup
Data type: Optional[Boolean]
The RetainDeletedItemsUntilBackup parameter specifies whether to keep items in the Recoverable Items\Deletions folder of the mailbox until the next database backup occurs.
dsc_server
Data type: String
The Server parameter specifies the server on which you want to create the database.
dsc_skipinitialdatabasemount
Data type: Optional[Boolean]
Whether the initial mount of databases should be skipped after database creation
Parameters
The following parameters are available in the dsc_xexchmailboxdatabase
type.
[1.34.0] - 2023-04-18
Deprecated
- The module xExchange will be renamed to ExchangeDsc
(issue #484).
The version
v1.34.0
will be the the last release of xExchange. Versionv2.0.0
will be released as ExchangeDsc, it will be released shortly after thev1.34.0
release to be able to start transition to the new module. The prefix 'x' will be removed from all resources in ExchangeDsc.
Added
- xExchOwaVirtualDirectoryInternal
- Added parameters
ExternalDownloadHostName
andInternalDownloadHostName
.
- Added parameters
Changed
- xExchange
- Update the pipeline files to the latest from template in Sampler.
- Update to CI worker that allow building MOF-based resources.
- xExchPopSettings
- Add missing ProtocolLogEnabled parameter.
- xExchWebServicesVirtualDirectory
- Fixed typo.
- xExchangeHelper
- Fixed module import error (issue #481).
- Fixed error on first Exchange Module import (Issue #488).
- Changed return value of
Get-SetupExeVersion
toSystem.Version
which fixes #410.
Dependencies
- puppetlabs/pwshlib (>= 1.2.0 < 2.0.0)