EXODynamicDistributionGroup¶
Parameters¶
| Parameter | Attribute | DataType | Description | Allowed Values |
|---|---|---|---|---|
| AcceptMessagesOnlyFrom | Write | StringArray[] | The AcceptMessagesOnlyFrom parameter specifies who is allowed to send messages to this recipient. | |
| AcceptMessagesOnlyFromDLMembers | Write | StringArray[] | The AcceptMessagesOnlyFromDLMembers parameter specifies who is allowed to send messages to this recipient. Messages from other senders are rejected. | |
| Alias | Write | String | The Alias parameter specifies the Exchange alias (also known as the mail nickname) for the recipient. This value identifies the recipient as a mail-enabled object, and shouldn't be confused with multiple email addresses for the same recipient (also known as proxy addresses). A recipient can have only one Alias value. The maximum length is 64 characters. | |
| BypassModerationFromSendersOrMembers | Write | StringArray[] | The BypassModerationFromSendersOrMembers parameter specifies who is allowed to send messages to this moderated recipient without approval from a moderator. Valid values for this parameter are individual senders and groups in your organization. Specifying a group means all members of the group are allowed to send messages to this recipient without approval from a moderator. | |
| ConditionalCompany | Write | String | 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. | |
| ConditionalCustomAttribute1 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute10 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute11 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute12 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute13 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute14 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute15 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute2 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute3 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute4 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute5 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute6 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute7 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute8 | Write | StringArray[] | 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. | |
| ConditionalCustomAttribute9 | Write | StringArray[] | 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. | |
| ConditionalDepartment | Write | StringArray[] | 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. | |
| ConditionalStateOrProvince | Write | StringArray[] | 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. | |
| CustomAttribute1 | Write | String | This parameter specifies a value for the CustomAttribute1 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute10 | Write | String | This parameter specifies a value for the CustomAttribute10 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute11 | Write | String | This parameter specifies a value for the CustomAttribute11 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute12 | Write | String | This parameter specifies a value for the CustomAttribute12 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute13 | Write | String | This parameter specifies a value for the CustomAttribute13 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute14 | Write | String | This parameter specifies a value for the CustomAttribute14 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute15 | Write | String | This parameter specifies a value for the CustomAttribute15 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute2 | Write | String | This parameter specifies a value for the CustomAttribute2 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute3 | Write | String | This parameter specifies a value for the CustomAttribute3 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute4 | Write | String | This parameter specifies a value for the CustomAttribute4 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute5 | Write | String | This parameter specifies a value for the CustomAttribute5 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute6 | Write | String | This parameter specifies a value for the CustomAttribute6 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute7 | Write | String | This parameter specifies a value for the CustomAttribute7 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute8 | Write | String | This parameter specifies a value for the CustomAttribute8 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| CustomAttribute9 | Write | String | This parameter specifies a value for the CustomAttribute9 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. The maximum length is 1024 characters. | |
| DisplayName | Write | String | The DisplayName parameter specifies the display name of the dynamic distribution group. The display name is visible in the Exchange admin center and in address lists. The maximum length is 256 characters. | |
| EmailAddresses | Write | StringArray[] | The EmailAddresses parameter specifies all email addresses (proxy addresses) for the recipient, including the primary SMTP address. | |
| ExtensionCustomAttribute1 | Write | StringArray[] | This parameter specifies a value for the ExtensionCustomAttribute1 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. You can specify up to 1300 values separated by commas. | |
| ExtensionCustomAttribute2 | Write | String | This parameter specifies a value for the ExtensionCustomAttribute2 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. You can specify up to 1300 values separated by commas. | |
| ExtensionCustomAttribute3 | Write | String | This parameter specifies a value for the ExtensionCustomAttribute3 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. You can specify up to 1300 values separated by commas. | |
| ExtensionCustomAttribute4 | Write | String | This parameter specifies a value for the ExtensionCustomAttribute4 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. You can specify up to 1300 values separated by commas. | |
| ExtensionCustomAttribute5 | Write | String | This parameter specifies a value for the ExtensionCustomAttribute5 property on the recipient. You can use this property to store custom information about the recipient, and to identify the recipient in filters. You can specify up to 1300 values separated by commas. | |
| GrantSendOnBehalfTo | Write | StringArray[] | The GrantSendOnBehalfTo parameter specifies who can send on behalf of this dynamic distribution group. Although messages send on behalf of the group clearly show the sender in the From field (<Sender> on behalf of <Group>), replies to these messages are delivered to the group, not the sender. | |
| HiddenFromAddressListsEnabled | Write | Boolean | The HiddenFromAddressListsEnabled parameter specifies whether this recipient is visible in address lists. Valid values are: $true: The recipient isn't visible in address lists. $false: The recipient is visible in address lists. This value is the default. | |
| Identity | Key | String | The Identity parameter specifies the dynamic distribution group that you want to modify. You can use any value that uniquely identifies the dynamic distribution group. | |
| IncludedRecipients | Write | StringArray[] | 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. | AllRecipients, MailboxUsers, MailboxContacts, MailGroups, MailUsers, Resources |
| MailTip | Write | String | The MailTip parameter specifies the custom MailTip text for this recipient. The MailTip is shown to senders when they start drafting an email message to this recipient. If the value contains spaces, enclose the value in quotation marks ("). | |
| MailTipTranslations | Write | StringArray[] | The MailTipTranslations parameter specifies additional languages for the custom MailTip text that's defined by the MailTip parameter. HTML tags are automatically added to the MailTip translation, additional HTML tags aren't supported, and the length of the MailTip translation can't exceed 175 displayed characters. | |
| ManagedBy | Write | String | The ManagedBy parameter specifies an owner for the group. A dynamic group can only have one owner. | |
| ModeratedBy | Write | StringArray[] | The ModeratedBy parameter specifies one or more moderators for this recipient. A moderator approves messages sent to the recipient before the messages are delivered. A moderator must be a mailbox, mail user, or mail contact in your organization. You can use any value that uniquely identifies the moderator. | |
| ModerationEnabled | Write | Boolean | The ModerationEnabled parameter specifies whether moderation is enabled for this recipient. | |
| Name | Write | String | The Name parameter specifies the unique name of the dynamic distribution group. The maximum length is 64 characters. | |
| Notes | Write | String | The Notes parameters specifies additional information about the object. | |
| PhoneticDisplayName | Write | String | The PhoneticDisplayName parameter specifies an alternate spelling of the user's name that's used for text to speech in Unified Messaging (UM) environments. Typically, you use this parameter when the pronunciation and spelling of the user's name don't match. The maximum length is 256 characters. | |
| PrimarySmtpAddress | Write | String | The PrimarySmtpAddress parameter specifies the primary return email address that's used for the recipient. | |
| RecipientContainer | Write | String | 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. | |
| RecipientFilter | Write | String | 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'". | |
| RejectMessagesFrom | Write | StringArray[] | The RejectMessagesFrom parameter specifies who isn't allowed to send messages to this recipient. Messages from these senders are rejected. | |
| RejectMessagesFromDLMembers | Write | StringArray[] | The RejectMessagesFromDLMembers parameter specifies who isn't allowed to send messages to this recipient. Messages from these senders are rejected. | |
| RejectMessagesFromSendersOrMembers | Write | StringArray[] | The RejectMessagesFromSendersOrMembers parameter specifies who isn't allowed to send messages to this recipient. Messages from these senders are rejected. | |
| ReportToManagerEnabled | Write | Boolean | The ReportToManagerEnabled parameter specifies whether delivery status notifications (also known as DSNs, non-delivery reports, NDRs, or bounce messages) are sent to the owners of the group (defined by the ManagedBy property). | |
| ReportToOriginatorEnabled | Write | Boolean | The ReportToOriginatorEnabled parameter specifies whether delivery status notifications (also known as DSNs, non-delivery reports, NDRs, or bounce messages) are sent to senders who send messages to this group. | |
| RequireSenderAuthenticationEnabled | Write | Boolean | The RequireSenderAuthenticationEnabled parameter specifies whether to accept messages only from authenticated (internal) senders. | |
| SendModerationNotifications | Write | String | The SendModerationNotifications parameter specifies when moderation notification messages are sent. Valid values are: Always: Notify all senders when their messages aren't approved. This value is the default. Internal: Notify senders in the organization when their messages aren't approved. Never: Don't notify anyone when a message isn't approved. | Always, Internal, Never |
| SendOofMessageToOriginatorEnabled | Write | Boolean | The SendOofMessageToOriginatorEnabled parameter specifies how to handle out of office (OOF) messages for members of the group. | |
| SimpleDisplayName | Write | String | The SimpleDisplayName parameter is used to display an alternative description of the object when only a limited set of characters is permitted. | |
| WindowsEmailAddress | Write | String | The WindowsEmailAddress parameter specifies the Windows email address for this recipient. This is a common Active Directory attribute that's present in all environments, including environments without Exchange. | |
| Ensure | Write | String | Present ensures the policy exists, absent ensures it is removed. | Present, Absent |
| Credential | Write | PSCredential | Credentials of the Exchange Global Admin | |
| ApplicationId | Write | String | Id of the Azure Active Directory application to authenticate with. | |
| TenantId | Write | String | Id of the Azure Active Directory tenant used for authentication. | |
| CertificateThumbprint | Write | String | Thumbprint of the Azure Active Directory application's authentication certificate to use for authentication. | |
| CertificatePassword | Write | PSCredential | Username can be made up to anything but password will be used for CertificatePassword | |
| CertificatePath | Write | String | Path to certificate used in service principal usually a PFX file. | |
| ManagedIdentity | Write | Boolean | Managed ID being used for authentication. | |
| AccessTokens | Write | StringArray[] | Access token used for authentication. |
Description¶
This resource configures Exchange Online dynamic distribution groups.
Please note: The exported RecipientFilter is a best-effort conversion. Please update it manually to the filter it should correspond to.
Permissions¶
Exchange¶
To authenticate with Microsoft Exchange, this resource requires the following permissions:
Roles¶
- Read
- Update
Role Groups¶
- Read
- None
- Update
- None
Examples¶
Example 1¶
This example is used to test new resources and showcase the usage of new resources being worked on. It is not meant to use as a production baseline.
Configuration Example
{
param(
[Parameter()]
[System.String]
$ApplicationId,
[Parameter()]
[System.String]
$TenantId,
[Parameter()]
[System.String]
$CertificateThumbprint
)
Import-DscResource -ModuleName Microsoft365DSC
node localhost
{
EXODynamicDistributionGroup "EXODynamicDistributionGroup-EXODynamicDistributionGroup_1"
{
AcceptMessagesOnlyFrom = @();
AcceptMessagesOnlyFromDLMembers = @();
Alias = "dynamicdistributiongroup_1";
ApplicationId = $ConfigurationData.NonNodeData.ApplicationId;
BypassModerationFromSendersOrMembers = @();
CertificateThumbprint = $ConfigurationData.NonNodeData.CertificateThumbprint;
DisplayName = "EXODynamicDistributionGroup_1";
EmailAddresses = @("SMTP:dynamicdistributiongroup_1@contoso.onmicrosoft.com");
Ensure = "Present";
ExtensionCustomAttribute1 = @();
ExtensionCustomAttribute2 = @();
ExtensionCustomAttribute3 = @();
ExtensionCustomAttribute4 = @();
ExtensionCustomAttribute5 = @();
GrantSendOnBehalfTo = @();
HiddenFromAddressListsEnabled = $True; # Updated property
Identity = "EXODynamicDistributionGroup_1";
MailTipTranslations = @();
ManagedBy = "admin@contoso.onmicrosoft.com";
ModeratedBy = @("admin2@contoso.onmicrosoft.com");
ModerationEnabled = $True;
Name = "EXODynamicDistributionGroup_1";
PrimarySmtpAddress = "dynamicdistributiongroup_1@contoso.onmicrosoft.com";
RecipientContainer = "contoso.onmicrosoft.com";
RecipientFilter = "((Title -eq 'Architect') -or (Title -eq 'Title'))";
RejectMessagesFrom = @();
RejectMessagesFromDLMembers = @();
ReportToManagerEnabled = $False;
ReportToOriginatorEnabled = $True;
RequireSenderAuthenticationEnabled = $True;
SendModerationNotifications = "Always";
SendOofMessageToOriginatorEnabled = $False;
SimpleDisplayName = "";
TenantId = $OrganizationName;
WindowsEmailAddress = "dynamicdistributiongroup_1@contoso.onmicrosoft.com";
}
}
}
Example 2¶
This example is used to test new resources and showcase the usage of new resources being worked on. It is not meant to use as a production baseline.
Configuration Example
{
param(
[Parameter()]
[System.String]
$ApplicationId,
[Parameter()]
[System.String]
$TenantId,
[Parameter()]
[System.String]
$CertificateThumbprint
)
Import-DscResource -ModuleName Microsoft365DSC
node localhost
{
EXODynamicDistributionGroup "EXODynamicDistributionGroup-EXODynamicDistributionGroup_1"
{
ApplicationId = $ConfigurationData.NonNodeData.ApplicationId;
CertificateThumbprint = $ConfigurationData.NonNodeData.CertificateThumbprint;
DisplayName = "EXODynamicDistributionGroup_1";
Ensure = "Absent";
Identity = "EXODynamicDistributionGroup_1";
Name = "EXODynamicDistributionGroup_1";
TenantId = $OrganizationName;
}
}
}