About Magnus Sandtorv

Office Apps & Services MVP, Microsoft Teams Evangelist, Enterprise Mobility Professional, PowerShell automation enthusiast with my head in the ☁️ Blog at Teams.rocks

Take control of your Microsoft Teams environment part 1

So, you introduced Microsoft Teams in your organization without a plan? Or perhaps you’re still planning your rollout, and want to learn how to take control? Well, you’ve come to the right place.

In a few blog posts my goal is to help you take control of your Teams environment, and first up is limiting who’s allowed to create teams.


One of the first things we need to decide, before giving users access to Teams, is whether or not they should be allowed to create teams. Microsoft generally recommend that they should, which is why they are allowed using the default settings, and in many cases that makes perfect sense.

Let’s say you’re a small law firm, maybe ten lawyers and a couple of secretaries. You would most likely choose to allow anyone to provision new teams, not to get in the way of their productivity.


But what if you’re a municipality, with a mix of employees in healthcare, education etc., as well as thousands of young students. You would most likely want to get in front of that, right, to make sure that new teams are appropriate, and to maintain in control?

Well, we lock down the provisioning of new teams by limiting group creation.

Keep in mind that disabling group creation also affect other services relying on Groups, like Planner, StaffHub etc.

To limit group creation we first need to create a security group, and then add users who should still be allowed to create groups, and thereby teams.

All members of this security group must be licensed with Azure AD Premium or Azure AD Basic EDU. Microsoft currently does not enforce this, so it will work perfectly fine without assigning such licenses, but you need to acquire them to be properly licensed.


The next step is to connect to Azure AD using the Azure AD Preview PowerShell module, and run the following script.

$GroupName = "Allowedtocreategroups"
$AllowGroupCreation = "False"

Connect-AzureAD # Need to be using the Azure AD Preview module

$settingsObjectID = (Get-AzureADDirectorySetting | Where-object -Property Displayname -Value "Group.Unified" -EQ).id

    $template = Get-AzureADDirectorySettingTemplate | Where-object {$_.displayname -eq "group.unified"}
    $settingsCopy = $template.CreateDirectorySetting()
    New-AzureADDirectorySetting -DirectorySetting $settingsCopy
    $settingsObjectID = (Get-AzureADDirectorySetting | Where-object -Property Displayname -Value "Group.Unified" -EQ).id

$settingsCopy = Get-AzureADDirectorySetting -Id $settingsObjectID
$settingsCopy["EnableGroupCreation"] = $AllowGroupCreation

    $settingsCopy["GroupCreationAllowedGroupId"] = (Get-AzureADGroup -SearchString $GroupName).objectid

Set-AzureADDirectorySetting -Id $settingsObjectID -DirectorySetting $settingsCopy

(Get-AzureADDirectorySetting -Id $settingsObjectID).Values


We’ve now effectively disabled teams creation for all users that are not a member of the security group, causing the Create a team option to disappear from the Join or create a team page.


Some admin roles will still be able to create groups and teams, like the Global Admin, Teams Service Admin etc.

For more information about limiting group creation please have a look at the official documentation, which was also my source for this blog post.

Also, stay tuned for more on the topic of controlling your Teams environment, next up is how to create a request form with manager approval!

What’s new in Teams for firstline workers

Microsoft Teams has been getting a lot of love lately, not only in EDU (which has gotten a lot of my attention lately), so let me introduce you to some of the recent new features available across most Office 365 SKUs.

Firstline workers can be retail associates, flight crew members, field service workers or in healthcare, often only on mobile, in a busy environment but needing to stay in the know.


With the needs of firstline workers in mind, Microsoft recently announced a customizable mobile Teams experience, where the end user or IT can choose what apps should be easily available, by pinning them to the navigation bar.

In the above screenshot you can see that channel activities are also available from within Chat, you can choose to enable this new unified chat and channels experience in Settings – General – Show channels in chat list.

If you need to quickly share your location you can now do that from within a chat, just hit the ellipsis (…) followed by Location, a map pops up, zooms in on your location and you get the option to share.

Pro tip! A little mic icon in the lower right will allow you to record and send a voice message.

Another exiting feature is the addition of a module trey with easy access to things like the organization view and files, but also things like Expenses, which to me looks like an integrated line of business app. All of this builds on the idea of Teams as a platform, where you get quick access to your most important everyday tools, to avoid context switching and navigating through multiple platforms.

You can read more about these new features made for firstline workers here, as well as how you can integrate your workforce management systems with new Graph APIs for Shifts, so that your employees can view and manage their schedule right from within Teams…

…and Praise, which is a new tool inside Teams, to keep your colleagues engaged and motivated giving kudos and recognition for their hard work.

