Create a new Room Mailbox with Security Groups

Last Updated: 2018-07-06

Exchange Server 2013Exchange Server 2016Description

This script creates a new room mailbox and security two groups for full mailbox access and for send-as delegation. The security groups are created using a configurable naming convention. If required by your Active Directory team, you can add group prefixes or department abbreviations as well.

The script uses an XML configuration file to simplify changes for variables unique to your environment.

High-level steps executed by the script:

  1. Create a new room mailbox
  2. Create a new mail-enabled security group for full access delegation
  3. Assign a full access security group for full access to the room mailbox
  4. Create a new mail-enabled security group for send-as delegation
  5. Assign send-as permissions to a send-as security group
  6. Create a new mail-enabled security group for allowed users to book the new room mailbox
  7. Set calendar processing to AutoAccept, if required
  8. Set resource capacity, if required


XML settings file


The calendar-booking security group feature is currently not available. But will be available in an upcoming release.

The following example creates a room mailbox for a Conference Room with empty security groups.

.\New-RoomMailbox.ps1 -RoomMailboxName "MB - Conference Room" -RoomMailboxDisplayName "Board Conference Room" -RoomMailboxAlias "MB-ConferenceRoom"   -RoomMailboxSmtpAddress "" -DepartmentPrefix "C"

You can simplify the use of the script by using a parameterized helper script named Run-NewRoomMailbox.ps1.

The following Run-NewRoomMailbox.ps1 script simplifies the process of creating a team mailbox even more.

$roomMailboxName = 'MB-Conference Room'
$roomMailboxDisplayName = 'Board Conference Room'
$roomMailboxAlias = 'MB-ConferenceRoom'
$roomMailboxSmtpAddress = ''
$departmentPrefix = 'C'
$groupFullAccessMembers = @('JohnDoe','JaneDoe')  # Empty = @()
$groupSendAsMembers = @()
$groupCalendarBookingMembers = @()
$RoomCapacity = 0
$RoomList = 'AllRoomsHQ'
$Language = 'en-GB'

.\New-RoomMailbox.ps1 -RoomMailboxName $roomMailboxName -RoomMailboxDisplayName $roomMailboxDisplayName 
-RoomMailboxAlias $roomMailboxAlias 
-RoomMailboxSmtpAddress $roomMailboxSmtpAddress 
-DepartmentPrefix $departmentPrefix 
-GroupFullAccessMembers $groupFullAccessMembers 
-GroupSendAsMembers $groupSendAsMembers  
-RoomCapacity $RoomCapacity  
-RoomList $RoomList  -Language $Language

Version History

  • 1.0, Initial community release
  • 1.1, Some PowerShell hygiene, issue #2 closed
  • 1.2, CalenderBooking, Language added



Sie sehen gerade einen Platzhalterinhalt von Facebook. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.

Mehr Informationen
%d Bloggern gefällt das: