Take control of your Microsoft Teams environment part 3

In part two of this series we created a form where users could request a new team, and in this post I’ll show you how to create a SharePoint list to store information from the Teams requests.


Taking input using a request form is great, but we need to reuse this information later on in this process, and it just so happens that SharePoint lists are great for this purpose!

First navigate to SharePoint, I chose to use the site belonging to an org-wide team, but feel free to use your preferred site.

create list


Give your new list a new name and description, then hit Create.

Create list2

The new list will only have a Title column, so we’ll need to add a few more.

You might remember from the request form that we had three questions, one was team type, then team name, and finally team description. Let’s use Title for team name and add one for team type and team description.

team type column

For team type (above) we need to use Choice as column type, and enter a few options in the Choices box.

I also chose radio buttons, but a drop-down menu would also work. Team type is essential later on, so we make sure it’s required that this column contains information.


For description (below) we’ll keep the standard type, which is Single line of text.

description column.png

It’s entirely up to you whether or not team description should be mandatory, but keep in mind that it would give managers more insights into the purpose of the team upon approval.

List columns.png

We’re also going to need some info about the requester later on, so we’ll add a column using the type Person. This allows us to store the entire person object, including the manager attribute.

Finally we’ll add a column called Status, where we can store information about the overall status of the approval process.

This concludes the process of creating a list in SharePoint, and in part four we will use Microsoft Flow to help us store any form responses in this list.

Take control of your Microsoft Teams environment part 2

In part one of this series we covered how to control who can create teams, by limiting group creation. In this post we’ll create a form in Microsoft Forms, where end users can request a new team.Teams_and_Forms

While it’s sometimes important to control who’s able to create teams, in order to avoid teams sprawl, it’s equally important not to stand in the way of end users productivity.

So let’s jump right in and create a request form.


We do that by first choosing Forms in the Office waffle, or browse to forms.microsoft.com, and then hit the New Form button.

Let’s add a theme and give the request form a title.

Request form2

We’ll use the description to inform the user that the request will be sent to their manager for approval.

Next we’ll add a Choice called Team type, and mark it as required.

Request form3

Let’s also add a few options, which we’ll make use of at a later time.

Last but not least, let’s add a required text field for Team name, and a text field for Description

Request form4

…before me make our new form easily available in an Org-wide team.


That’s it for now, but we’ve got lots more to cover. In part three we’ll create a SharePoint list to store this input, before we use Microsoft Flow to tie the two together.

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.