That’s it for now, make sure to follow my blog for the latest on Microsoft Teams, and if you have something to add or a topic you would like me to cover, please leave a comment below.








New year news in School Data Sync

Read on to learn about all the new features coming to School Data Sync, like Parent Contact Sync, new EDU Security Groups, updated Section Usage Reports and more…


What is School Data Sync?

For those of you who don’t know School Data Sync, it’s a free service in Office 365 for Education that read school roster data from the Student Information System (SIS) and use that data to provision and license users, create class teams with OneNote class notebooks and more. You can read more about SDS in my blog post on how to automate Teams for Education with School Data Sync.


Microsoft recently announced a number of features coming to SDS, some of which will allow for new functionality in other services like Microsoft Teams, and some to enhance the admin experience. Let me go through the features one by one.

Parent Contact Sync

Parent sync in SDS is HUGE! Not by itself, obviously, but because it’s the first step in a long-awaited direction. The lack of ways to interact with parents in Teams for EDU has in my opinion been the Achilles heel of the education offering. While you could tweak permissions to allow sharing of parent and guardian links in OneNote class notebooks within Teams, it’s a cumbersome process which require admin permissions.


For this reason alone, many education institutions have seen the need to invest in a learning management system. NowI’m not saying this will be the death of the LMS, innovative players like Skooler will keep adding value with their integrated solutions. But, for some schools, Microsoft Teams for Education will eventually be enough.


EDU Security Groups

EDU Security Groups used to be auto-provisioned in tenants using SDS while licensed with Intune for Education. These Azure AD security groups are however equally useful outside Intune, which is why this is great news!

These security groups are dynamic, meaning they will update as soon as something changes in your student information system. SDS will create groups for all teachers, all students, all teachers at school a, all students at school b etc.

In Intune these could be used in order to dynamically provision MDM policies, apps and more, similar to what I covered in my blog post on Microsoft 365 automation using SDS attributes, Intune & Graph.

Now we’re also able to use these groups for Group Based Licensing, Conditional Access and Scoped Search in Microsoft Teams. For those of you who don’t know Scoped Search, it’s a way to virtually separate users from eachother. Scoped Search use Exchange address book policies in order to hide users in one group from another, meaning you can separate students and teachers from different schools or even different grades, as well as separate students from other staff entirely.

Scoped Search (Address book policies) only provide a virtual separation of users. Users can still initiate communications with others by providing the complete user principal name (most often the email address).

Updated Section Usage Reports

Like the header says, section usage reports in SDS are getting an update. New reports will include synced class attributes, SharePoint usage, member count and more, to help you separate active and inactive class teams. Microsoft host a number of scripts to perform actions based on these reports, over at their O365-EDU-Tools GitHub repository.


And there’s more…

For admins the admin interface is beeing modernized to align with the experience found in the Office 365 Admin Center. There will be a People view in order to view students, teachers and parents, and  a Groups view for schools, classes and security groups synced by SDS.

The backend sync process itself just got improved performance, and in what’s more of a bugfix than a feature, error generation will be reduced to be more accurate. Previously an error on one sync element could produce 10-12 warnings, which was obviously confusing for admins.

That’s it for now, if you wish to stay updated on SDS make sure to also visit What’s new with School Data Sync.

Read only Class Materials in Teams for Education

Every year on BETT, Microsoft announce new prodcuts and/or features related to EDU. This year was no different, let me introduce you to Class Materials.


Microsoft Teams for Education is extremely popular among teachers, but the open architecture of Teams is far from that of learning management systems and other tools teachers are used to.

Consider sharing resources for an upcoming assignment, or a week plan with homework for the coming weeks, only to realize at a later time that a clever student has altered the content, removed all homework or worse…

Introducing Class Materials

Luckily that’s about to change with the introduction of Class Materials!

read only files go here.jpg

Class Materials is a special folder available within the files area of the class team, read-only for students while leaving full permissions for teachers. That’s right, anything the teacher place in that folder stays untouched.

class materials

Let’s create a new document in the Class Materials folder…

new assignment in class materials

…and open in SharePoint.

Class materials in SP.jpgYou can see on the left side there is a section called Class Materials, and on the right there is a Manage access area. Let’s investigate.

If you click Manage access the permission panel will open.


The owner (teacher) will always have full access while you can see that the members (yellow) only have view access. Also any guests (red) only have view access.

To be fair, this announcement isn’t huge, something similar could already be acomplished by manually tweaking SharePoint permissions. But it’s good to see the platform maturing, Microsoft listens to their customers and Class Materials will definitely make things easier for teachers.


