Assigning Skype for Business Meeting Broadcast Policies using members of a Group (O365 or AD Group)

Hi all

I just spent a bit of time mucking around assigning policies to a group of users to restrict access to Meeting Broadcast creation and so I thought I'd share.

We can control who has access to Meeting Broadcast bookings. You can check the Meeting Broadcast policies out here:

https://technet.microsoft.com/en-us/library/mt589285.aspx

And here is the link on assigning the policies to users:

https://technet.microsoft.com/en-us/library/mt589284.aspx

If you need to prevent SfBO users from creating Meeting Broadcasts then you assign those staff the Meeting Broadcast policy BroadcastMeetingPolicyDisabled.

 

Assigning Meeting Broadcast Policies to a group of people in a Office365 Group

Below I have some examples on setting Meeting Broadcast Policies to members of a Office365 group. Note, when running this script you will need to have a connection to both Azure Active Directory and Skype for Business Online. To connect to both systems run the following commands:

$cred = get-credential -credential yourid@yourtenant.onmicrosoft.com

$session = New-CsOnlineSession -Credential $cred

Import-PSSession $session

Connect-MsolService -Credential $cred

 

 

Then once connected you can look at the commands required to assign policies as per a group of users.

$strPolicyName="BroadcastMeetingPolicyAllEnabled"

#OR $strPolicyName="BroadcastMeetingPolicyDisabled"

$strGroupName="O365-GP-SfBOUsers"

 

#WARNING: I am using the –SearchString with Get-MsolGroup, so if you used "Users" as a search string you would get hits for groups called "Sydney Users" and "Perth Users"

#Update the group members and assign Meeting Broadcast Policy

Get-MsolGroupMember -GroupObjectId (Get-MsolGroup -SearchString $strGroupName).ObjectId  |  %{ $strWho = $_.DisplayName; $strSip=$_.EmailAddress; `

write-host "Processing $strWho - $strSip"; Get-CSOnlineUser $_.EmailAddress -ErrorAction SilentlyContinue | `

Grant-CsBroadcastMeetingPolicy -PolicyName $strPolicyName}

 

#Review settings of group members

Get-MsolGroupMember -GroupObjectId (Get-MsolGroup -SearchString $strGroupName).ObjectId  |  %{ $strWho = $_.DisplayName; $strSip=$_.EmailAddress; `

write-host "Processing $strWho - $strSip"; Get-CSOnlineUser $_.EmailAddress -ErrorAction SilentlyContinue | fl *name*,*meeting* }

 

I have an example down below.

 

Assigning Meeting Broadcast Policies to a group of people in an Active Directory Group

If you would like to enable (or disable) Meeting Broadcast for a group of users (Active Directory group in AD) then you can use the following command:

(Get-ADGroupMember "GP-SfBOnlineUsers") | %{ Get-CSOnlineUser $_.Samaccountname -ErrorAction SilentlyContinue | Grant-CsBroadcastMeetingPolicy -PolicyName BroadcastMeetingPolicyAllEnabled }

OR

(Get-ADGroupMember "GP-SfBOnlineUsers") | %{ Get-CSOnlineUser $_.Samaccountname -ErrorAction SilentlyContinue | Grant-CsBroadcastMeetingPolicy -PolicyName BroadcastMeetingPolicyDisabled }

You can check Policy settings with the following command:

(Get-ADGroupMember "GP-SfBOnlineUsers") | %{ Get-CSOnlineUser $_.samaccountname -ErrorAction SilentlyContinue | fl sipaddress, *meeting* }

 

So that is pretty much it. Don't forget, test, test and test before running in prod!

Happy Skype'ing

Steve