Set-EmailAddressPolicy
This cmdlet is available in on-premises Exchange and in the cloud-based service. Some parameters and settings may be exclusive to one environment or the other.
Use the Set-EmailAddressPolicy cmdlet to modify email address policies. In Exchange Online, email address policies are available only for Microsoft 365 Groups.
For information about the parameter sets in the Syntax section below, see Exchange cmdlet syntax.
Syntax
Set-EmailAddressPolicy
[-Identity] <EmailAddressPolicyIdParameter>
[-ConditionalCompany <MultiValuedProperty>]
[-ConditionalCustomAttribute1 <MultiValuedProperty>]
[-ConditionalCustomAttribute10 <MultiValuedProperty>]
[-ConditionalCustomAttribute11 <MultiValuedProperty>]
[-ConditionalCustomAttribute12 <MultiValuedProperty>]
[-ConditionalCustomAttribute13 <MultiValuedProperty>]
[-ConditionalCustomAttribute14 <MultiValuedProperty>]
[-ConditionalCustomAttribute15 <MultiValuedProperty>]
[-ConditionalCustomAttribute2 <MultiValuedProperty>]
[-ConditionalCustomAttribute3 <MultiValuedProperty>]
[-ConditionalCustomAttribute4 <MultiValuedProperty>]
[-ConditionalCustomAttribute5 <MultiValuedProperty>]
[-ConditionalCustomAttribute6 <MultiValuedProperty>]
[-ConditionalCustomAttribute7 <MultiValuedProperty>]
[-ConditionalCustomAttribute8 <MultiValuedProperty>]
[-ConditionalCustomAttribute9 <MultiValuedProperty>]
[-ConditionalDepartment <MultiValuedProperty>]
[-ConditionalStateOrProvince <MultiValuedProperty>]
[-Confirm]
[-DisabledEmailAddressTemplates <ProxyAddressTemplateCollection>]
[-DomainController <Fqdn>]
[-EnabledEmailAddressTemplates <ProxyAddressTemplateCollection>]
[-EnabledPrimarySMTPAddressTemplate <String>]
[-ForceUpgrade]
[-IncludedRecipients <WellKnownRecipientType>]
[-Name <String>]
[-Priority <EmailAddressPolicyPriority>]
[-RecipientContainer <OrganizationalUnitIdParameter>]
[-RecipientFilter <String>]
[-WhatIf]
[<CommonParameters>]
Description
After you use the Set-EmailAddressPolicy cmdlet to modify an email address policy in an on-premises Exchange organization, you need to use the Update-EmailAddressPolicy cmdlet to apply the updated policy to recipients.
The Conditional parameters that are used with the IncludedRecipients parameter are subject to the following limitations:
- The EQV operator is used for every property value, as in "Department equals Sales". Wildcards and partial matches aren't supported.
- The OR operator is always used for multiple values of the same property, as in "Department equals Sales OR Marketing".
- The AND operator is always used for multiple properties, as in "Department equals Sales AND Company equals Contoso".
To create flexible filters that use any available recipient property and that aren't subject to these limitations, you can use the RecipientFilter parameter to create a custom OPATH filter.
You can't use this cmdlet to replace a precanned filter with a custom OPATH filter, or vice-versa. You can only modify the existing filter.
You need to be assigned permissions before you can run this cmdlet. Although this topic lists all parameters for the cmdlet, you may not have access to some parameters if they're not included in the permissions assigned to you. To find the permissions required to run any cmdlet or parameter in your organization, see Find the permissions required to run any Exchange cmdlet.
Examples
Example 1
Set-EmailAddressPolicy -Identity "Southeast Executives" -ConditionalStateOrProvince @{Add="TX"}
In on-premises Exchange, this example modifies the existing email address policy named Southeast Executives by adding the State or province value TX (Texas) to the precanned recipient filter.
Example 2
Set-EmailAddressPolicy -Identity "Contoso Corp" -DisabledEmailAddressTemplates $null
In on-premises Exchange, this example clears the disabled email address templates from the email address policy named Contoso Corp.
Example 3
Set-EmailAddressPolicy -Identity "Office 365 Groups" -EnabledEmailAddressTemplates "SMTP:@contoso.com","smtp:@contoso.onmicrosoft.com","smtp:@contoso.microsoftonline.com"
In Exchange Online, this example modifies the existing email address policy named "Office 365 Groups" and sets the enabled email address templates to use "@contoso.com" as the primary SMTP address and "@contoso.onmicrosoft.com" and "@contoso.microsoftonline.com" as proxy addresses.
Parameters
-ConditionalCompany
This parameter is available only in on-premises Exchange.
The ConditionalCompany parameter specifies a precanned filter that's based on the value of the recipient's Company property.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute1
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute1 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute1 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute10
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute10 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute10 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute11
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute11 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute11 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute12
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute12 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute12 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute13
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute13 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute13 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute14
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute14 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute14 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute15
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute15 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute15 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute2
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute2 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute2 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute3
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute3 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute3 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute4
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute4 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute4 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute5
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute5 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute5 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute6
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute6 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute6 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute7
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute7 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute7 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute8
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute8 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute8 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalCustomAttribute9
This parameter is available only in on-premises Exchange.
The ConditionalCustomAttribute9 parameter specifies a precanned filter that's based on the value of the recipient's CustomAttribute9 property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalDepartment
This parameter is available only in on-premises Exchange.
The ConditionalDepartment parameter specifies a precanned filter that's based on the value of the recipient's Department property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-ConditionalStateOrProvince
This parameter is available only in on-premises Exchange.
The ConditionalStateOrProvince parameter specifies a precanned filter that's based on the value of the recipient's StateOrProvince property. You can specify multiple values separated by commas.
When you use multiple values for this parameter, the OR Boolean operator is applied. For more information about how Conditional parameters work, see the Detailed Description section of this topic.
To enter multiple values that overwrite any existing entries, use the following syntax: Value1,Value2,...ValueN
. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value","Value2",..."ValueN"
.
To add or remove one or more values without affecting any existing entries, use the following syntax: @{Add="Value1","Value2"...; Remove="Value3","Value4"...}
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-Confirm
The Confirm switch specifies whether to show or hide the confirmation prompt. How this switch affects the cmdlet depends on if the cmdlet requires confirmation before proceeding.
- Destructive cmdlets (for example, Remove-* cmdlets) have a built-in pause that forces you to acknowledge the command before proceeding. For these cmdlets, you can skip the confirmation prompt by using this exact syntax:
-Confirm:$false
. - Most other cmdlets (for example, New-* and Set-* cmdlets) don't have a built-in pause. For these cmdlets, specifying the Confirm switch without a value introduces a pause that forces you acknowledge the command before proceeding.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-DisabledEmailAddressTemplates
This parameter is available only in on-premises Exchange.
The DisabledEmailAddressTemplates parameter specifies the proxy email addresses templates that are included in an email address policy, but aren't used to configure the email addresses of recipients.
Valid syntax for this parameter is Type:AddressFormat
:
- Type: A valid email address type as described in the "Address types" section in Email address policies in Exchange Server. For example, smtp or X400. Note that you can't use SMTP to specify a disabled primary SMTP email address.
- AddressFormat: For SMTP email addresses, a domain or subdomain that's configured as accepted domain (authoritative or internal relay), and valid variables and ASCII text characters as described in the "Address formats" section in Email address policies in Exchange Server. For example: alias@contoso.com requires the value
%m@contoso.com
, and firstname.lastname@contoso.com requires the value%g.%s@contoso.com
.
You can specify multiple disabled email address templates separated by commas: "[Type1:]EmailAddress1","[Type2:]EmailAddress2",..."[TypeN:]EmailAddressN"
.
Typically, this property is only populated by values after a migration from a previous version of Exchange. To clear these values, use the value $null for this parameter.
Type: | ProxyAddressTemplateCollection |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-DomainController
This parameter is available only in on-premises Exchange.
The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.
Type: | Fqdn |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-EnabledEmailAddressTemplates
The EnabledEmailAddressTemplates parameter specifies the rules in the email address policy that are used to generate email addresses for recipients.
Valid syntax for this parameter is Type:AddressFormat
:
- Type: A valid email address type as described in "Address types" section in Email address policies in Exchange Server. For example, SMTP for the primary email address, and smtp for proxy addresses.
- AddressFormat: For SMTP email addresses, a domain or subdomain that's configured as accepted domain (authoritative or internal relay), and valid variables and ASCII text characters as described in the "Address formats" section in Email address policies in Exchange Server. For example: alias@contoso.com requires the value
%m@contoso.com
, and firstname.lastname@contoso.com requires the value%g.%s@contoso.com
.
This parameter requires at least one template with the Type value SMTP (to define the primary SMTP email address). After that, if you don't include a Type prefix for a template, the value smtp (an SMTP proxy address) is assumed.
You can specify multiple email address templates separated by commas: "SMTP:PrimarySMTPEmailAddress","[Type1:]EmailAddress1","[Type2:]EmailAddress2",..."[TypeN:]EmailAddressN"
.
You can't use this parameter with the EnabledPrimarySMTPAddressTemplate parameter.
In Exchange Online PowerShell, if you use this parameter with the IncludeUnifiedGroupRecipients, you can't use variables in the email address template.
Type: | ProxyAddressTemplateCollection |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-EnabledPrimarySMTPAddressTemplate
The EnabledPrimarySMTPAddressTemplate parameter specifies the rule in the email address policy that's used to generate the primary SMTP email addresses for recipients. You can use this parameter instead of the EnabledEmailAddressTemplates if the policy only applies the primary email address and no additional proxy addresses.
Valid syntax for this parameter is a domain or subdomain that's configured as an authoritative accepted domain, and valid variables and ASCII text characters as described in the "Address format" section in Email address policies in Exchange Server. For example: alias@contoso.com requires the value %m@contoso.com
, and firstname.lastname@contoso.com requires the value %g.%s@contoso.com
.
You can't use this parameter with the EnabledEmailAddressTemplates parameter.
In Exchange Online PowerShell, if you use this parameter with the IncludeUnifiedGroupRecipients, you can't use variables in the email address template.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-ForceUpgrade
The ForceUpgrade switch suppresses the confirmation message that appears if the object was created in a previous version of Exchange. You don't need to specify a value with this switch.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-Identity
The Identity parameter specifies the email address policy that you want to modify. You can use any value that uniquely identifies the policy. For example:
- Name
- Distinguished name (DN)
- GUID
Type: | EmailAddressPolicyIdParameter |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-IncludedRecipients
This parameter is available only in on-premises Exchange.
The IncludedRecipients parameter specifies a precanned filter that's based on the recipient type. Valid values are:
- AllRecipients: This value can be used only by itself.
- MailboxUsers
- MailContacts
- MailGroups
- MailUsers
- Resources: This value indicates room or equipment mailboxes.
You can specify multiple values separated by commas. When you use multiple values, the OR Boolean operator is applied.
Type: | WellKnownRecipientType |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-Name
The Name parameter specifies the unique name for the email address policy. The maximum length is 64 characters. If the value contains spaces, enclose the value in quotation marks (").
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-Priority
The Priority parameter specifies the order that the email address policies are evaluated. By default, every time that you add a new email address policy, the policy is assigned a priority of N+1, where N is the number of email address policies that you've created.
If you set this parameter to a value that's the same as another email address policy, the priority of the policy that you added first is incremented by 1.
Note: The first email address policy that identifies a recipient configures the recipient's email addresses. All other policies are ignored, even if the first policy is unapplied and can't configure the recipient's email addresses.
Type: | EmailAddressPolicyPriority |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
-RecipientContainer
This parameter is available only in on-premises Exchange.
The RecipientContainer parameter specifies a filter that's based on the recipient's location in Active Directory. Valid input for this parameter is an organizational unit (OU) or domain that's returned by the Get-OrganizationalUnit cmdlet. You can use any value that uniquely identifies the OU or domain. For example:
- Name
- Canonical name
- Distinguished name (DN)
- GUID
If you don't use this parameter, the default value is the OU where the object was created.
Type: | OrganizationalUnitIdParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-RecipientFilter
This parameter is available only in on-premises Exchange.
The RecipientFilter parameter specifies a custom OPATH filter that's based on the value of any available recipient property. You can use any available Windows PowerShell operator, and wildcards and partial matches are supported. The search criteria uses the syntax "Property -ComparisonOperator 'Value'"
.
- Enclose the whole OPATH filter in double quotation marks " ". If the filter contains system values (for example,
$true
,$false
, or$null
), use single quotation marks ' ' instead. Although this parameter is a string (not a system block), you can also use braces { }, but only if the filter doesn't contain variables. - Property is a filterable property. For filterable properties, see Filterable properties for the RecipientFilter parameter.
- ComparisonOperator is an OPATH comparison operator (for example
-eq
for equals and-like
for string comparison). For more information about comparison operators, see about_Comparison_Operators. - Value is the property value to filter on. Enclose text values and variables in single quotation marks (
'Value'
or'$Variable'
). If a variable value contains single quotation marks, you need to identify (escape) the single quotation marks to expand the variable correctly. For example, instead of'$User'
, use'$($User -Replace "'","''")'
. Don't enclose integers or system values in quotation marks (for example, use500
,$true
,$false
, or$null
instead). - Wildcards are valid only as the first or last character. For example,
'Sales*'
or'*Sales'
are allowed, but'Sa*les'
isn't allowed.
For detailed information about OPATH filters in Exchange, see Additional OPATH syntax information.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-WhatIf
The WhatIf switch simulates the actions of the command. You can use this switch to view the changes that would occur without actually applying those changes. You don't need to specify a value with this switch.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection |
Inputs
Input types
To see the input types that this cmdlet accepts, see Cmdlet Input and Output Types. If the Input Type field for a cmdlet is blank, the cmdlet doesn't accept input data.
Outputs
Output types
To see the return types, which are also known as output types, that this cmdlet accepts, see Cmdlet Input and Output Types. If the Output Type field is blank, the cmdlet doesn't return data.