Schedule Teams meetings on a mobile device

Lately we’ve covered how to spin up a quick meeting in a channel using Meet Now in Teams, how to schedule meetings in the web and desktop clients, as well as how to schedule a meeting using the Microsoft Teams Outlook add-in.

Today’s post will conclude the meeting scheduling tutorials, covering how to schedule meetings on your mobile device.


I use Teams all the time, on my desktop in the office, on my Surface Book 2 as well as on my iPad and iPhone. It’s great to be able to stay connected while on the go, and for a while now we’ve also been able to schedule meetings using Teams on iOS.

Let’s see how that works!


First you need to open the Teams app and choose Meetings to get a view of your upcoming schedule.

For any Teams meetings you will also see the litte Join.jpg button that will take you directly to the relevant meeting.



In the upper right corner there’s a New event button what will take you to the New event view. You should obviously add a title and add one or more participants.

Notice that Teams fetches the availability of participants in your own organization!

One limitation I found while testing, was that I couldn’t invite anyone external that I hadn’t already interacted with using Teams. Teams would suggest both existing external users, guests and others in my own organization, but it wouldn’t let me enter a random email address to invite someone new from outside my organization.


At the time of writing external participants that have been invited as guests appear free, even though there is no way for Teams to actually know that.

You could choose to host the meeting in a channel, which would allow all members of that team to join in. There are obviously also options to set the time and date, whether or not it’s a recurring event, the location and more.

Once you click Done in the upper right corner, the meeting is added to your calendar and a meeting invitation with a link to join the meeting is sent to any participants.


This wraps up the meeting scheduling mini tutorials, I hope you have enjoyed following along, and maybe also learned a thing or two. I plan to cover more Teams topics with mini tutorials like these, if you have a suggestion please leave it in the comments below.

Schedule Teams meetings in Outlook

Last time we went through how to schedule a Teams meeting in the desktop or web app, but since many still rely heavily on Outlook for email communication, calendar and tasks, let’s also have a look at how we can schedule a Teams meeting using the Microsoft Teams meeting add-in in Outlook.


The above icons are part of the beautiful new design, recently announced by Microsoft to Embrace a New World of Work.

Meetings belong in the calendar, so first of all let’s open the Outlook calendar ribbon.


You should see a section called Teems Meeting and a New Teams Meeting button.

The Teams Meeting add-in should automatically install for users who have Microsoft Teams and Office 2013 or later installed on their Windows PC.

When you click New Microsoft Teams Meeting you get almost the same options as you would with the ordinary new meeting button in Outlook, a few things are however different, like a Join Teams Meeting button in the top ribbon, Microsoft Teams Meeting specified as the location as well as a Join Microsoft Teams Meeting link within the body of the invitation.


Now you just need to hit Send, the invitation should land in both the attendees inbox and their Teams client, and you’re good to go!

Stay tuned for even more mini tutorials, next up is scheduling meetings on mobile.

Schedule a meeting in Microsoft Teams

Last time, in my post Get started with meetings in Microsoft Teams, I explained how you can spin up a quick meeting from an ongoing channel conversation. In this mini tutorial I will focus on a more traditional scenario, where the meeting is scheduled in advance.

calendar-icon.pngThere are multiple ways of scheduling Teams meetings, you could do it from within the meet now functionality covered in my last post, from the mobile apps, from the meetings app in the Microsoft Teams desktop and web apps, or using the Teams meeting add-in in Outlook.

Let’s explore meetings in the dektop and web app!


When you click the Meetings button in the left menu it opens the day view, where you will find any meetings or appointments scheduled in Teams or Outlook. You also have the option to switch to the agenda view in the upper right.


You can easily join a scheduled meeting by clicking Join. If you want to explore the content, who’s invited and more details, just mark the appropriate scheduled event.


To schedule a new meeting, click the Schedule a meeting button below the day or agenda view.


Depending on your configuration you will be able choose between a new live event (preview) or a new meeting.


You can obviously give the meeting a title, choose the time and date and add some details, you could choose to book a physical meeting room, there’s an option to select a channel to virtually host the meeting as well as a scheduling assistant that will compare the calendars of those invited to find a suitable time.

If you choose to host the meeting in a channel members of the team will be able to join.

Once you hit Schedule in the lower right corner the invitation is sent, and the meeting details will open.


In the lower left you will see the link to the meeting, and depending on your license maybe also a toll free number to call the meeting as well as a conference ID.

Prefer video? Check out Microsofts great 90 second video tutorial on scheduling meetings.

That’s all I have for now, stay tuned for more mini tutorials, next up is scheduling Teams meetings using the Teams meeting add-in in Outlook.