{"id":20156140,"url":"https://github.com/dsccommunity/exchangedsc","last_synced_at":"2025-12-11T21:19:15.050Z","repository":{"id":30468247,"uuid":"34022233","full_name":"dsccommunity/ExchangeDsc","owner":"dsccommunity","description":"This module contains DSC resources for deployment and configuration of Microsoft Exchange Server.","archived":false,"fork":false,"pushed_at":"2025-03-19T17:56:17.000Z","size":5693,"stargazers_count":80,"open_issues_count":59,"forks_count":49,"subscribers_count":37,"default_branch":"main","last_synced_at":"2025-04-03T06:55:11.400Z","etag":null,"topics":["dsc","dsc-resources","exchange-server","hacktoberfest"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dsccommunity.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null}},"created_at":"2015-04-15T22:43:00.000Z","updated_at":"2025-03-15T21:13:52.000Z","dependencies_parsed_at":"2023-01-14T17:01:03.236Z","dependency_job_id":null,"html_url":"https://github.com/dsccommunity/ExchangeDsc","commit_stats":null,"previous_names":["dsccommunity/xExchange","dsccommunity/xexchange"],"tags_count":44,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsccommunity%2FExchangeDsc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsccommunity%2FExchangeDsc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsccommunity%2FExchangeDsc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsccommunity%2FExchangeDsc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dsccommunity","download_url":"https://codeload.github.com/dsccommunity/ExchangeDsc/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247280270,"owners_count":20912967,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dsc","dsc-resources","exchange-server","hacktoberfest"],"created_at":"2024-11-13T23:37:45.579Z","updated_at":"2025-12-11T21:19:10.017Z","avatar_url":"https://github.com/dsccommunity.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ExchangeDsc\n\nThis module contains DSC resources for the management and\nconfiguration of Microsoft Exchange Server.\n\n[![Build Status](https://dev.azure.com/dsccommunity/ExchangeDsc/_apis/build/status/dsccommunity.ExchangeDsc?branchName=main)](https://dev.azure.com/dsccommunity/ExchangeDsc/_build/latest?definitionId=15\u0026branchName=main)\n![Azure DevOps coverage (branch)](https://img.shields.io/azure-devops/coverage/dsccommunity/ExchangeDsc/15/main)\n[![codecov](https://codecov.io/gh/dsccommunity/ExchangeDsc/branch/main/graph/badge.svg)](https://codecov.io/gh/dsccommunity/ExchangeDsc)\n[![Azure DevOps tests](https://img.shields.io/azure-devops/tests/dsccommunity/ExchangeDsc/15/main)](https://dsccommunity.visualstudio.com/ExchangeDsc/_test/analytics?definitionId=15\u0026contextType=build)\n[![PowerShell Gallery (with prereleases)](https://img.shields.io/powershellgallery/vpre/ExchangeDsc?label=ExchangeDsc%20Preview)](https://www.powershellgallery.com/packages/ExchangeDsc/)\n[![PowerShell Gallery](https://img.shields.io/powershellgallery/v/ExchangeDsc?label=ExchangeDsc)](https://www.powershellgallery.com/packages/ExchangeDsc/)\n\n## Code of Conduct\n\nThis project has adopted this [Code of Conduct](CODE_OF_CONDUCT.md).\n\n## Releases\n\nFor each merge to the branch `main` a preview release will be\ndeployed to [PowerShell Gallery](https://www.powershellgallery.com/).\nPeriodically a release version tag will be pushed which will deploy a\nfull release to [PowerShell Gallery](https://www.powershellgallery.com/).\n\n## Contributing\n\nPlease check out common DSC Community [contributing guidelines](https://dsccommunity.org/guidelines/contributing).\n\n## Change log\n\nA full list of changes in each version can be found in the [change log](CHANGELOG.md).\n\n## Documentation\n\nThe documentation can be found in the [ExchangeDsc Wiki](https://github.com/dsccommunity/ExchangeDsc/wiki).\nThe resource documentation can be found below.\n\n## Examples\n\nYou can review the [Examples](/source/Examples) directory in the ExchangeDsc module\nfor some general use scenarios for all of the resources that are in the module.\n\n## Resources\n\n- **ExchAcceptedDomain** is used to add accepted domains\n- **ExchActiveSyncVirtualDirectory**\n- **ExchAddressList** is used to add an addess list\n- **ExchAntiMalwareScanning** is used to enable or disable Exchange\n  Anti-malware scanning\n- **ExchAutodiscoverVirtualDirectory**\n- **ExchAutoMountPoint**\n- **ExchClientAccessServer**\n- **ExchDatabaseAvailabilityGroup** configures a Database Availability Group\n  using New/Set-DatabaseAvailibilityGroup.\n- **ExchDatabaseAvailabilityGroupMember** adds a member to\n  a Database Availability Group.\n- **ExchDatabaseAvailabilityGroupNetwork** can add, remove, or configure\n  a Database Availability Group Network.\n- **ExchEcpVirtualDirectory**\n- **ExchEventLogLevel** is used to configure Exchange diagnostic logging via Set-EventLogLevel.\n- **ExchExchangeCertificate** can install, remove, or configure\n  an ExchangeCertificate using \\*-ExchangeCertificate cmdlets.\n- **ExchExchangeServer**\n- **ExchFrontendTransportService** configures Front End Transport service settings.\n- **ExchImapSettings** configures IMAP settings using Set-ImapSettings.\n- **ExchInstall** installs or updates Exchange 2013, 2016, or 2019.\n- **ExchJetstress** automatically runs Jetstress using\n  the **JetstressCmd.exe** command line executable.\n- **ExchJetstressCleanup** cleans up the database and log\n  directories created by Jetstress.\n- **ExchMailboxDatabase**\n- **ExchMailboxDatabaseCopy**\n- **ExchMailboxTransportService**\n- **ExchMailboxServer**\n- **ExchMaintenanceMode**\n- **ExchMapiVirtualDirectory**\n- **ExchOabVirtualDirectory**\n- **ExchOutlookAnywhere**\n- **ExchOwaVirtualDirectory**\n- **ExchPopSettings** configures POP settings using Set-PopSettings.\n- **ExchPowerShellVirtualDirectory**\n- **ExchReceiveConnector**\n- **ExchRemoteDomain** is used to add remote domains\n- **ExchSendConnector** is used to add a send connector\n- **ExchTransportService**\n- **ExchUMCallRouterSettings** configures the UM Call Router service using Set-UMCallRouterSettings.\n- **ExchUMService** configures a UM server using Set-UMService.\n- **ExchWaitForADPrep** ensures that Active Directory has been prepared for\n  Exchange 2013, 2016, or 2019.\n- **ExchWaitForDAG**\n- **ExchWaitForMailboxDatabase**\n- **ExchWebServicesVirtualDirectory**\n\n### ExchAcceptedDomain\n\n- **ExchAcceptedDomain** is used to add accepted domains\n\n- **DomainName** The domain name of the accepted domain\n- **Credential**: Credentials used to establish a remote\n  PowerShell session to Exchange.\n- **Ensure**: Whether the domain should exist or not: { Present | Absent }\n- **AddressBookEnabled** Whether to enable recipient filtering for this domain\n- **DomainType** Type of the the domain:\n  {Authoritative | ExternalRelay | InternalRelay}\n- **Default** Whether the accepted domain is the default domain.\n- **MatchSubDomains** Enables mail to be sent by and received from users on any\n  subdomain\n- **Name** Specifies a unique name\n\n### ExchActiveSyncVirtualDirectory\n\n**ExchActiveSyncVirtualDirectory** is used to configure properties on an\nActiveSync Virtual Directory.\n\nWhere no description is listed, properties correspond directly to\n[Set-ActiveSyncVirtualDirectory](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access-servers/set-activesyncvirtualdirectory)\nparameters.\n\n- **Identity**: The Identity of the ActiveSync Virtual Directory.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether it is okay to recycle the app pool,\n  or restart IIS after making changes. Defaults to \\$false.\n- **AutoCertBasedAuth**: Automates the IIS configuration portion of\n  certificate based authentication.\n  Only works against the Default Web Site.\n  Does not configure ClientCertAuth parameter, which must be specified separately.\n  Does not install ?Client Certificate Mapping Authentication? or ?IIS Client\n  Certificate Mapping Authentication? roles of IIS,\n  which also must be configured separately.\n- **AutoCertBasedAuthThumbprint**: The thumbprint of the in use\n  Exchange certificate for IIS.\n- **AutoCertBasedAuthHttpsBindings**: The (IP:PORT)'s of the HTTPS bindings on\n  the Default Web Site. Defaults to \"0.0.0.0:443\",\"127.0.0.1:443\"\n- **ActiveSyncServer**\n- **BadItemReportingEnabled**\n- **BasicAuthEnabled**\n- **ClientCertAuth**\n- **CompressionEnabled**\n- **DomainController**\n- **ExtendedProtectionFlags**\n- **ExtendedProtectionSPNList**\n- **ExtendedProtectionTokenChecking**\n- **ExternalAuthenticationMethods**\n- **ExternalUrl**\n- **InstallIsapiFilter**\n- **InternalAuthenticationMethods**\n- **InternalUrl**\n- **MobileClientCertificateAuthorityURL**\n- **MobileClientCertificateProvisioningEnabled**\n- **MobileClientCertTemplateName**\n- **Name**\n- **RemoteDocumentsActionForUnknownServers**\n- **RemoteDocumentsAllowedServers**\n- **RemoteDocumentsBlockedServers**\n- **RemoteDocumentsInternalDomainSuffixList**\n- **SendWatsonReport**\n- **WindowsAuthEnabled**: Auto Certificate Based Authentication Requirements:\n  For AutoCertBasedAuth to work, the ?Client Certificate Mapping Authentication?\n  and ?IIS Client Certificate Mapping Authentication? roles of IIS need to be installed.\n\n#### Common Issues\n\nThe parameter Name can be a breaking setting. When you change the name the identity\nchanges as well. The switch InstallIsapiFilter by the Cmdlet is doing nothing.\nTherefore Add-WebConfigurationProperty is used to add a missing IsapiFilter.\n\n### ExchAddressList\n\n- **ExchAddressList** is used to add an address list\n\n- **Name** The name of the address list.\n- **Credential** Credentials used to establish a remote PowerShell session to\n  Exchange.\n- **ConditionalCompany** The ConditionalCompany parameter specifies a precanned\n  filter that's based on the value of the recipient's Company property.\n- **ConditionalCustomAttribute1** The ConditionalCustomAttribute1 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute1 property.\n- **ConditionalCustomAttribute2** The ConditionalCustomAttribute2 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute2 property.\n- **ConditionalCustomAttribute3** The ConditionalCustomAttribute3 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute3 property.\n- **ConditionalCustomAttribute4** The ConditionalCustomAttribute4 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute4 property.\n- **ConditionalCustomAttribute5** The ConditionalCustomAttribute5 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute5 property.\n- **ConditionalCustomAttribute6** The ConditionalCustomAttribute6 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute6 property.\n- **ConditionalCustomAttribute7** The ConditionalCustomAttribute7 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute7 property.\n- **ConditionalCustomAttribute8** The ConditionalCustomAttribute8 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute8 property.\n- **ConditionalCustomAttribute9** The ConditionalCustomAttribute9 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute9 property.\n- **ConditionalCustomAttribute10** The ConditionalCustomAttribute10 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute10 property.\n- **ConditionalCustomAttribute11** The ConditionalCustomAttribute11 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute11 property.\n- **ConditionalCustomAttribute12** The ConditionalCustomAttribute12 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute12 property.\n- **ConditionalCustomAttribute13** The ConditionalCustomAttribute13 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute13 property.\n- **ConditionalCustomAttribute14** The ConditionalCustomAttribute14 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute14 property.\n- **ConditionalCustomAttribute15** The ConditionalCustomAttribute15 parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  ConditionalCustomAttribute15 property.\n- **ConditionalDepartment** The ConditionalDepartment parameter specifies a\n  precanned filter that's based on the value of the recipient's Department property.\n- **ConditionalStateOrProvince** The ConditionalStateOrProvince parameter\n  specifies a precanned filter that's based on the value of the recipient's\n  StateOrProvince property.\n- **Container** The Container parameter specifies where to create the address list.\n- **DisplayName** Specifies the displayname.\n- **IncludedRecipients** Specifies a precanned filter that's based on the\n  recipient type.\n- **RecipientContainer** The RecipientContainer parameter specifies a filter\n  that's based on the recipient's location in Active Directory.\n- **RecipientFilter** The RecipientFilter parameter specifies a custom OPath\n  filter that's based on the value of any available recipient property.\n\n### ExchAntiMalwareScanning\n\n**ExchAntiMalwareScanning** is used to enable or disable Exchange Anti-malware scanning.\n\n- **Enabled**: Whether Exchange Anti-malware scanning should be Enabled.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether the Transport services should be\n  automatically restarted after a status change.\n\n### ExchAutodiscoverVirtualDirectory\n\n**ExchAutodiscoverVirtualDirectory** is used to configure properties on an\nAutoDiscover Virtual Directory.\n\nWhere no description is listed, properties correspond directly to\n[Set-AutodiscoverVirtualDirectory](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access-servers/set-autodiscovervirtualdirectory)\nparameters.\n\n- **Identity**: The Identity of the Autodiscover Virtual Directory.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange\n- **AllowServiceRestart**: Whether it is okay to recycle the app pool\n  after making changes.Defaults to \\$false.\n- **BasicAuthEnabled**\n- **DigestAuthentication**\n- **DomainController**\n- **ExtendedProtectionFlags**\n- **ExtendedProtectionSPNList**\n- **ExtendedProtectionTokenChecking**\n- **OAuthAuthentication**\n- **WindowsAuthEnabled**\n- **WSSecurityAuthentication**\n\n### ExchAutoMountPoint\n\n**ExchAutoMountPoint** is used to automatically find unused disks,\nand prepare them for use within AutoReseed. With the disks that are found,\nit will assign appropriate volume and database mount points. Once fully configured,\nif a disk fails and is replaced with a new disk, ExchAutoMountPoint will\nautomatically detect it and format and assign an Exchange volume mount point\nso that AutoReseed can detect it as a spare disk.\n\n- **Identity**: The name of the server. This is not actually used for anything.\n- **AutoDagDatabasesRootFolderPath**: The parent folder for Exchange database\n  mount point folders.\n- **AutoDagVolumesRootFolderPath**: The parent folder for Exchange volume mount\n  point folders.\n- **DiskToDBMap**: An array of strings containing the databases for each disk.\n  Databases on the same disk should be in the same string, and comma separated.\n  Example: \"DB1,DB2\",\"DB3,DB4\".\n  This puts DB1 and DB2 on one disk, and DB3 and DB4 on another.\n- **SpareVolumeCount**: How many spare volumes will be available.\n- **EnsureExchangeVolumeMountPointIsLast**: Whether the EXVOL mount point\n  should be moved to be the last mount point listed on each disk. Defaults\n  to \\$false.\n- **CreateSubfolders**: If $true, specifies that DBNAME.db and DBNAME.log\n  subfolders should be automatically created underneath the ExchangeDatabase\n  mount points. Defaults to $false.\n- **FileSystem**: The file system to use when formatting the volume.\n  Defaults to NTFS.\n- **MinDiskSize**: The minimum size of a disk to consider using. Defaults to none.\n  Should be in a format like \"1024MB\" or \"1TB\".\n- **PartitioningScheme**: The partitioning scheme for the volume. Defaults to GPT.\n- **UnitSize**: The unit size to use when formatting the disk. Defaults to 64k.\n  Specified value should end in a number, indicating bytes, or with a k,\n  indicating the value is kilobytes.\n- **VolumePrefix**: The prefix to give to Exchange Volume folders. Defaults to EXVOL\n\n#### Common Issues\n\nExchAutoMountPoint will not assign an Exchange database mount point if\nthe target folder for the database already exists. If initial setup fails,\nmake sure that the database folders do not already exist. Note that this only\naffects database folders. If a volume folder already exists, the resource will\njust find the next unused number and assign it to a new volume folder.\n\n### ExchClientAccessServer\n\n**ExchClientAccessServer** is used to configure properties on a Client Access\nServer.\n\nWhere no description is listed, properties correspond directly to\n[Set-ClientAccessService](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access-servers/set-clientaccessservice)\nparameters.\n\n- **Identity**: The hostname of the Client Access Server.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AutoDiscoverServiceInternalUri**\n- **AutoDiscoverSiteScope**\n- **DomainController**\n- **AlternateServiceAccountCredential**\n- **CleanUpInvalidAlternateServiceAccountCredentials**\n- **RemoveAlternateServiceAccountCredentials**\n\n### ExchDatabaseAvailabilityGroup\n\n**ExchDatabaseAvailabilityGroup** configures a Database Availability Group\nusing New/Set-DatabaseAvailibilityGroup. Only a single node in a configuration\nscript should implement this resource. All DAG nodes, including the node\nimplementing **ExchDatabaseAvailabilityGroup**, should use\n**ExchDatabaseAvailabilityGroupMember** to join a DAG.\n\nWhere no description is listed, properties correspond directly to\n[Set-DatabaseAvailabilityGroup](https://docs.microsoft.com/en-us/powershell/module/exchange/database-availability-groups/set-databaseavailabilitygroup)\nparameters.\n\n- **Name**: The name of the Database Availability Group.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AutoDagTotalNumberOfServers**: Required to determine when all DAG members\n  have been added. DatacenterActivationMode will not be set until that occurs.\n- **AlternateWitnessDirectory**\n- **AlternateWitnessServer**\n- **AutoDagAutoRedistributeEnabled**\n- **AutoDagAutoReseedEnabled**\n- **AutoDagDatabaseCopiesPerDatabase**\n- **AutoDagDatabaseCopiesPerVolume**\n- **AutoDagDatabasesRootFolderPath**\n- **AutoDagDiskReclaimerEnabled**\n- **AutoDagTotalNumberOfDatabases**\n- **AutoDagVolumesRootFolderPath**\n- **DatabaseAvailabilityGroupIpAddresses**\n- **DatacenterActivationMode**\n- **DomainController**\n- **FileSystem**\n- **ManualDagNetworkConfiguration**\n- **NetworkCompression**\n- **NetworkEncryption**\n- **PreferenceMoveFrequency**\n- **ReplayLagManagerEnabled**\n- **ReplicationPort**\n- **WitnessDirectory**\n- **WitnessServer**\n- **SkipDagValidation**\n\n#### Common Issues\n\nDAG creation will fail if the computer account of the node managing the DAG does\nnot have permissions to create computers in Active Directory.\nTo avoid this issue, you may need to\n[make sure that the computer account for the DAG is prestaged](\u003chttp://technet.microsoft.com/en-us/library/ff367878(v=exchg.150).aspx\u003e).\nTo disable PreferenceMoveFrequency you have to use the following value:\n\"\\$(([System.Threading.Timeout]::InfiniteTimeSpan).ToString())\"\n\n### ExchDatabaseAvailabilityGroupMember\n\n**ExchDatabaseAvailabilityGroupMember** adds a member to a Database\nAvailability Group. This must be implemented by all nodes, including the one\nthat creates and maintains the DAG.\n\nWhere no description is listed, properties correspond directly to\n[Add-DatabaseAvailabilityGroupServer](https://docs.microsoft.com/en-us/powershell/module/exchange/database-availability-groups/add-databaseavailabilitygroupserver)\nparameters.\n\n- **MailboxServer**: The hostname of the server to add to the DAG.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **DAGName**: The name of the DAG to add the member to.\n- **DomainController**\n- **SkipDagValidation**\n\n### ExchDatabaseAvailabilityGroupNetwork\n\n**ExchDatabaseAvailabilityGroupNetwork** can add, remove, or configure\na Database Availability Group Network.\nThis should only be implemented by a single node in the DAG.\n\nWhere no description is listed, properties correspond directly to\n[Set-DatabaseAvailabilityGroupNetwork](https://docs.microsoft.com/en-us/powershell/module/exchange/database-availability-groups/Set-DatabaseAvailabilityGroupNetwork)\nparameters.\n\n- **Name**: The name of the DAG network\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **DatabaseAvailabilityGroup**: The name of the DAG where the network exists.\n- **Ensure**: Whether the DAG network should exist or not: { Present | Absent }\n- **Description**\n- **DomainController**\n- **IgnoreNetwork**\n- **ReplicationEnabled**\n- **Subnets**\n\n### ExchEcpVirtualDirectory\n\n**ExchEcpVirtualDirectory** is used to configure properties on an Exchange\nControl Panel Virtual Directory.\n\nWhere no description is listed, properties correspond directly to\n[Set-EcpVirtualDirectory](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access-servers/set-ecpvirtualdirectory)\nparameters.\n\n- **Identity**: The Identity of the ECP Virtual Directory.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether it is OK to recycle the app pool after making\n  changes. Defaults to \\$false.\n- **AdfsAuthentication**\n- **AdminEnabled**\n- **BasicAuthentication**\n- **DigestAuthentication**\n- **DomainController**\n- **ExternalAuthenticationMethods**\n- **FormsAuthentication**\n- **GzipLevel**\n- **ExternalUrl**\n- **InternalUrl**\n- **WindowsAuthentication**\n- **WSSecurityAuthentication**\n\n### ExchEventLogLevel\n\n**ExchEventLogLevel** is used to configure Exchange diagnostic logging via\nSet-EventLogLevel.\n\nProperties correspond to\n[Set-EventLogLevel](https://docs.microsoft.com/en-us/powershell/module/exchange/server-health-and-performance/set-eventloglevel)\nparameters.\n\n- **Identity**: The Identity parameter specifies the name of the event logging\n  category for which you want to set the event logging level.\n  Do not specify servername within the Identity.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **Level**: The Level parameter specifies the log level for the specific event\n  logging category. Valid values are Lowest, Low, Medium, High, and Expert.\n\n### ExchExchangeCertificate\n\n**ExchExchangeCertificate** can install, remove, or configure\nan ExchangeCertificate using \\*-ExchangeCertificate cmdlets.\n\n- **Thumbprint**: The Thumbprint of the Exchange Certificate to configure.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **Ensure**: Whether the Exchange Certificate should exist or not:\n  { Present | Absent }\n- **AllowExtraServices**: Get-ExchangeCertificate sometimes displays\n  more services than are actually enabled.\n  Setting this to true allows tests to pass in that situation as long as\n  the requested services are present.\n- **CertCreds**: Credentials containing the password to the .pfx file in CertFilePath.\n- **CertFilePath**: The file path to the certificate .pfx file that should be imported.\n- **DomainController**: Domain Controller to talk to.\n- **DoNotRequireSsl**: Setting DoNotRequireSsl to True prevents DSC from\n  enabling the Require SSL setting on the Default Web Site when you enable the\n  certificate for IIS. Defaults to False.\n- **NetworkServiceAllowed**: Setting NetworkServiceAllowed to True gives the\n  built-in Network Service account permission to read the certificate's private\n  key without enabling the certificate for SMTP. Defaults to False.\n- **Services**: Services to enable on the certificate.\n  See [Enable-ExchangeCertificate](https://docs.microsoft.com/en-us/powershell/module/exchange/encryption-and-certificates/enable-exchangecertificate)\n  documentation.\n\n### ExchExchangeServer\n\n**ExchExchangeServer** is used to configure properties on an Exchange Server\nvia Set-ExchangeServer.\n\nMost properties correspond directly to properties in\n[Set-ExchangeServer](https://docs.microsoft.com/en-us/powershell/module/exchange/organization/set-exchangeserver)\nparameters.\n\n- **Identity**: The Identity parameter specifies the GUID, distinguished name\n  (DN), or name of the server.\n- **Credential**: Credentials used to establish a remote PowerShell session to\n  Exchange.\n- **AllowServiceRestart**: Whether it is OK to restart the Information Store\n  service after licensing the server. Defaults to \\$false.\n- **CustomerFeedbackEnabled**: The CustomerFeedbackEnabled parameter specifies\n  whether the Exchange server is enrolled in the Microsoft Customer Experience\n  Improvement Program (CEIP). The CEIP collects anonymous information about how\n  you use Exchange and problems that you might encounter. If you decide not to\n  participate in the CEIP, the servers are opted-out automatically.\n- **DomainController**: The DomainController parameter specifies the domain\n  controller that's used by this cmdlet to read data from or write data to\n  Active Directory. You identify the domain controller by its fully qualified\n  domain name (FQDN). For example, dc01.contoso.com.\n- **ErrorReportingEnabled**: The ErrorReportingEnabled parameter specifies\n  whether error reporting is enabled.\n- **InternetWebProxy**: The InternetWebProxy parameter specifies the web proxy\n  server that the Exchange server uses to reach the internet. A valid value for\n  this parameter is the URL of the web proxy server.\n- **InternetWebProxyBypassList**: The InternetWebProxyBypassList parameter\n  specifies a list of servers that bypass the web proxy server specified by the\n  InternetWebProxy parameter. You identify the servers by their FQDN (for\n  example, server01.contoso.com).\n- **MonitoringGroup**: The MonitoringGroup parameter specifies how to add your\n  Exchange servers to monitoring groups. You can add your servers to an\n  existing group or create a monitoring group based on location or deployment,\n  or to partition monitoring responsibility among your servers.\n- **ProductKey**: The ProductKey parameter specifies the server product key.\n- **StaticConfigDomainController**: The StaticConfigDomainController parameter\n  specifies whether to configure a domain controller to be used by the server\n  via Directory Service Access (DSAccess).\n- **StaticDomainControllers**: The StaticDomainControllers parameter specifies\n  whether to configure a list of domain controllers to be used by the server\n  via DSAccess.\n- **StaticExcludedDomainControllers**: The StaticExcludedDomainControllers\n  parameter specifies whether to exclude a list of domain controllers from\n  being used by the server.\n- **StaticGlobalCatalogs**: The StaticGlobalCatalogs parameter specifies\n  whether to configure a list of global catalogs to be used by the server via\n  DSAccess.\n- **WorkloadManagementPolicy**: The _-ResourcePolicy,\n  _-WorkloadManagementPolicy and \\*-WorkloadPolicy system workload management\n  cmdlets have been deprecated. System workload management settings should be\n  customized only under the direction of Microsoft Customer Service and\n  Support.\n\n### ExchFrontendTransportService\n\n**ExchFrontendTransportService** configures the Front End Transport service\nsettings on Mailbox servers or Edge Transport servers using\nSet-FrontendTransportService.\n\nMost properties correspond directly to properties in\n[Set-FrontendTransportService](https://docs.microsoft.com/en-us/powershell/module/exchange/mail-flow/Set-FrontendTransportService)\nparameters.\n\n- **Identity**: Hostname of the server to configure.\n- **Credential**: Credentials used to establish a remote PowerShell session to\n  Exchange.\n- **AllowServiceRestart**: Whether it is OK to restart the\n  MSExchangeFrontEndTransport service after making changes. Defaults to \\$false.\n- **AgentLogEnabled**: The AgentLogEnabled parameter specifies whether the\n  agent log is enabled. The default value is \\$true.\n- **AgentLogMaxAge**: The AgentLogMaxAge parameter specifies the maximum age\n  for the agent log file. Log files older than the specified value are deleted.\n  The default value is 7.00:00:00 or 7 days.\n- **AgentLogMaxDirectorySize**: The AgentLogMaxDirectorySize parameter\n  specifies the maximum size of all agent logs in the agent log directory. When a\n  directory reaches its maximum file size, the server deletes the oldest log\n  files first. The default value is 250 MB.\n- **AgentLogMaxFileSize**: The AgentLogMaxFileSize parameter specifies the\n  maximum size of each agent log file. When a log file reaches its maximum file\n  size, a new log file is created. The default value is 10 MB.\n- **AgentLogPath**: The AgentLogPath parameter specifies the default agent log\n  directory location.\n- **AntispamAgentsEnabled**: The AntispamAgentsEnabled parameter specifies\n  whether anti-spam agents are installed on the server specified with the\n  Identity parameter. The default value is \\$false for the Front End Transport\n  service.\n- **ConnectivityLogEnabled**: The ConnectivityLogEnabled parameter specifies\n  whether the connectivity log is enabled. The default value is \\$true.\n- **ConnectivityLogMaxAge**: The ConnectivityLogMaxAge parameter specifies the\n  maximum age for the connectivity log file. Log files older than the specified\n  value are deleted. The default value is 30 days.\n- **ConnectivityLogMaxDirectorySize**: The ConnectivityLogMaxDirectorySize\n  parameter specifies the maximum size of all connectivity logs in the\n  connectivity log directory. When a directory reaches its maximum file size, the\n  server deletes the oldest log files first. The default value is 1000 MB.\n- **ConnectivityLogMaxFileSize**: The ConnectivityLogMaxFileSize parameter\n  specifies the maximum size of each connectivity log file. When a log file\n  reaches its maximum file size, a new log file is created. The default value is\n  10 MB.\n- **ConnectivityLogPath**: The ConnectivityLogPath parameter specifies the\n  default connectivity log directory location.\n- **DnsLogEnabled**: The DnsLogEnabled parameter specifies whether the DNS log\n  is enabled. The default value is \\$false.\n- **DnsLogMaxAge**: The DnsLogMaxAge parameter specifies the maximum age for\n  the DNS log file. Log files older than the specified value are deleted. The\n  default value is 7.00:00:00 or 7 days.\n- **DnsLogMaxDirectorySize**: The DnsLogMaxDirectorySize parameter specifies\n  the maximum size of all DNS logs in the DNS log directory. When a directory\n  reaches its maximum file size, the server deletes the oldest log files first.\n  The default value is 100 MB.\n- **DnsLogMaxFileSize**: The DnsLogMaxFileSize parameter specifies the maximum\n  size of each DNS log file. When a log file reaches its maximum file size, a new\n  log file is created. The default value is 10 MB.\n- **DnsLogPath**: DnsLogPath parameter specifies the DNS log directory\n  location. The default value is blank (\\$null), which indicates no location is\n  configured. If you enable DNS logging, you need to specify a local file path\n  for the DNS log files by using this parameter.\n- **ExternalDNSAdapterEnabled**: The ExternalDNSAdapterEnabled parameter\n  specifies one or more Domain Name System (DNS) servers that Exchange uses for\n  external DNS lookups.\n- **ExternalDNSAdapterGuid**: The ExternalDNSAdapterGuid parameter specifies\n  the network adapter that has the DNS settings used for DNS lookups of\n  destinations that exist outside the Exchange organization.\n- **ExternalDNSProtocolOption**: The ExternalDNSProtocolOption parameter\n  specifies which protocol to use when querying external DNS servers. The valid\n  options for this parameter are Any, UseTcpOnly, and UseUdpOnly. The default\n  value is Any.\n- **ExternalDNSServers**: The ExternalDNSServers parameter specifies the list\n  of external DNS servers that the server queries when resolving a remote domain.\n  You must separate IP addresses by using commas. The default value is an empty\n  list ({}).\n- **ExternalIPAddress**: The ExternalIPAddress parameter specifies the IP\n  address used in the Received message header field for every message that\n  travels through the Front End Transport service.\n- **InternalDNSAdapterEnabled**: The InternalDNSAdapterEnabled parameter\n  specifies one or more DNS servers that Exchange uses for internal DNS lookups.\n- **InternalDNSAdapterGuid**: The InternalDNSAdapterGuid parameter specifies\n  the network adapter that has the DNS settings used for DNS lookups of servers\n  that exist inside the Exchange organization.\n- **InternalDNSProtocolOption**: The InternalDNSProtocolOption parameter\n  specifies which protocol to use when you query internal DNS servers. Valid\n  options for this parameter are Any, UseTcpOnly, or UseUdpOnly. The default\n  value is Any.\n- **InternalDNSServers**: The InternalDNSServers parameter specifies the list\n  of DNS servers that should be used when resolving a domain name. DNS servers\n  are specified by IP address and are separated by commas. The default value is\n  any empty list ({}).\n- **IntraOrgConnectorProtocolLoggingLevel**: The\n  IntraOrgConnectorProtocolLoggingLevel parameter enables or disables SMTP\n  protocol logging on the implicit and invisible intra-organization Send\n  connector in the Front End Transport service.\n- **MaxConnectionRatePerMinute**: The MaxConnectionRatePerMinute parameter\n  specifies the maximum rate that connections are allowed to be opened with the\n  transport service.\n- **ReceiveProtocolLogMaxAge**: The ReceiveProtocolLogMaxAge parameter\n  specifies the maximum age of a protocol log file that's shared by all Receive\n  connectors in the Transport service on the server. Log files that are older\n  than the specified value are automatically deleted.\n- **ReceiveProtocolLogMaxDirectorySize**: The\n  ReceiveProtocolLogMaxDirectorySize parameter specifies the maximum size of the\n  protocol log directory that's shared by all Receive connectors in the Front End\n  Transport service on the server. When the maximum directory size is reached,\n  the server deletes the oldest log files first.\n- **ReceiveProtocolLogMaxFileSize**: The ReceiveProtocolLogMaxFileSize\n  parameter specifies the maximum size of a protocol log file that's shared by\n  all Receive connectors in the Front End Transport service on the server. When a\n  log file reaches its maximum file size, a new log file is created.\n- **ReceiveProtocolLogPath**: The ReceiveProtocolLogPath parameter specifies\n  the location of the protocol log directory for all Receive connectors in the\n  Front End Transport service on the server.\n- **RoutingTableLogMaxAge**: The RoutingTableLogMaxAge parameter specifies the\n  maximum routing table log age. Log files older than the specified value are\n  deleted. The default value is 7 days.\n- **RoutingTableLogMaxDirectorySize**: The RoutingTableLogMaxDirectorySize\n  parameter specifies the maximum size of the routing table log directory. When\n  the maximum directory size is reached, the server deletes the oldest log files\n  first. The default value is 250 MB.\n- **RoutingTableLogPath**: The RoutingTableLogPath parameter specifies the\n  directory location where routing table log files should be stored.\n- **SendProtocolLogMaxAge**: The SendProtocolLogMaxAge parameter specifies the\n  maximum age of a protocol log file that's shared by all Send connectors in the\n  Front End Transport service that have this server configured as a source\n  server. Log files that are older than the specified value are deleted.\n- **SendProtocolLogMaxDirectorySize**: The SendProtocolLogMaxDirectorySize\n  parameter specifies the maximum size of the protocol log directory that's\n  shared by all Send connectors in the Front End Transport service that have this\n  server configured as a source server. When the maximum directory size is\n  reached, the server deletes the oldest log files first.\n- **SendProtocolLogMaxFileSize**: The SendProtocolLogMaxFileSize parameter\n  specifies the maximum size of a protocol log file that's shared by all the Send\n  connectors in the Front End Transport service that have this server configured\n  as a source server. When a log file reaches its maximum file size, a new log\n  file is created.\n- **SendProtocolLogPath**: The SendProtocolLogPath parameter specifies the\n  location of the protocol log directory for all Send connectors in the Front End\n  Transport service that have this server configured as a source server.\n- **TransientFailureRetryCount**: The TransientFailureRetryCount parameter\n  specifies the maximum number of immediate connection retries attempted when the\n  server encounters a connection failure with a remote server. The default value\n  is 6. The valid input range for this parameter is from 0 through 15. When the\n  value of this parameter is set to 0, the server doesn't immediately attempt to\n  retry an unsuccessful connection.\n- **TransientFailureRetryInterval**: The TransientFailureRetryInterval\n  parameter controls the connection interval between each connection attempt\n  specified by the TransientFailureRetryCount parameter. For the Front End\n  Transport service, the default value of the TransientFailureRetryInterval\n  parameter is 5 minutes.\n\n#### Common Issues\n\nTo set some settings to NULL you need to set the value to '' instead of using \\$null.\nThe following settings are affected:\nExternalDNSServers\nExternalIPAddress\nInternalDNSServers\n\n### ExchImapSettings\n\n**ExchImapSettings** configures IMAP settings using Set-ImapSettings.\n\nMost properties correspond directly to properties in\n[Set-ImapSettings](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access/set-imapsettings)\nparameters.\n\n- **Server**: Hostname of the IMAP server to configure.\n- **Credential**: Credentials used to establish a remote PowerShell session to\n  Exchange.\n- **AllowServiceRestart**: Whether it is OK to restart the IMAP services after\n  making changes. Defaults to \\$false.\n- **DomainController**: The DomainController parameter specifies the domain\n  controller that's used by this cmdlet to read data from or write data to\n  Active Directory. You identify the domain controller by its fully qualified\n  domain name (FQDN). For example, dc01.contoso.com.\n- **ExternalConnectionSettings**: The ExternalConnectionSettings parameter\n  specifies the host name, port, and encryption method that's used by external\n  IMAP4 clients (IMAP4 connections from outside your corporate network).\n- **LoginType**: The LoginType parameter specifies the authentication method\n  for IMAP4 connections.\n- **X509CertificateName**: The X509CertificateName parameter specifies the\n  certificate that's used for encrypting IMAP4 client connections.\n- **AuthenticatedConnectionTimeout**: The AuthenticatedConnectionTimeout\n  parameter specifies the period of time to wait before closing an idle\n  authenticated connection.\")] String AuthenticatedConnectionTimeout.\n- **Banner**: The Banner parameter specifies the text string that's displayed to\n  connecting IMAP4 clients.\n- **CalendarItemRetrievalOption**: The CalendarItemRetrievalOption parameter\n  specifies how calendar items are presented to IMAP4 clients.\n  {iCalendar | IntranetUrl | InternetUrl | Custom}\n- **EnableExactRFC822Size**: The EnableExactRFC822Size parameter specifies how\n  message sizes are presented to IMAP4 clients.\n- **EnableGSSAPIAndNTLMAuth**: The EnableGSSAPIAndNTLMAuth parameter specifies\n  whether connections can use Integrated Windows authentication (NTLM) using the\n  Generic Security Services application programming interface (GSSAPI). This\n  setting applies to connections where Transport Layer Security (TLS) is disabled.\n- **EnforceCertificateErrors**: The EnforceCertificateErrors parameter specifies\n  whether to enforce valid Secure Sockets Layer (SSL) certificate validation failures.\n- **ExtendedProtectionPolicy**: The ExtendedProtectionPolicy parameter specifies\n  how Extended Protection for Authentication is used. {None | Allow | Required}\n- **InternalConnectionSettings**: The InternalConnectionSettings parameter\n  specifies the host name, port, and encryption method that's used by internal\n  IMAP4 clients (IMAP4 connections from inside your corporate network).\n- **LogFileLocation**: The LogFileLocation parameter specifies the location for\n  the IMAP4 protocol log files.\n- **LogFileRollOverSettings**: The LogFileRollOverSettings parameter specifies\n  how frequently IMAP4 protocol logging creates a new log file.\n  {Hourly | Daily | Weekly | Monthly}\n- **LogPerFileSizeQuota**: The LogPerFileSizeQuota parameter specifies the\n  maximum size of a IMAP4 protocol log file.\n- **MaxCommandSize**: The MaxCommandSize parameter specifies the maximum size in\n  bytes of a single IMAP4 command.\n- **MaxConnectionFromSingleIP**: The MaxConnectionFromSingleIP parameter\n  specifies the maximum number of IMAP4 connections that are accepted by the\n  Exchange server from a single IP address.\n- **MaxConnections**: The MaxConnections parameter specifies the maximum number\n  of IMAP4 connections that are accepted by the Exchange server.\n- **MaxConnectionsPerUser**: The MaxConnectionsPerUser parameter specifies the\n  maximum number of IMAP4 connections that are allowed for each user.\n- **MessageRetrievalMimeFormat**: The MessageRetrievalMimeFormat parameter\n  specifies the MIME encoding of messages.\n  {TextOnly | HtmlOnly | HtmlAndTextAlternative |\n  TextEnrichedOnly | TextEnrichedAndTextAlternative | BestBodyFormat | Tnef}\n- **OwaServerUrl**: The OwaServerUrl parameter specifies the URL that's used to\n  retrieve calendar information for instances of custom Outlook on the web\n  calendar items.\n- **PreAuthenticatedConnectionTimeout**: The PreAuthenticatedConnectionTimeout\n  parameter specifies the period of time to wait before closing an idle IMAP4\n  connection that isn't authenticated.\n- **ProtocolLogEnabled**: The ProtocolLogEnabled parameter specifies whether to\n  enable protocol logging for IMAP4.\n- **ProxyTargetPort**: The ProxyTargetPort parameter specifies the port on the\n  Microsoft Exchange IMAP4 Backend service that listens for client connections\n  that are proxied from the Microsoft Exchange IMAP4 service.\n- **ShowHiddenFoldersEnabled**: The ShowHiddenFoldersEnabled parameter specifies\n  whether hidden mailbox folders are visible.\n- **SSLBindings**: The SSLBindings parameter specifies the IP address and TCP\n  port that's used for IMAP4 connection that's always encrypted by SSL/TLS. This\n  parameter uses the syntax {IPv4OrIPv6Address}:{Port}.\n- **SuppressReadReceipt**: The SuppressReadReceipt parameter specifies whether\n  to stop duplicate read receipts from being sent to IMAP4 clients that have the\n  Send read receipts for messages I send setting configured in their IMAP4 email\n  program.\n- **UnencryptedOrTLSBindings**: The X509CertificateName parameter specifies the\n  certificate that's used for encrypting IMAP4 client connections.\n\n### ExchInstall\n\n**ExchInstall** installs or updates Exchange 2013, 2016, or 2019.\n\n- **Path**: Full path to setup.exe in the Exchange 2013, 2016, or 2019\n  setup directory.\n- **Arguments**: Command line arguments to pass to setup.exe\n  For help on command line arguments, see\n  [Install Exchange 2016 using unattended mode](https://docs.microsoft.com/en-us/Exchange/plan-and-deploy/deploy-new-installations/unattended-installs)\n- **Credential**: The credentials to use to perform the installation.\n\n### ExchJetstress\n\n**ExchJetstress** automatically runs Jetstress using the **JetstressCmd.exe**\ncommand line executable. The resource launches Jetstress via a Scheduled Task,\nthen monitors for JetstressCmd.exe to determine whether Jetstress is running.\nOnce JetstressCmd.exe has finished, ExchJetstress looks for the existence of\n**TYPE\\*.html** files in the Jetstress installation directory to determine whether\nJetstress has already been run, or if it needs to be executed.\n**TYPE** corresponds to the Type defined in the **JetstressConfig.xml** file,\nwhere valid values are **Performance**, **Stress**, **DatabaseBackup**, or **SoftRecovery**.\nIf TYPE*.html files exist, the newest file is inspected to determine whether\nthe Jetstress run resulted in a **Pass** or **Fail**.\nNote that a \\*\\*TYPE*.html** file is not written until Jetstress has finished\nits initialization phase, and has also finished the testing phase with either\na **Pass** or a **Fail\\*\\*.\nA crash of the JetstressCmd.exe process will also prevent the file from being written.\n\n- **Type**: Specifies the Type which was defined in the JetstressConfig.xml\n  file:{ Performance | Stress | DatabaseBackup | SoftRecovery }\n- **JetstressPath**: The path to the folder where Jetstress is installed,\n  and which contains JetstressCmd.exe.\n- **JetstressParams**: Command line parameters to pass into JetstressCmd.exe.\n- **MaxWaitMinutes**: The maximum amount of time that the Scheduled Task which\n  runs Jetstress can execute for.\n  Defaults to 0, which means there is no time limit.\n- **MinAchievedIOPS**: The minimum value reported in the\n  'Achieved Transactional I/O per Second' section of the Jetstress report\n  for the run to be considered successful.\n  Defaults to 0.\n- **WARNING 1:** Jetstress should **NEVER** be run on a server that already\n  has Exchange installed.\n  Jetstress is only meant to be used for pre-installation server validation.\n  As such, it is recommended that **ExchJetstress** be used in a one time script\n  which is separate from the script that performs ongoing server configuration validation.\n- **WARNING 2:** **ExchJetstress** should **NOT** be used in the same\n  configuration script as **ExchJetstressCleanup**.\n  Instead, they should be run in separate scripts.\n  Because **ExchJetstress** looks for files and folders that may have been\n  cleaned up by **ExchJetstressCleanup**, using them in the same script\n  may result in a configuration loop.\n\n### ExchJetstressCleanup\n\nExchJetstressCleanup cleans up the database and log directories created by Jetstress.\nIt can optionally remove mount points associated with those directories,\nand can also remove the Jetstress binaries.\nNote that **ExchJetstressCleanup** does **NOT** uninstall Jetstress.\nThat can be accomplished using the **Package** resource which is built into DSC.\n\n- **JetstressPath**: The path to the folder where Jetstress is installed,\n  which contains **JetstressCmd.exe**.\n- **\\*ConfigFilePath**: The full path to **JetstressConfig.xml**,\n  which will be used to determine the database and log folders that need to be removed.\n- **\\*DatabasePaths**: Specifies the paths to database directories that\n  should be cleaned up.\n- **DeleteAssociatedMountPoints**: Indicates that the mount points associated\n  with the Jetstress database and log paths should be removed.\n  Defaults to \\$false.\n  Does not remove EXVOL mount points.\n- **\\*LogPaths**: Specifies the paths to log directories that should be cleaned up.\n- **RemoveBinaries**: Specifies that the files located in **JetstressPath**\n  should be removed.\n  If **ConfigFilePath** is also specified and JetstressConfig.xml is in the\n  same directory as JetstressPath, all files will be removed from the directory\n  except JetstressConfig.xml.\n- **OutputSaveLocation**: If **RemoveBinaries** is set to \\$true and Jetstress\n  output was saved to the default location (**JetstressPath**), this specifies\n  the folder path to copy the Jetstress output files to.\n\nNote: Either **ConfigFilePath**, or **DatabasePaths** AND **LogPaths** MUST be\nspecified. **ConfigFilePath** takes precedence over **DatabasePaths** and **LogPaths**.\n\n**WARNING:** **ExchJetstress** should NOT be used in the same configuration\nscript as **ExchJetstressCleanup**.\nInstead, they should be run in separate scripts.\nBecause **ExchJetstress** looks for files and folders that may have been\ncleaned up by **ExchJetstressCleanup**, using them in the same script may\nresult in a configuration loop.\n\n### ExchMailboxDatabase\n\n**ExchMailboxDatabase** is used to create, remove, or change properties on a\nMailbox Database.\n\nMost properties correspond directly to\n[Set-MailboxDatabase](https://docs.microsoft.com/en-us/powershell/module/exchange/mailbox-databases-and-servers/set-mailboxdatabase)\nparameters.\n\n- **Name**: The Name parameter specifies the unique name of the mailbox\n  database.\n- **Credential**: Credentials used to establish a remote PowerShell session to\n  Exchange.\n- **DatabaseCopyCount**: The number of copies that the database will have once\n  fully configured. If circular logging is configured, it will not be enabled\n  until this number of copies is met.\n- **EdbFilePath**: The EdbFilePath parameter specifies the path to the database\n  files.\n- **LogFolderPath**: The LogFolderPath parameter specifies the folder location\n  for log files.\n- **Server**: The Server parameter specifies the server on which you want to\n  create the database.\n- **AllowFileRestore**: The AllowFileRestore parameter specifies whether to\n  allow a database to be restored from a backup.\n- **AllowServiceRestart**: Whether it is okay to restart the Information Store\n  Service after adding a database. Defaults to \\$false.\n- **AutoDagExcludeFromMonitoring**: The AutoDagExcludedFromMonitoringparameter\n  specifies whether to exclude the mailbox database from the\n  ServerOneCopyMonitor, which alerts an administrator when a replicated\n  database has only one healthy copy available.\n- **BackgroundDatabaseMaintenance**: The BackgroundDatabaseMaintenance\n  parameter specifies whether the Extensible Storage Engine (ESE) performs\n  database maintenance.\n- **CalendarLoggingQuota**: The CalendarLoggingQuota parameter specifies the\n  maximum size of the log in the Recoverable Items folder of the mailbox that\n  stores changes to calendar items.\n- **CircularLoggingEnabled**: The CircularLoggingEnabled parameter specifies\n  whether circular logging is enabled for the database. NOTE: Will not be\n  enabled until the number of copies specified in DatabaseCopyCount have been\n  added.\n- **DataMoveReplicationConstraint**: The DataMoveReplicationConstraint\n  parameter specifies the throttling behavior for high availability mailbox\n  moves.\n- **DeletedItemRetention**: The DeletedItemRetention parameter specifies the\n  length of time to keep deleted items in the Recoverable Items\\Deletions\n  folder in mailboxes.\n- **DomainController**: The DomainController parameter specifies the domain\n  controller that's used by this cmdlet to read data from or write data to\n  Active Directory. You identify the domain controller by its fully qualified\n  domain name (FQDN). For example, dc01.contoso.com.\n- **EventHistoryRetentionPeriod**: The EventHistoryRetentionPeriod parameter\n  specifies the length of time to keep event data.\n- **IndexEnabled**: The IndexEnabled parameter specifies whether Exchange\n  Search indexes the mailbox database.\n- **IsExcludedFromProvisioning**: The IsExcludedFromProvisioning parameter\n  specifies whether to exclude the database from the mailbox provisioning load\n  balancer that distributes new mailboxes randomly and evenly across the\n  available databases.\n- **IsExcludedFromProvisioningByOperator**: The\n  IIsExcludedFromProvisioningByOperator parameter specifies whether to exclude\n  the database from the mailbox provisioning load balancer that distributes new\n  mailboxes randomly and evenly across the available databases.\n- \\*_IsExcludedFromProvisioningDueToLogicalCorruption_: The\n  IsExcludedFromProvisioningDueToLogicalCorruption parameter specifies whether\n  to exclude the database from the mailbox provisioning load balancer that\n  distributes new mailboxes randomly and evenly across the available databases.\n- **IsExcludedFromProvisioningReason**: The IsExcludedFromProvisioningReason\n  parameter specifies the reason why you excluded the mailbox database from the\n  mailbox provisioning load balancer.\n- **IssueWarningQuota**: The IssueWarningQuota parameter specifies the warning\n  threshold for the size of the mailbox.\n- **IsSuspendedFromProvisioning**: The IsSuspendedFromProvisioning parameter\n  specifies whether to exclude the database from the mailbox provisioning load\n  balancer that distributes new mailboxes randomly and evenly across the\n  available databases.\n- **JournalRecipient**: The JournalRecipient parameter specifies the journal\n  recipient to use for per-database journaling for all mailboxes on the\n  database.\n- **MailboxRetention**: The MailboxRetention parameter specifies the length of\n  time to keep deleted mailboxes before they are permanently deleted or purged.\n- **MetaCacheDatabaseMaxCapacityInBytes**: The\n  MetaCacheDatabaseMaxCapacityInBytes parameter specifies the size of the\n  metacache database in bytes. To convert gigabytes to bytes, multiply the\n  value by 1024^3. For terabytes to bytes, multiply by 1024^4.\n- **MountAtStartup**: The MountAtStartup parameter specifies whether to mount\n  the mailbox database when the Microsoft Exchange Information Store service\n  starts.\n- **OfflineAddressBook**: The OfflineAddressBook parameter specifies the\n  offline address book that's associated with the mailbox database.\n- **ProhibitSendQuota**: The ProhibitSendQuota parameter specifies a size limit\n  for the mailbox. If the mailbox reaches or exceeds this size, the mailbox\n  can't send new messages, and the user receives a descriptive warning message.\n- **ProhibitSendReceiveQuota**: The ProhibitSendReceiveQuota parameter\n  specifies a size limit for the mailbox. If the mailbox reaches or exceeds\n  this size, the mailbox can't send or receive new messages. Messages sent to\n  the mailbox are returned to the sender with a descriptive error message. This\n  value effectively determines the maximum size of the mailbox.\n- **RecoverableItemsQuota**: The RecoverableItemsQuota parameter specifies the\n  maximum size for the Recoverable Items folder of the mailbox.\n- **RecoverableItemsWarningQuota**: The RecoverableItemsWarningQuota parameter\n  specifies the warning threshold for the size of the Recoverable Items folder\n  for the mailbox.\n- **RetainDeletedItemsUntilBackup**: The RetainDeletedItemsUntilBackup\n  parameter specifies whether to keep items in the Recoverable Items\\Deletions\n  folder of the mailbox until the next database backup occurs.\n- **SkipInitialDatabaseMount**: Whether the initial mount of databases should\n  be skipped after database creation.\n\n### ExchMailboxDatabaseCopy\n\n**ExchMailboxDatabaseCopy** is used to create, remove, or change properties on\na Mailbox Database Copy.\n\nMost properties correspond directly to\n[Add-MailboxDatabaseCopy](https://docs.microsoft.com/en-us/powershell/module/exchange/database-availability-groups/add-mailboxdatabasecopy)\nor\n[Set-MailboxDatabaseCopy](https://docs.microsoft.com/en-us/powershell/module/exchange/database-availability-groups/set-mailboxdatabasecopy)\nparameters.\n\n- **Identity**: The Identity parameter specifies the name of the database whose\n  copy is being modified.\n- **Credential**: Credentials used to establish a remote PowerShell session to\n  Exchange.\n- **MailboxServer**: The MailboxServer parameter specifies the name of the\n  server that will host the database copy.\n- **AdServerSettingsPreferredServer**: An optional domain controller to pass to\n  Set-AdServerSettings -PreferredServer.\n- **AllowServiceRestart**: Whether it is OK to restart the Information Store.\n  service after adding a database copy.\n  Defaults to \\$false.\n- **ActivationPreference**: The ActivationPreference parameter value is used as\n  part of Active Manager's best copy selection process and to redistribute\n  active mailbox databases throughout the database availability group (DAG)\n  when using the RedistributeActiveDatabases.ps1 script.\n- **DomainController**: The DomainController parameter specifies the domain\n  controller that's used by this cmdlet to read data from or write data to\n  Active Directory. You identify the domain controller by its fully qualified\n  domain name (FQDN). For example, dc01.contoso.com.\n- **ReplayLagMaxDelay**: The ReplayLagMaxDelay parameter specifies the maximum\n  delay for lagged database copy play down (also known as deferred lagged copy\n  play down).\n- **ReplayLagTime**: The ReplayLagTime parameter specifies the amount of time\n  that the Microsoft Exchange Replication service should wait before replaying\n  log files that have been copied to the passive database copy.\n- **SeedingPostponed**: The SeedingPostponed switch specifies that the task\n  doesn't seed the database copy, so you need to explicitly seed the database\n  copy.\n- **TruncationLagTime**: The TruncationLagTime parameter specifies the amount\n  of time that the Microsoft Exchange Replication service should wait before\n  truncating log files that have replayed into the passive copy of the\n  database.\n\n### ExchMailboxServer\n\n**ExchMailboxServer** is used to configure Mailbox Server properties via\nSet-MailboxServer.\n\nProperties correspond to\n[Set-MailboxServer](https://docs.microsoft.com/en-us/powershell/module/exchange/mailbox-databases-and-servers/set-mailboxserver)\nparameters.\n\n- **Identity**: The Identity parameter specifies the Mailbox server\n  that you want to modify.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AutoDatabaseMountDial**: The AutoDatabaseMountDial parameter specifies the\n  automatic database mount behavior for a continuous replication environment\n  after a database failover.\n- **CalendarRepairIntervalEndWindow**: The CalendarRepairIntervalEndWindow parameter\n  specifies the number of days into the future to repair calendars.\n  For example, if this parameter is set to 90, the Calendar Repair Assistant\n  repairs calendars on this Mailbox server 90 days from now.\n- **CalendarRepairLogDirectorySizeLimit**: The CalendarRepairLogDirectorySizeLimit\n  parameter specifies the size limit for all log files for the Calendar Repair Assistant.\n  After the limit is reached, the oldest files are deleted.\n- **CalendarRepairLogEnabled**: The CalendarRepairLogEnabled parameter specifies\n  whether the Calendar Repair Attendant logs items that it repairs.\n  The repair log doesn't contain failed repair attempts.\n- **CalendarRepairLogFileAgeLimit**: The CalendarRepairLogFileAgeLimit parameter\n  specifies how long to retain calendar repair logs. Log files that exceed\n  the maximum retention period are deleted.\n- **CalendarRepairLogPath**: The CalendarRepairLogPath parameter specifies\n  the location of the calendar repair log files on the Mailbox server.\n- **CalendarRepairLogSubjectLoggingEnabled**: The CalendarRepairLogSubjectLoggingEnabled\n  parameter specifies that the subject of the repaired calendar item is logged in\n  the calendar repair log.\n- **CalendarRepairMissingItemFixDisabled**: The CalendarRepairMissingItemFixDisabled\n  parameter specifies that the Calendar Repair Assistant won't fix missing attendee\n  calendar items for mailboxes homed on this Mailbox server.\n- **CalendarRepairMode**: The CalendarRepairMode parameter specifies the mode that\n  the Calendar Repair Assistant will run in.\n- **CalendarRepairWorkCycle**: The CalendarRepairWorkCycle parameter specifies\n  the time span in which all mailboxes on the specified server will be scanned by\n  the Calendar Repair Assistant. Calendars that have inconsistencies will be\n  flagged and repaired according to the interval specified by\n  the CalendarRepairWorkCycleCheckpoint parameter.\n- **CalendarRepairWorkCycleCheckpoint**: The CalendarRepairWorkCycleCheckpoint\n  parameter specifies the time span at which all mailboxes will be identified\n  as needing work completed on them.\n- **DomainController**: The DomainController parameter specifies the fully\n  qualified domain name (FQDN) of the domain controller that writes\n  this configuration change to Active Directory.\n- **DatabaseCopyActivationDisabledAndMoveNow**: The DatabaseCopyActivationDisabledAndMoveNow\n  parameter specifies whether to prevent databases from being mounted on this\n  Mailbox server if there are other healthy copies of the databases on other\n  Mailbox servers. It will also immediately move any mounted databases on\n  the server to other servers if copies exist and are healthy.\n- **DatabaseCopyAutoActivationPolicy**: The DatabaseCopyAutoActivationPolicy parameter\n  specifies the type of automatic activation available for mailbox database copies\n  on the specified Mailbox server. Valid values are Blocked, IntrasiteOnly, and Unrestricted.\n- **FolderLogForManagedFoldersEnabled**: The FolderLogForManagedFoldersEnabled\n  parameter specifies whether the folder log for managed folders is enabled for\n  messages that were moved to managed folders.\n- **ForceGroupMetricsGeneration**: The ForceGroupMetricsGeneration parameter\n  specifies that group metrics information must be generated on the Mailbox server\n  regardless of whether that server generates an offline address book (OAB).\n  By default, group metrics are generated only on servers that generate OABs.\n  Group metrics information is used by MailTips to inform senders about how\n  many recipients their messages will be sent to.\n  You need to use this parameter if your organization doesn't generate OABs and\n  you want the group metrics data to be available.\n- **IsExcludedFromProvisioning**: The IsExcludedFromProvisioning parameter specifies\n  that the Mailbox server isn't considered by the OAB provisioning load balancer.\n  If the IsExcludedFromProvisioning parameter is set to \\$true, the server won't\n  be used for provisioning a new OAB or for moving existing OABs.\n- **JournalingLogForManagedFoldersEnabled**: The JournalingLogForManagedFoldersEnabled\n  parameter specifies whether the log for managed folders is enabled for journaling.\n  The two possible values for this parameter are $true or $false.\n  If you specify \\$true, information about messages that were journaled is logged.\n  The logs are located at the location you specify with\n  the LogPathForManagedFolders parameter.\n- **Locale**: The Locale parameter specifies the locale. A locale is a collection\n  of language-related user preferences such as writing system, calendar,\n  and date format.\n- **LogDirectorySizeLimitForManagedFolders**: The LogDirectorySizeLimitForManagedFolders\n  parameter specifies the size limit for all managed folder log files from\n  a single message database. After the limit is reached for a set of\n  managed folder log files from a message database, the oldest files are deleted\n  to make space for new files.\n- **LogFileAgeLimitForManagedFolders**: The LogFileAgeLimitForManagedFolders parameter\n  specifies how long to retain managed folder logs.\n  Log files that exceed the maximum retention period are deleted.\n- **LogFileSizeLimitForManagedFolders**: The LogFileSizeLimitForManagedFolders\n  parameter specifies the maximum size for each managed folder log file.\n  When the log file size limit is reached, a new log file is created.\n- **LogPathForManagedFolders**: The LogPathForManagedFolders parameter specifies\n  the path to the directory that stores the managed folder log files.\n- **MailboxProcessorWorkCycle**: The MailboxProcessorWorkCycle parameter specifies\n  how often to scan for locked mailboxes.\n- **ManagedFolderAssistantSchedule**: The ManagedFolderAssistantSchedule parameter\n  specifies the intervals each week during which the Managed Folder Assistant applies\n  messaging records management (MRM) settings to managed folders. The format is StartDay.Time-EndDay.\n- **ManagedFolderWorkCycle**: The ManagedFolderWorkCycle parameter specifies\n  the time span in which all mailboxes on the specified server will be processed\n  by the Managed Folder Assistant. The Managed Folder Assistant applies retention\n  policies according to the ManagedFolderWorkCycleCheckpoint interval.\n- **ManagedFolderWorkCycleCheckpoint**: The ManagedFolderWorkCycleCheckpoint\n  parameter specifies the time span at which to refresh the list of mailboxes so\n  that new mailboxes that have been created or moved will be part of the work queue.\n  Also, as mailboxes are prioritized, existing mailboxes that haven't been\n  successfully processed for a long time will be placed higher in the queue and\n  will have a greater chance of being processed again in the same work cycle.\n- **MAPIEncryptionRequired**: The MAPIEncryptionRequired parameter specifies whether\n  Exchange blocks MAPI clients that don't use encrypted remote procedure calls (RPCs).\n- **MaximumActiveDatabases**: The MaximumActiveDatabases parameter specifies\n  the number of databases that can be mounted on this Mailbox server.\n  This parameter accepts numeric values.\n- **MaximumPreferredActiveDatabases**: The MaximumPreferredActiveDatabases\n  parameter specifies a preferred maximum number of databases\n  that a server should have.\n  This value is different from the actual maximum, which is configured using\n  the MaximumActiveDatabases parameter.\n  The value of MaximumPreferredActiveDatabases is only honored during best copy\n  and server selection, database and server switchovers,\n  and when rebalancing the DAG.\n- **OABGeneratorWorkCycle**: The OABGeneratorWorkCycle parameter specifies the\n  time span in which the OAB generation on the specified server will be processed.\n- **OABGeneratorWorkCycleCheckpoint**: The OABGeneratorWorkCycleCheckpoint parameter\n  specifies the time span at which to run OAB generation.\n- **PublicFolderWorkCycle**: The PublicFolderWorkCycle parameter is used by the\n  public folder assistant to determine how often the mailboxes in\n  a database are processed by the assistant.\n- **PublicFolderWorkCycleCheckpoint**: The PublicFolderWorkCycleCheckpoint determines\n  how often the mailbox list for a database is evaluated.\n  The processing speed is also calculated.\n- **RetentionLogForManagedFoldersEnabled**: The RetentionLogForManagedFoldersEnabled\n  parameter specifies whether the Managed Folder Assistant logs information about\n  messages that have reached their retention limits.\n- **SharingPolicySchedule**: The SharingPolicySchedule parameter specifies\n  the intervals each week during which the sharing policy runs.\n  The Sharing Policy Assistant checks permissions on shared calendar items\n  and contact folders in users' mailboxes against the assigned sharing policy.\n  The assistant lowers or removes permissions according to the policy.\n  The format is StartDay.Time-EndDay.Time.\n- **SharingPolicyWorkCycle**: The SharingPolicyWorkCycle parameter specifies\n  the time span in which all mailboxes on the specified server will be scanned by\n  the Sharing Policy Assistant. The Sharing Policy Assistant scans all mailboxes\n  and enables or disables sharing polices according to the interval specified by\n  the SharingPolicyWorkCycle.\n- **SharingPolicyWorkCycleCheckpoint**: The SharingPolicyWorkCycleCheckpoint parameter\n  specifies the time span at which to refresh the list of mailboxes so that new mailboxes\n  that have been created or moved will be part of the work queue. Also, as mailboxes\n  are prioritized, existing mailboxes that haven't been successfully processed\n  for a long time will be placed higher in the queue and will have a greater chance\n  of being processed again in the same work cycle.\n- **SharingSyncWorkCycle**: The SharingSyncWorkCycle parameter specifies\n  the time span in which all mailboxes on the specified server will be synced to\n  the cloud-based service by the Sharing Sync Assistant. Mailboxes that require\n  syncing will be synced according to the interval specified by\n  the SharingSyncWorkCycleCheckpoint parameter.\n- **SharingSyncWorkCycleCheckpoint**: The SharingSyncWorkCycleCheckpoint parameter\n  specifies the time span at which to refresh the list of mailboxes so that new mailboxes\n  that have been created or moved will be part of the work queue. Also, as mailboxes\n  are prioritized, existing mailboxes that haven't been successfully processed for\n  a long time will be placed higher in the queue and will have a greater chance of\n  being processed again in the same work cycle.\n- **SiteMailboxWorkCycle**: The SiteMailboxWorkCycle parameter specifies\n  the time span in which the site mailbox information on the specified server\n  will be processed.\n- **SiteMailboxWorkCycleCheckpoint**: The SiteMailboxWorkCycleCheckpoint parameter\n  specifies the time span at which to refresh the site mailbox workcycle.\n- **SubjectLogForManagedFoldersEnabled**: The SubjectLogForManagedFoldersEnabled\n  parameter specifies whether the subject of messages is displayed in\n  managed folder logs.\n- **TopNWorkCycle**: The TopNWorkCycle parameter specifies the time span in which\n  all mailboxes that have Unified Messaging on the specified server will be scanned\n  by the TopN Words Assistant. The TopN Words Assistant scans voice mail for\n  the most frequently used words to aid in transcription.\n- **TopNWorkCycleCheckpoint**: The TopNWorkCycleCheckpoint parameter specifies\n  the time span at which to refresh the list of mailboxes so that new mailboxes\n  that have been created or moved will be part of the work queue. Also, as mailboxes\n  are prioritized, existing mailboxes that haven't been successfully processed\n  for a long time will be placed higher in the queue and will have a greater chance\n  of being processed again in the same work cycle.\n- **UMReportingWorkCycle**: The UMReportingWorkCycle parameter specifies\n  the time span in which the arbitration mailbox named SystemMailbox{e0dc1c29-89c3-4034-b678-e6c29d823ed9}\n  on the specified server will be scanned by the Unified Messaging Reporting Assistant.\n  The Unified Messaging Reporting Assistant updates the Call Statistics reports by\n  reading Unified Messaging call data records for an organization on a regular basis.\n- **UMReportingWorkCycleCheckpoint**: The UMReportingWorkCycleCheckpoint parameter\n  specifies the time span at which the arbitration mailbox named SystemMailbox{e0dc1c29-89c3-4034-b678-e6c29d823ed9}\n  will be marked by processing.\n- **WacDiscoveryEndpoint**: The WacDiscoveryEndpoint parameter specifies\n  the Office Online Server endpoint to use. Exchange 2016 only.\n\n#### Common Issues\n\nThe parameter Locale doesn't work.\n\n### ExchMailboxTransportService\n\n**ExchMailboxTransportService** configures the Mailbox Transport service\nsettings on Mailbox servers using Set-MailboxTransportService.\n\nWhere no description is listed, properties correspond directly to\n[Set-MailboxTransportService](https://docs.microsoft.com/en-us/powershell/module/exchange/mail-flow/set-mailboxtransportservice)\nparameters.\n\n- **Identity**: Hostname of the server to configure.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether it is OK to restart service to make changes active\n- **ConnectivityLogEnabled**\n- **ConnectivityLogMaxAge**\n- **ConnectivityLogMaxDirectorySize**\n- **ConnectivityLogMaxFileSize**\n- **ConnectivityLogPath**\n- **ContentConversionTracingEnabled**\n- **MaxConcurrentMailboxDeliveries**\n- **MaxConcurrentMailboxSubmissions**\n- **PipelineTracingEnabled**\n- **PipelineTracingPath**\n- **PipelineTracingSenderAddress**\n- **ReceiveProtocolLogMaxAge**\n- **ReceiveProtocolLogMaxDirectorySize**\n- **ReceiveProtocolLogMaxFileSize**\n- **ReceiveProtocolLogPath**\n- **SendProtocolLogMaxAge**\n- **SendProtocolLogMaxDirectorySize**\n- **SendProtocolLogMaxFileSize**\n- **SendProtocolLogPath**\n\n#### Common Issues\n\nTo set some settings to NULL you need to set the value to '' instead of using \\$null.\nThe following settings are affected: PipelineTracingSenderAddress\n\n### ExchMaintenanceMode\n\n**ExchMaintenanceMode** is used for putting a Database Availability Group member\nin and out of maintenance mode. Only works with servers that have both\nthe Client Access and Mailbox Server roles.\n\n- **Enabled**: Whether the server should be put into Maintenance Mode.\n  When Enabled is set to True, the server will be put in Maintenance Mode.\n  If False, the server will be taken out of Maintenance Mode.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AdditionalComponentsToActivate**: When taking a server out of Maintenance Mode,\n  the following components will be set to Active by default: ServerWideOffline,\n  UMCallRouter, HighAvailability, Monitoring, RecoveryActionsEnabled.\n  This parameter specifies an additional list of components to set to Active.\n- **DomainController**: The DomainController parameter specifies the fully\n  qualified domain name (FQDN) of the domain controller that writes this\n  configuration change to Active Directory.\n- **MountDialOverride**: Used when moving databases back to the server after\n  taking the server out of maintenance mode. The MountDialOverride parameter\n  is used to override the auto database mount dial (AutoDatabaseMountDial)\n  setting for the target server and specify an alternate setting. Defaults to\n  None.\n- **MovePreferredDatabasesBack**: Whether to move back databases with an\n  Activation Preference of one for this server after taking the server out of\n  Maintenance Mode. Defaults to False.\n- **SetInactiveComponentsFromAnyRequesterToActive**: Whether components that were\n  set to Inactive by outside Requesters should also be set to Active\n  when exiting Maintenance Mode. Defaults to False.\n- **SkipActiveCopyChecks**: Used when moving databases back to the server after\n  taking the server out of maintenance mode. The SkipActiveCopyChecks switch\n  specifies whether to skip checking the current active copy to see if it's\n  currently a seeding source for any passive databases. Defaults to False.\n- **SkipAllChecks**: Exchange 2016 Only. Used when moving databases back to the\n  server after taking the server out of maintenance mode. The SkipAllChecks\n  switch specifies whether to skip all checks. This switch is equivalent to\n  specifying all of the individual skip parameters that are available on this\n  cmdlet. Defaults to False.\n- **SkipClientExperienceChecks**: Used when moving databases back to the server\n  after taking the server out of maintenance mode. The\n  SkipClientExperienceChecks switch specifies whether to skip the search\n  catalog (content index) state check to see if the search catalog is healthy\n  and up to date. Defaults to False.\n- **SkipCpuChecks**: Exchange 2016 Only. Used when moving databases back to the\n  server after taking the server out of maintenance mode. The SkipCpuChecks\n  switch specifies whether to skip the high CPU utilization checks. Defaults to\n  False.\n- **SkipHealthChecks**: Used when moving databases back to the server after\n  taking the server out of maintenance mode. The SkipHealthChecks switch\n  specifies whether to bypass passive copy health checks. Defaults to False.\n- **SkipLagChecks**: Used when moving databases back to the server after taking\n  the server out of maintenance mode. The SkipLagChecks switch specifies\n  whether to allow a copy to be activated that has replay and copy queues\n  outside of the configured criteria. Defaults to False.\n- **SkipMaximumActiveDatabasesChecks**: Used when moving databases back to the\n  server after taking the server out of maintenance mode. The\n  SkipMaximumActiveDatabasesChecks switch specifies whether to skip checking\n  the value of MaximumPreferredActiveDatabases during the best copy and server\n  selection (BCSS) process. Defaults to False.\n- **SkipMoveSuppressionChecks**: Exchange 2016 Only. Used when moving databases\n  back to the server after taking the server out of maintenance mode. The\n  SkipMoveSuppressionChecks switch specifies whether to skip the move\n  suppression checks. Defaults to False.\n- **UpgradedServerVersion**: Optional string to specify what the server version\n  will be after applying a Cumulative Update. If the server is already at this version,\n  requests to put the server in Maintenance Mode will be ignored.\n  Version should be in the format ##.#.####.#, as in 15.0.1104.5.\n\n#### Maintenance Mode Procedures\n\n**ExchMaintenanceMode** performs the following steps when entering or\nexiting Maintenance Mode\n\n#### Entering Maintenance Mode\n\n- Set DatabaseCopyAutoActivationPolicy to Blocked\n- Set UMCallrouter to Draining\n- Execute TransportMaintenance.psm1 -\u003e Start-TransportMaintenance\n  - Pause MSExchangeTransport service\n  - Wait for queues to drain\n  - Redirect remaining messages\n  - Set HubTransport component to Inactive\n  - Resume MSExchangeTransport\n- Wait up to 5 minutes for active UM calls to finish\n- Run StartDagServerMaintenance.psm1\n  - Set HighAvailability component to Inactive\n  - Suspend Cluster Node\n  - Move active databases: Move-ActiveMailboxDatabase -Server SERVER\n  - Move the Primary Active Manager role\n- Set ServerWideOffline component to Inactive\n\n#### Exiting Maintenance Mode\n\n- Set ServerWideOffline component to Active\n- Set UMCallrouter to Active\n- Run StopDagServerMaintenance.ps1\n  - Resume Cluster Node\n  - Set HubTransport component to Active\n  - Set DatabaseCopyAutoActivationPolicy to Unrestricted\n- Execute TransportMaintenance.psm1 -\u003e Stop-TransportMaintenance\n  - Set HubTransport component to Active\n  - Restart MSExchangeTransport service\n- Set Monitoring component to Active\n- Set RecoveryActionsEnabled component to Active\n- (OPTIONAL) Set each in an admin provided list of components to Active\n- (OPTIONAL) For each of the above components, set to Active for ANY requester\n  (this addresses the case where multiple requesters have set a component to Inactive,\n  like HealthApi and Maintenance)\n- (OPTIONAL) Move back all databases with an Activation Preference of 1\n\n### ExchMapiVirtualDirectory\n\n**ExchMapiVirtualDirectory** is used to configure properties on a MAPI\nVirtual Directory.\n\nWhere no description is listed, properties correspond directly to\n[Set-MapiVirtualDirectory](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access-servers/set-mapivirtualdirectory)\nparameters.\n\n- **Identity**: The Identity of the MAPI Virtual Directory.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether it is OK to recycle the app pool\n  after making changes.\n  Defaults to \\$false.\n- **DomainController**\n- **ExternalUrl**\n- **IISAuthenticationMethods**\n- **InternalUrl**\n\n### ExchOabVirtualDirectory\n\n**ExchOabVirtualDirectory** is used to configure properties on an Offline\nAddress Book Virtual Directory.\n\nWhere no description is listed, properties correspond directly to\n[Set-OabVirtualDirectory](https://docs.microsoft.com/en-us/powershell/module/exchange/email-addresses-and-address-books/set-oabvirtualdirectory)\nparameters.\n\n- **Identity**: The Identity of the OAB Virtual Directory.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **OABsToDistribute**: An array of names of Offline Address Books that this\n  virtual directory should be added as a distribution point for.\n  Should not be used for any OAB where 'Set-OfflineAddressBook -GlobalWebDistributionEnabled'\n  is being used.\n- **AllowServiceRestart**: Whether it is okay to recycle the app pool\n  after making changes.\n  Defaults to \\$false.\n- **BasicAuthentication**\n- **DomainController**\n- **ExtendedProtectionFlags**\n- **ExtendedProtectionSPNList**\n- **ExtendedProtectionTokenChecking**\n- **ExternalUrl**\n- **InternalUrl**\n- **OAuthAuthentication**\n- **PollInterval**\n- **RequireSSL**\n- **WindowsAuthentication**\n\n### ExchOutlookAnywhere\n\n**ExchOutlookAnywhere** is used to configure Outlook Anywhere\nproperties for an Exchange Server.\n\nWhere no description is listed, properties correspond directly to\n[Set-OutlookAnywhere](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access-servers/set-outlookanywhere)\nparameters.\n\n- **Identity**: The Identity of the Outlook Anywhere Virtual Directory.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether it is okay to recycle the app pool\n  after making changes.\n  Defaults to \\$false.\n- **DomainController**\n- **ExternalClientsRequireSsl**\n- **ExtendedProtectionFlags**\n- **ExtendedProtectionSPNList**\n- **ExtendedProtectionTokenChecking**\n- **ExternalClientAuthenticationMethod**\n- **ExternalHostname**\n- **IISAuthenticationMethods**\n- **InternalClientsRequireSsl**\n- **InternalHostname**\n- **SSLOffloading**\n\n### ExchOwaVirtualDirectory\n\n**ExchOwaVirtualDirectory** is used to configure properties on an Outlook\non the Web Virtual Directory.\n\nWhere no description is listed, properties correspond directly to\n[Set-OwaVirtualDirectory](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access-servers/set-owavirtualdirectory)\nparameters.\n\n- **Identity**: The Identity of the OWA Virtual Directory.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether it is OK to recycle the app pool\n  after making changes.\n  Defaults to \\$false.\n- **ActionForUnknownFileAndMIMETypes**\n- **AdfsAuthentication**\n- **BasicAuthentication**\n- **ChangePasswordEnabled**\n- **DigestAuthentication**\n- **DomainController**\n- **ExternalAuthenticationMethods**\n- **ExternalDownloadHostName**\n- **ExternalUrl**\n- **FormsAuthentication**\n- **GzipLevel**\n- **InternalDownloadHostName**\n- **InternalUrl**\n- **InstantMessagingEnabled**\n- **InstantMessagingCertificateThumbprint**\n- **InstantMessagingServerName**\n- **InstantMessagingType**\n- **LogonPagePublicPrivateSelectionEnabled**\n- **LogonPageLightSelectionEnabled**\n- **UNCAccessOnPublicComputersEnabled**\n- **UNCAccessOnPrivateComputersEnabled**\n- **WindowsAuthentication**\n- **WSSAccessOnPublicComputersEnabled**\n- **WSSAccessOnPrivateComputersEnabled**\n- **LogonFormat**\n- **DefaultDomain**\n- **SetPhotoEnabled**\n\n### ExchPopSettings\n\n**ExchPopSettings** configures POP settings using Set-PopSettings.\n\nMost properties correspond directly to\n[Set-PopSettings](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access/set-popsettings)\nparameters.\n\n- **Server**: Hostname of the POP server to configure.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether it is OK to restart the POP services\n  after making changes.\n  Defaults to \\$false.\n- **DomainController**: Optional Domain Controller to connect to.\n- **ExternalConnectionSettings**: Specifies the host name, port, and encryption\n  type that Exchange uses when POP clients connect to their email from the outside.\n- **LoginType**: The LoginType to be used for POP\n- **ProtocolLogEnabled**: The ProtocolLogEnabled parameter specifies whether to\n  enable protocol logging for POP.\n- **X509CertificateName**: Specifies the host name in the SSL certificate\n  from the Associated Subject field.\n\n### ExchPowerShellVirtualDirectory\n\n**ExchPowerShellVirtualDirectory** is used to configure properties on a\nPowerShell Virtual Directory.\n\nWhere no description is listed, properties correspond directly to\n[Set-PowerShellVirtualDirectory](https://docs.microsoft.com/en-us/powershell/module/exchange/client-access-servers/set-powershellvirtualdirectory)\nparameters.\n\n- **Identity**: The Identity of the PowerShell Virtual Directory.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether it is OK to recycle the app pool\n  after making changes.\n  Defaults to \\$false.\n- **BasicAuthentication**\n- **CertificateAuthentication**\n- **DomainController**\n- **ExternalUrl**\n- **InternalUrl**\n- **WindowsAuthentication**\n\n### ExchReceiveConnector\n\n**ExchReceiveConnector** is used to create, remove, or change properties on a\nReceive Connector.\n\nWhere no description is listed, properties correspond directly to\n[Set-ReceiveConnector](https://docs.microsoft.com/en-us/powershell/module/exchange/mail-flow/set-receiveconnector)\nparameters.\n\n- **Identity**: Identity of the Receive Connector.\n  Needs to be in the format 'SERVERNAME\\CONNECTORNAME' (no quotes).\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **Ensure**: Whether the Receive Connector should exist or not:{Present | Absent}\n- **ExtendedRightAllowEntries**: additional AD permissions, which should\n  be add to the connector.\n  Can have multiple entries. Example:\n  @{\"NT AUTHORITY\\ANONYMOUS LOGON\"=\"Ms-Exch-SMTP-Accept-Any-Recipient,ms-Exch-SMTP-Accept-XShadow\";\n  \"Domain Users\"=\"Ms-Exch-SMTP-Accept-Any-Recipient,ms-Exch-Bypass-Anti-Spam\"}\n- **ExtendedRightDenyEntries**: Similar as ExtendedRightAllowEntries, but to\n  make sure the defined permission is not set\n- **AdvertiseClientSettings**: Specifies whether the SMTP server name,port number,\n  and authentication settings for the Receive connector are displayed to users in\n  the options of Outlook on the web.\n- **AuthMechanism**: Specifies the advertised and accepted authentication\n  mechanisms for the Receive connector.\n- **AuthTarpitInterval**: Specifies the period of time to delay responses to\n  failed authentication attempts from remote servers.\n- **Banner**: Specifies a custom SMTP 220 banner that's displayed to remote\n  messaging servers.\n- **BareLinefeedRejectionEnabled**: Specifies whether this Receive connector\n  rejects messages that contain line feed\n- **BinaryMimeEnabled**: Specifies whether the BINARYMIME Extended SMTP extension\n  is enabled or disabled.\n- **Bindings**: Specifies the local IP address and TCP port number that's used\n  by the Receive connector.\n- **ChunkingEnabled**: Specifies whether the CHUNKING Extended SMTP extension\n  is enabled or disabled.\n- **Comment**: Specifies an optional comment.\n- **ConnectionInactivityTimeout**: Specifies the maximum amount of idle time\n  before a connection to the Receive connector is closed.\n- **ConnectionTimeout**: Specifies the maximum time that the connection to the\n  Receive connector can remain open\n- **DefaultDomain**: Specifies the default accepted domain to use for the\n  Exchange organization.\n- **DeliveryStatusNotificationEnabled**: Specifies whether the DSN\n- **DomainController**: Specifies the domain controller that's used by this\n  cmdlet to read data from or write data to Active Directory.\n- **DomainSecureEnabled**: Specifies whether to enable or disable mutual\n  Transport Layer Security\n- **EightBitMimeEnabled**: Specifies whether the 8BITMIME Extended SMTP extension\n  is enabled or disabled.\n- **EnableAuthGSSAPI**: enables or disables Kerberos when Integrated Windows\n  authentication is available on the Receive connector.\n- **Enabled**: Specifies whether to enable or disable the Receive connector.\n- **EnhancedStatusCodesEnabled**: Specifies whether the ENHANCEDSTATUSCODES\n  Extended SMTP extension is enabled or disabled.\n- **ExtendedRightAllowEntries**: Additional allow permissions.\n- **ExtendedRightDenyEntries**: Additional denz permissions.\n- **ExtendedProtectionPolicy**: Specifies how you want to use Extended Protection\n  for Authentication on the Receive connector.\n- **Fqdn**: Specifies the destination FQDN that's shown to connected messaging servers.\n- **LongAddressesEnabled**: Specifies whether the Receive connector accepts long\n  X.400 email addresses.\n- **MaxAcknowledgementDelay**: Specifies the period the transport server delays\n  acknowledgement when receiving messages from a host that doesn't support shadow redundancy.\n- **MaxHeaderSize**: Specifies the maximum size of the SMTP message header before\n  the Receive connector closes the connection.\n- **MaxHopCount**: Specifies the maximum number of hops that a message can take\n  before the message is rejected by the Receive connector.\n- **MaxInboundConnection**: Specifies the maximum number of inbound connections\n  that this Receive connector serves at the same time.\n- **MaxInboundConnectionPercentagePerSource**: Specifies the maximum number of\n  connections that this Receive connector serves at the same time from a single IP\n  address.\n- **MaxInboundConnectionPerSource**: Specifies the maximum number of connections\n  that a Receive connector serves at the same time from a single IP address\n- **MaxLocalHopCount**: Specifies the maximum number of local hops that a message\n  can take before the message is rejected by the Receive connector.\n- **MaxLogonFailures**: pecifies the number of logon failures that the Receive\n  connector retries before it closes the connection.\n- **MaxMessageSize**: Specifies the maximum size of a message that's allowed\n  through the Receive connector.\n- **MaxProtocolErrors**: Specifies the maximum number of SMTP protocol errors\n  that the Receive connector accepts before closing the connection.\n- **MaxRecipientsPerMessage**: Specifies the maximum number of recipients per\n  message that the Receive connector accepts before closing the connection.\n- **MessageRateLimit**: Specifies the maximum number of messages that can be\n  sent by a single client IP address per minute.\n- **MessageRateSource**: Specifies how the message submission rate is calculated.\n- **OrarEnabled**: enables or disables Originator Requested Alternate Recipient\n- **PermissionGroups**: Specifies the well\n- **PipeliningEnabled**: Specifies whether the PIPELINING Extended SMTP\n  extension is enabled or disabled.\n- **ProtocolLoggingLevel**: pecifies whether to enable or disable protocol logging.\n- **RemoteIPRanges**: Specifies the remote IP addresses that the Receive\n  connector accepts messages from.\n- **RequireEHLODomain**: Specifies whether the client must provide a domain name\n  in the EHLO handshake after the SMTP connection is established.\n- **RequireTLS**: Specifies whether to require TLS transmission for inbound messages.\n- **SizeEnabled**: Specifies how the SIZE Extended SMTP extension is used on the\n  Receive connector.\n- **SuppressXAnonymousTls**: Specifies whether the X\n- **TarpitInterval**: Specifies the period of time to delay an SMTP response to\n  a remote server that may be abusing the connection.\n- **TlsCertificateName**: Specifies the X.509 certificate to use for TLS encryption.\n- **TlsDomainCapabilities**: Specifies the capabilities that the Receive connector\n  makes available to specific hosts outside of the organization.\n- **TransportRole**: Specifies the transport service on the Mailbox server where\n  the Receive connector is created.\n- **Usage**: Specifies the default permission groups and authentication methods\n  that are assigned to the Receive connector.\n\n### ExchRemoteDomain\n\n**ExchRemoteDomain** adds a remote domain\n\n- **DomainName** Specifies the SMTP domain that you want to establish as a\n  remote domain.\n- **Credential** Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowedOOFType** The AllowedOOFType parameter specifies the type of automatic\n  replies or out-of-office (also known as OOF) notifications than can be sent to\n  recipients in the remote domain.\n- **AutoForwardEnabled** The AutoForwardEnabled parameter specifies whether to\n  allow messages that are auto-forwarded by client email programs in your organization.\n- **AutoReplyEnabled** The AutoReplyEnabled parameter specifies whether to allow\n  messages that are automatic replies from client email programs in your organization.\n- **ContentType** The ContentType parameter specifies the outbound message content\n  type and formatting.\n- **DeliveryReportEnabled** The DeliveryReportEnabled parameter specifies whether\n  to allow delivery reports from client software in your organization to recipients\n  in the remote domain.\n- **DisplaySenderName** The DisplaySenderName parameter specifies whether to\n  show the sender's Display Name in the From email address for messages sent to\n  recipients in the remote domain.\n- **IsInternal** The IsInternal parameter specifies whether the recipients in the\n  remote domain are considered to be internal recipients.\n- **MeetingForwardNotificationEnabled** The MeetingForwardNotificationEnabled\n  parameter specifies whether to enable meeting forward notifications for\n  recipients in the remote domain.\n- **Name** The Name parameter specifies a unique name for the remote domain object.\n- **NDREnabled** The NDREnabled parameter specifies whether to allow non-delivery\n  reports (also known NDRs or bounce messages) from your organization to recipients\n  in the remote domain.\n- **NonMimeCharacterSet** The NonMimeCharacterSet parameter specifies a character\n  set for plain text messages without defined character sets that are sent from\n  your organization to recipients in the remote domain.\n- **UseSimpleDisplayName** The UseSimpleDisplayName parameter specifies whether\n  the sender's simple display name is used for the From email address in\n  messages sent to recipients in the remote domain.\n\n### ExchSendConnector\n\n- **Name** Specifies a descriptive name for the connector.\n- **Credential** Credentials used to establish a remote PowerShell session to Exchange.\n- **Ensure** Whether the connector should be present or not.\n- **AddressSpaces** Specifies the domain names to which the Send connector routes\n  mail.\n- **AuthenticationCredential** Specifies the username and password that's\n  required to use the connector.\n- **Comment** Specifies an optional comment.\n- **ConnectionInactivityTimeout** Specifies the maximum time an idle connection\n  can remain open.\n- **ConnectorType** Specifies whether the connector is used in hybrid deployments\n  to send messages to Office 365.\n- **DNSRoutingEnabled** Specifies whether the Send connector uses Domain Name System\n- **DomainController** Specifies the domain controller that's used by this cmdlet\n  to read data from or write data to ActivDirectory.\n- **DomainSecureEnabled** Enables mutual Transport Layer Security\n- **Enabled** Specifies whether to enable the Send connector to process email messages.\n- **ErrorPolicies** Specifies how communication errors are treated.\n- **ExtendedRightAllowEntries** Additional allow permissions.\n- **ExtendedRightDenyEntries** Additional deny permissions.\n- **ForceHELO** Specifies whether HELO is sent instead of the default EHLO.\n- **FrontendProxyEnabled** Routes outbound messages through the CAS server\n- **Fqdn** Specifies the FQDN used as the source server.\n- **IgnoreSTARTTLS** Specifies whether to ignore the StartTLS option offered by\n  a remote sending server.\n- **IsCoexistenceConnector** Specifies whether this Send connector is used for\n  secure mail flow between your on\n- **IsScopedConnector** Specifies the availability of the connector to other\n  Mailbox servers with the Transport service.\n- **LinkedReceiveConnector** Specifies whether to force all messages received\n  by the specified Receive connector out through thi Send connector.\n- **MaxMessageSize** Specifies the maximum size of a message that can pass\n  through a connector.\n- **Port** Specifies the port number for smart host forwarding.\n- **ProtocolLoggingLevel** Specifies whether to enable protocol logging.\n- **RequireTLS** Specifies whether all messages sent through this connector must\n  be transmitted using TLS.\n- **SmartHostAuthMechanism** Specifies the smart host authentication mechanism\n  to use for authentication.\n- **SmartHosts** Specifies the smart hosts the Send connector uses to route mail.\n- **SmtpMaxMessagesPerConnection** Specifies the maximum number of messages the\n  server can send per connection.\n- **SourceIPAddress** Specifies the local IP address to use as the endpoint for\n  an SMTP connection.\n- **SourceTransportServers** Specifies the names of the Mailbox servers that can\n  use this Send connector.\n- **TlsAuthLevel** Specifies the TLS authentication level that is used for\n  outbound TLS connections.\n- **TlsDomain** Specifies the domain name that the Send connector uses to verify\n  the FQDN of the target certificate.\n- **UseExternalDNSServersEnabled** Specifies whether the connector uses the\n  DNS list specified by the ExternalDNSServerparameter of the Set\n- **TlsCertificateName** Specifies the X.509 certificate to use for TLS encryption.\n- **Usage** Specifies the default permissions and authentication methods\n  assigned to the Send connector.\n\n### ExchTransportService\n\n**ExchTransportService** configures the Transport service settings on Mailbox\nservers or Edge Transport servers using Set-TransportService.\n\nWhere no description is listed, properties correspond directly to\n[Set-TransportService](https://docs.microsoft.com/en-us/powershell/module/exchange/mail-flow/Set-TransportService)\nparameters.\n\n- **Identity**: Hostname of the server to configure.\n- **Credential**: Credentials used to establish a remote PowerShell session to Exchange.\n- **AllowServiceRestart**: Whether it is OK to restart service to make changes active\n- **ActiveUserStatisticsLogMaxAge**\n- **ActiveUserStatisticsLogMaxDirectorySize**\n- **ActiveUserStatisticsLogMaxFileSize**\n- **ActiveUserStatisticsLogPath**\n- **AgentLogEnabled**\n- **AgentLogMaxAge**\n- **AgentLogMaxDirectorySize**\n- **AgentLogMaxFileSize**\n- **AgentLogPath**\n- **AntispamAgentsEnabled**\n- **ConnectivityLogEnabled**\n- **ConnectivityLogMaxAge**\n- **ConnectivityLogMaxDirectorySize**\n- **ConnectivityLogMaxFileSize**\n- **ConnectivityLogPath**\n- **ContentConversionTracingEnabled**\n- **DelayNotificationTimeout**\n- **DnsLogEnabled**\n- **DnsLogMaxAge**\n- **DnsLogMaxDirectorySize**\n- **DnsLogMaxFileSize**\n- **DnsLogPath**\n- **ExternalDNSAdapterEnabled**\n- **ExternalDNSAdapterGuid**\n- **ExternalDNSProtocolOption**\n- **ExternalDNSServers**\n- **ExternalIPAddress**\n- **InternalDNSAdapterEnabled**\n- **InternalDNSAdapterGuid**\n- **InternalDNSProtocolOption**\n- **InternalDNSServers**\n- **IntraOrgConnectorProtocolLoggingLevel**\n- **IntraOrgConnectorSmtpMaxMessagesPerConnection**\n- **IrmLogEnabled**\n- **IrmLogMaxAge**\n- **IrmLogMaxDirectorySize**\n- **IrmLogMaxFileSize**\n- **IrmLogPath**\n- **MaxConcurrentMailboxDeliveries**\n- **MaxConcurrentMailboxSubmissions**\n- **MaxConnectionRatePerMinute**\n- **MaxOutboundConnections**\n- **MaxPerDomainOutboundConnections**\n- **MessageExpirationTimeout**\n- **MessageRetryInterval**\n- **MessageTrackingLogEnabled**\n- **MessageTrackingLogMaxAge**\n- **MessageTrackingLogMaxDirectorySize**\n- **MessageTrackingLogMaxFileSize**\n- **MessageTrackingLogPath**\n- **MessageTrackingLogSubjectLoggingEnabled**\n- **OutboundConnectionFailureRetryInterval**\n- **PickupDirectoryMaxHeaderSize**\n- **PickupDirectoryMaxMessagesPerMinute**\n- **PickupDirectoryMaxRecipientsPerMessage**\n- **PickupDirectoryPath**\n- **PipelineTracingEnabled**\n- **PipelineTracingPath**\n- **PipelineTracingSenderAddress**\n- **PoisonMessageDetectionEnabled**\n- **PoisonThreshold**\n- **QueueLogMaxAge**\n- **QueueLogMaxDirectorySize**\n- **QueueLogMaxFileSize**\n- **QueueLogPath**\n- **QueueMaxIdleTime**\n- **ReceiveProtocolLogMaxAge**\n- **ReceiveProtocolLogMaxDirectorySize**\n- **ReceiveProtocolLogMaxFileSize**\n- **ReceiveProtocolLogPath**\n- **RecipientValidationCacheEnabled**\n- **ReplayDirectoryPath**\n- **RootDropDirectoryPath**\n- **RoutingTableLogMaxAge**\n- **RoutingTableLogMaxDirectorySize**\n- **RoutingTableLogPath**\n- **SendProtocolLogMaxAge**\n- **SendProtocolLogMaxDirectorySize**\n- **SendProtocolLogMaxFileSize**\n- **SendProtocolLogPath**\n- **ServerStatisticsLogMaxAge**\n- **ServerStatisticsLogMaxDirectorySize**\n- **ServerStatisticsLogMaxFileSize**\n- **ServerStatisticsLogPath**\n- **TransientFailureRetryCount**\n- **TransientFailureRetryInterval**\n- **UseDowngradedExchangeServerAuth**\n\n#### Common Issues\n\nTo set some settings to NULL you need to set the value to '' instead of using \\$null.\nThe following settings are affected:\nExternalDNSServers\nExternalIPAddress\nInternalDNSServers\nPipelineTracingSenderAddress\n\n### ExchUMCallRouterSettings\n\n**ExchUMCallRouterSettings** configures the UM Call Router service using\nSet-UMCallRouterSettings. This resource is NOT supported with Exchange Server\n2019 or higher.\n\nWhere no description is listed, properties correspond directly to\n[Set-UMCallRouterSettings](https://docs.microsoft.com/en-us/powershell/module/exchange/unified-messaging/set-umcallroutersettings)\nparameters.\n\n- **Server**: Hostname of the UM server to configure.\n- **Credential**: Credentials used to establish a remote PowerShell session to\n  Exchange.\n- **DialPlans**: Specifies all dial plans that the Unified Messaging service\n  handles incoming calls for.\n- **IPAddressFamily**: Specifies whether the UM IP gateway will use IPv4, IPv6,\n  or both to communicate. {IPv4Only | IPv6Only | Any}\n- **IPAddressFamilyConfigurable**: Specifies whether you're able to set the\n  IPAddressFamily parameter to IPv6Only or Any.\n- **MaxCallsAllowed**: Specifies the maximum number of concurrent voice calls\n  that the Unified Messaging service allows.\n- **SipTcpListeningPort**: Specifies the TCP port that's used by the Microsoft\n  Exchange Unified Messaging Call Router service to receive incoming calls.\n- **SipTlsListeningPort**: Specifies the Transport Layer Security (TLS) port\n  that's used by the Microsoft Exchange Unified Messaging Call Router service to\n  receive incoming calls.\n- **UMStartupMode**: Specifies whether the Microsoft Exchange Unified Messaging\n  Call Router service starts up in TCP, TLS, or Du","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdsccommunity%2Fexchangedsc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdsccommunity%2Fexchangedsc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdsccommunity%2Fexchangedsc/lists"}