In this blog post I highlight the integration of Azure Cloud Shell for Teams within the Teams Admin Center and how it looks like. Cloud Shell for Teams in the Teams Admin Center became generally available starting in October 2021.
What’s Azure Cloud Shell for Microsoft Teams?
Azure Cloud Shell is a shell which you can use via browser. Now the Cloud Shell for Teams running within the Teams Admin Center is nothing else then the Teams Shell running online in your browser. You don’t have to download any Teams Module, check if you are allowed to run scripts locally on your machine.
Hereinafter, I’ll call Azure Cloud Shell for Teams just Teams Cloud Shell or only Cloud Shell.
Requirements – Teams Cloud Shell
To start you need to have a Azure subscription for the directory wherein you have your Microsoft 365 services hosted.
Overview – Teams Cloud Shell
You can start to use and configure Teams Cloud Shell if it looks like that in your Teams Admin Center:
What you see is the first time splash screen to start with.
In case you read “No valid subscriptions found” you do not have a Azure subscription or no permissions to use it.
As soon as you have a valid Azure subscription it looks like this and asking you to create a storage because an Azure file share is required. If you click “Create storage” you have to wait some time.
After the creation completed you get the Teams Cloud Shell opened.
Let’s see what we can do!?
Checking module availability does not show any Teams module. Anyway, let’s try to get all online users with Get-CsOnlineuser…
Haha, good one: I’m in the TAC, authenticated and authorized as Teams Admin but the Teams Cloud Shell wants me to run “Connect-MicrosoftTeams” as I would do on any other “remote” system, e.g. my notebook. Alright, let’s do what we have to. But let’s check for the Teams module, just because I’m curious.
It loaded the Teams Module 3.0.0 just by putting in a Teams cmdlet. That’s good and meets my expectation. … let’s connect to Teams.
This seems to work, at a first glance but notifying me that interactive authentication is not supported. Now testing does not get us anywhere…
Let’s run “Disconnect-MicrosoftTeams”, try to re-connect with parameters but which ones?
I tried it Connect-MicrosoftTeams -UseDeviceAuthentication.
Pretty thing here: You can click on the link for device login. That’s really nice. On the page you have to enter the code and sign in plus confirm that you want to use MS Teams Powershell Cmdlets from a device located where your Azure/M365 tenant is running. In my case it was Azure West Europe, Netherlands.
There we go. Now you can do your work without taking care of the Teams Module version or else you might have to care about on your local machine. You might also want to checkout the available buttons of the Cloud Shell because it allows you to up-/download files (scripts) or to open an (script/text) editor to also save you work online on the Azure file share which you created previously by click “create storage”.
Conclusion, opinion and summary
Setting up Teams Cloud Shell is easy if you have everything like Azure subscription and required permissions on Azure and Teams.
If you have to work a with Teams Shell on a daily basis for simple tasks it can be helpful. Especially for support and minor tasks.
Although I could run scripts (not tested) there I would not do it, currently, but that’s just my preference right now, which might change over time. To me, using Teams Cloud Shell comes in handy to quickly check or configure something, if available. I probably will use it in certain cases and not all the time depending on the environment and the task.