If there anything to explain as how one can
get the restricted distribution groups with easily readable property
containing a string of users, below would be the script for you. Try :)
Get-DistributionGroup
-ResultSize Unlimited | where{$_.AcceptMessagesOnlyFromSendersOrMembers
-ne $null} | select
Name,@{Name="AcceptMessagesOnlyFromSendersOrMembers";Expression={[string]::join(";",($_.AcceptMessagesOnlyFromSendersOrMembers|
foreach {$_.name })
)}},@{Name="AcceptMessagesOnlyFrom";Expression={[string]::join(";",($_.AcceptMessagesOnlyFrom|
foreach {$_.name })
)}},@{Name="AcceptMessagesOnlyFromDLMembers";Expression={[string]::join(";",($_.AcceptMessagesOnlyFromDLMembers|
foreach {$_.name })
)}},DisplayName,SamAccountName,PrimarySmtpAddress,OrganizationalUnit,@{n="EmailAddresses";e={$_.EmailAddresses}},@{Name="ManagedBy";Expression={[string]::join(";",($_.ManagedBy
| foreach {$_.name }) )}},GroupType | Export-Csv
C:\RestrictedDLsReport.csv -NoTypeInformation
:)
Saturday, July 4, 2015
Monday, February 23, 2015
Add / Remove user in BookInPolicy / ResourceDelegate - Exchange 2013
Add / Remove user in BookInPolicy / ResourceDelegate - Exchange 2013 powershell
When we create a function of ResourceDelegate, below will
be the effect:
#user gets added to calendar folder with access
permissions as {Editor}
#user gets added to ResourceDelegates and not in
BookInPolicy.
To add Calendar Resource Delegate we can use below
function which creates a cmdlet ‘Add-CalendarResourceDelegate’
in powershell:
function
Add-CalendarResourceDelegate {
Param($RoomName
, $newDelegate
)
$resourceDelegates = (Get-CalendarProcessing -Identity $RoomName).ResourceDelegates
$resourceDelegates += $newDelegate
Set-CalendarProcessing -Identity $RoomName -ResourceDelegates $resourceDelegates
}
Add-CalendarResourceDelegate -Identity $Roomname "MeetingRoom@Test.com"
-newDelegate UserID9
To Remove All Users from ResourceDelegate:
Set-CalendarProcessing -Identity "MeetingRoom@Test.com"
-ResourceDelegates $null
===========================================================
When we use function of Bookinpolicy below will be the
effect:
#user gets added to bookinpolicy and current users will
be retained.#user gets added to calendar folder with access permissions as {LimitedDetails}
To add user in Calendar BookIn Policy we can use below
function which creates a ‘Add-CalendarBookInPolicy’ cmdlet in powershell:
function
Add-CalendarBookInPolicy {
Param($roomName
, $newUser
)
$bookInPolicy = (Get-CalendarProcessing -Identity $roomName).BookInPolicy
$bookInPolicy += $newUser
Set-CalendarProcessing -Identity $roomName -BookInPolicy $bookInPolicy
}
CMD syntax:
Add-CalendarBookInPolicy -Identity $Roomname "MeetingRoom@Test.com"
-newUser UserID
To Remove All Users from BookinPolicy:
Set-CalendarProcessing -Identity "MeetingRoom@Test.com"
-BookInPolicy $NulTo Remove Single User from ResourceDelegate:
function Remove-CalendarResourceDelegate {
Param(
$roomName
,
$delegateToRemove
)
$resourceDelegates
= (Get-CalendarProcessing -Identity $roomName).ResourceDelegates
$delegateToRemoveIdentity
= (Get-Mailbox $delegateToRemove).Identity
$resourceDelegates.Remove($delegateToRemoveIdentity)
Set-CalendarProcessing
-Identity $roomName -ResourceDelegates $resourceDelegates
}
#CMD syntax:
Remove-CalendarResourceDelegate -roomName
“MeetingRooms@Test.com” -delegateToRemove User1
Note: Custom functions/cmdlet are only available
until the current session is active. Next time when you start EMS, again we
have to create function/cmdlet. To make it persistent need to write some other
codes.
Subscribe to:
Posts (Atom)