Forum Discussion
Dynamic DL Filter on Address List Membership
I am trying to create a new dynamic DL in exchange online that will include on-prem and online users. I know to do that the recipienttype "mailuser" has to be included. The issue with that is all mailboxes on-prem are mail users in O365 including rooms and shared mailboxes. I'd like to exclude these as much as possible. I know that I can include "AddressListMembership" in the recipient filter, but I am struggling with that. I'd like to exclude any user that is included in the address list "\All Rooms". If I run the command "Get-MailUser -ResultSize Unlimited | ? {$_.AddressListMembership -match "All Rooms"}", I only get rooms back that are on-prem. Handy - that's what I was going for. But if I try to create a DDL that includes just those same mailboxes (-RecipientFilter {(RecipientTypeDetails -eq "MailUser") -and (AddressListMembership -like "\All Rooms*")}) I don't get the same thing. Since AddressListMembership is an array and not a string, the -like comparison isn't working. If I can create a DDL with just the rooms, I should be able to reverse that and create a DDL that excludes the rooms. This isn't an issue if the rooms are in O365 as I can limit that using RecipientTypeDetails -eq "UserMailbox" and on-prem with RemoteUserMailbox. It's the issue with O365 having everything as a mail user as the recipient type and recipient type details vs. on-prem breaking that out to what type of remote mailbox it is. Any help would be appreciated.
4 Replies
I guess you missed the part where the AddressListMembership only works against the DistinguishedName attribute. Try this:
(Get-AddressList "\All Rooms").DistinguishedName
Get-Recipient -RecipientPreviewFilter {AddressListMembership -eq 'CN=All Rooms,CN=All Address Lists,CN=Address Lists Container,CN=Configuration,CN=tenant.onmicrosoft.com,CN=ConfigurationUnits,DC=EURPR03A001,DC=prod,DC=outlook,DC=com'}
- Raechel MoermondCopper Contributor
THANK YOU!
You're welcome :)
I take it it works for your scenario? I only bothered to check it against Get-Recipient.