SlideShare a Scribd company logo
06.04.2019
#
2019
#
Microsoft Teams
Architecture Deep Dive
Maarten Eekels - @maarteneekels
06.04.2019
#
Sponsors and Partners
06.04.2019
#
About me
Contact
@maarteneekels
meekels@portiva.nl
www.eekels.net
06.04.2019
#
Teams logical architecture
Team
Office 365
Groups
Chat
Channel
SharePoint
Reply ChainMessage
Images, Emojis,
Stickers, Giphy,
Recordings
OneDrive for
Business
Tabs
Folder
Tabs
Activity FeedMeetings
Calling
Apps
Apps
Contacts
Teams
Chats
Voice
Voice mail
06.04.2019
#
Where is everything stored?
Image
Files
Voicemail
Message
Recording
Calendar
meeting
Contacts
Media service on Azure (using Blob storage)
Team files  SharePoint
Chat files  OneDrive for Business
Individual mailbox in Exchange
Chat service table storage (moving to Cosmos DB)
Media service on Azure (using Blob storage) (<24
hours)
Individual mailbox in Exchange
Exchange
Ingested to Exchange to enable compliance
Ingested to Exchange to enable compliance
Encoded to Microsoft Stream
Telemetry Microsoft Data warehouse (No customer content)
06.04.2019
#
Teams high level architecture
Microsoft Teams
Intelligent Communications
Microsoft 365 Core services
Most recent files
Telemetry
Files
Files
Web
Companions
Notes
Calendar
AAD
MessagingSettings and
O365 access
OneNote
OneDrivefor
Business
WAC
Other
Workloads
Connectors
Audio / video
Search
Notification
service
SMTP
SharePoint
Publish /
Subscribe
Push
Notifications
Experimentation
MRU
Calling /
Meeting
PSTN
Desktop
iOS
App
Android
AppElectron
Web
Chat &
Presence
services
Exchange
Information
Protection
Graph
Webhook
Stream
Recording
Bots
Graph API
Email service
Policy
Teams
services
06.04.2019
#
Outside the compliancy perimeter
User Browser,
Desktop ,Mobile
compliance boundary
Microsoft
Teams
Guest user
Anonymous join to a
meeting
Federation
communication
Email a channel
Connectors
Apps/Bots
Tabs
Calling Plan (PSTN)
Push Notifications
(Mobile)
Other Cloud storage
(3rd party)
Graph API
Giphy
2-way communication Inbound data Outbound data
Data posted to a channel
Data posted to a channel
Query to Giphy
Push notifications to Apple or Google to
notify mobile client
Optional Box, Dropbox, Google drive, Citrix
Fileshare
Any third-party tab is hosted outside the
compliance boundary
Any third-party App/bot or line of business app
is hosted outside the compliance boundary
Graph APIs can be exposed to line of
business apps or 3rd party apps
Enables inbound/outbound calling outside
the organization
Standard Teams
user
Guest added
via AAD B2B
Anonymous user
joining a meeting
Communication between
multiple tenants
URL Preview
Get a preview of a URL that is posted to a
message
06.04.2019
#
Teams client
Browsers: Edge, IE11, latest Chrome, latest Firefox, and now Safari too | Desktop: Windows 10, 8.1, 7(SP1), Mac OS X 10.10+
IOS Android
Swift Java
Angular  React
jQuery, lodash etc.. (200+ Open Source Components)
TypeScript, Node, SASS
HTML5/CSS
C++ Objective C
Windows MacWeb AndroidiPhone/iPad
Desktop Mobile
Electron
React Native
06.04.2019
#
Memberships and Roles
Team Owner Team Member Team Guest
Create team  - -
Leave team   
Edit team
name/description
 - -
Delete team  - -
Add channel  * *
Edit channel
name/description
 * *
Delete channel  * *
Add members  - -
Add tabs  * -
Add connectors  * -
Add bots  * -
* Can be restricted
through Team
Settings by the owner
06.04.2019
#
Teams Admin Roles
• Teams Service Administrator: The overall Teams workload admin,
who can also manage and create O365 Groups.
• Teams Communication Administrator: This role can manage
meetings and calling functionality in Microsoft Teams.
• Teams Communications Support Engineering: Users who are
assigned this role have access to advanced call analytics tools.
• Teams Communications Support Specialist: This role has access to
basic call analytics tools.
06.04.2019
#
Teams Settings on Tenant Level
06.04.2019
#
Settings on Team Level
06.04.2019
#
Manage Teams with PowerShell
Install-Module -Name MicrosoftTeams
Get-Team
$groupId = (Get-AzureADGroup -SearchString “<group name>").objectId
Get-TeamFunSettings -GroupId $groupId
Get-TeamMemberSettings -GroupId $groupId
Get-TeamGuestSettings -GroupId $groupId
06.04.2019
#
Allow only specific people to create Teams
Azure Active Directory versie 2 PowerShell module required
Connect-AzureAD
Get-AzureADDirectorySetting
$Policy = Get-AzureADDirectorySettingTemplate –Id 62375ab9-6b52-
47ed-826b-58e47e0e304b
$Setting = $Policy.CreateDirectorySetting()
$Setting[“EnableGroupCreation”] = “false”
$Setting[“GroupCreationAllowedGroupId”] = “your group ID”
New-AzureADDirectorySetting -DirectorySetting $Setting
https://docs.microsoft.com/en-
us/powershell/azure/overview?view=azureadps-2.0
06.04.2019
#
External guest access
• Default setting: Off for tenants / On for individual Teams
• Disabling or enabling external guest user access for individual
Teams is only possible through PowerShell
06.04.2019
#
External sharing per Team
Disabling or enabling external guest user access is only possible through
PowerShell
$template = Get-AzureADDirectorySettingTemplate | ? {$_.displayname -eq
"group.unified.guest"}
$settings = $template.CreateDirectorySetting()
$settings["AllowToAddGuests"]=$False
$groupID = (Get-AzureADGroup -SearchString “<your group name").ObjectId
Get-AzureADObjectSetting -TargetObjectId $groupID -TargetType Groups | fl
Values
New-AzureADObjectSetting -TargetObjectId $groupID -TargetType Groups
-DirectorySetting $settings
Get-AzureADObjectSetting -TargetObjectId $groupId -TargetType Groups | Set-
AzureADObjectSetting -TargetObjectId $groupId -TargetType Groups -
DirectorySetting $settings
06.04.2019
#
06.04.2019
#
DEMO
06.04.2019
#
Group expiration
06.04.2019
#
Naming conventions
Get-AzureADDirectorySetting
$directorySetting = Get-AzureADDirectorySetting -Id 92efeacc-
89c6-4c16-b1cf-107aaf87f7dc
$directorySetting.Values
$directorySetting["PrefixSuffixNamingRequirement"] =
"Grp_[Department]_[GroupName]"
$directorySetting["CustomBlockedWordsList"]="Payroll,CEO,HR"
Set-AzureADDirectorySetting -Id (Get-AzureADDirectorySetting
| where -Property DisplayName -Value "Group.Unified" -EQ).id
-DirectorySetting $directorySetting
06.04.2019
#
Retention policies
06.04.2019
#
Archiving Teams
06.04.2019
#
06.04.2019
#
DEMO
06.04.2019
#
06.04.2019
#
THANK YOU
@maarteneekels

More Related Content

What's hot (20)

PPTX
Build Microsoft Teams Apps with Teams App Studio
Suhail Jamaldeen
 
PPTX
SharePoint vs Microsoft Teams vs Groups (updated 28 July 2018)
Nikkia Carter
 
DOCX
Office 365 Q & A about Microsoft Teams Access,OneDrive, O365 Groups, Shared C...
Learning SharePoint
 
PPTX
SPSMilano - Microsoft Teams
Thorbjørn Værp
 
PPTX
Introduction to Microsoft Teams
Greg McMurray
 
PPTX
Microsoft Teams community call_November 2018
Microsoft 365 Developer
 
PDF
Introduction to Microsoft Teams
Robert Crane
 
PPTX
Microsoft Teams
chinmayhendre
 
PPTX
Office Delve for Office 365 Administrators
Steve Stewart
 
PDF
Getting to Know Microsoft Teams
HervieAbing
 
PPTX
Understanding Office 365 Groups: Ask The Experts
Dux Raymond Sy
 
PPTX
Microsoft Teams Overview
Sara Barbosa
 
PPTX
Microsoft Teams Governance
NarasimaPerumal Chandramohan
 
PPTX
Webinar: Jumpstart to Microsoft Teams
WithumSmith+Brown, formerly Portal Solutions
 
PPTX
Microsoft Teams
Jigger Perez
 
PPTX
Onedrive for Business Implementation and Rollout
Learning SharePoint
 
PDF
Microsoft Teams A New Way To Manage Projects, Connect, and Collaborate With...
Haniel Croitoru
 
PPTX
What is Microsoft Teams?
Deepika Gandhi
 
PPTX
European Collaboration Summit 2019 - Microsoft Teams Architecture Deep Dive
Maarten Eekels
 
PDF
Take full advantage of Microsoft Teams with SharePoint, OneNote and more!
Serge Tremblay
 
Build Microsoft Teams Apps with Teams App Studio
Suhail Jamaldeen
 
SharePoint vs Microsoft Teams vs Groups (updated 28 July 2018)
Nikkia Carter
 
Office 365 Q & A about Microsoft Teams Access,OneDrive, O365 Groups, Shared C...
Learning SharePoint
 
SPSMilano - Microsoft Teams
Thorbjørn Værp
 
Introduction to Microsoft Teams
Greg McMurray
 
Microsoft Teams community call_November 2018
Microsoft 365 Developer
 
Introduction to Microsoft Teams
Robert Crane
 
Microsoft Teams
chinmayhendre
 
Office Delve for Office 365 Administrators
Steve Stewart
 
Getting to Know Microsoft Teams
HervieAbing
 
Understanding Office 365 Groups: Ask The Experts
Dux Raymond Sy
 
Microsoft Teams Overview
Sara Barbosa
 
Microsoft Teams Governance
NarasimaPerumal Chandramohan
 
Webinar: Jumpstart to Microsoft Teams
WithumSmith+Brown, formerly Portal Solutions
 
Microsoft Teams
Jigger Perez
 
Onedrive for Business Implementation and Rollout
Learning SharePoint
 
Microsoft Teams A New Way To Manage Projects, Connect, and Collaborate With...
Haniel Croitoru
 
What is Microsoft Teams?
Deepika Gandhi
 
European Collaboration Summit 2019 - Microsoft Teams Architecture Deep Dive
Maarten Eekels
 
Take full advantage of Microsoft Teams with SharePoint, OneNote and more!
Serge Tremblay
 

Similar to SPSWarsaw - Teams Architecture Deep Dive (20)

PPTX
SPSZurich18 - Microsoft Teams Deep Dive
Maarten Eekels
 
PPTX
Experts Live 2019 - Microsoft Teams Architecture Deep Dive
Maarten Eekels
 
PPTX
SPSHEL18 - Microsoft Teams Deep Dive
Maarten Eekels
 
PPTX
Overview of microsoft teams
Vignesh Ganesan I Microsoft MVP
 
PPTX
Governance and administration for teams app development
Jenkins NS
 
PPTX
ECS19 - Maarten Eekels - MICROSOFT TEAMS ARCHITECTURE DEEP DIVE
European Collaboration Summit
 
PPTX
Solvion Trend Werkstatt juni 2019 - Microsoft Teams
Thomas Gölles
 
PPTX
Tech Module 4 - Microsoft Teams admin and gov.pptx
eco80080
 
PPTX
When SharePoint met Microsoft Teams - Oktoberfest 2019 #TeamsFest
Chirag Patel
 
PPTX
What's new in Microsoft Teams
Vignesh Ganesan I Microsoft MVP
 
PDF
Mvp skill saturday ep 04_enablement teams_foundations
Kumton Suttiraksiri
 
PDF
ECS19 - Rodrigo Pinto - Migrating to Teams, real cases and scenarios
European Collaboration Summit
 
PPTX
Microsoft Teams Training - Howard University
Kyle Danzey
 
PPTX
Team me up Scotty!
Thorbjørn Værp
 
PDF
Sydney Microsoft 365 Meetup Microsoft teams
Anupam Ranku
 
PPTX
Teams Day Online - Microsoft Teams Governance
Albert Hoitingh
 
PPTX
MicrosoftTeams-Workshop.pptx
muqtada1
 
PPTX
Team me up scotty!
Thorbjørn Værp
 
PDF
Teams Summit - What is New and Coming
Perficient, Inc.
 
PDF
Leveraging Microsoft Teams for a SharePoint-Centric Organization
Christian Buckley
 
SPSZurich18 - Microsoft Teams Deep Dive
Maarten Eekels
 
Experts Live 2019 - Microsoft Teams Architecture Deep Dive
Maarten Eekels
 
SPSHEL18 - Microsoft Teams Deep Dive
Maarten Eekels
 
Overview of microsoft teams
Vignesh Ganesan I Microsoft MVP
 
Governance and administration for teams app development
Jenkins NS
 
ECS19 - Maarten Eekels - MICROSOFT TEAMS ARCHITECTURE DEEP DIVE
European Collaboration Summit
 
Solvion Trend Werkstatt juni 2019 - Microsoft Teams
Thomas Gölles
 
Tech Module 4 - Microsoft Teams admin and gov.pptx
eco80080
 
When SharePoint met Microsoft Teams - Oktoberfest 2019 #TeamsFest
Chirag Patel
 
What's new in Microsoft Teams
Vignesh Ganesan I Microsoft MVP
 
Mvp skill saturday ep 04_enablement teams_foundations
Kumton Suttiraksiri
 
ECS19 - Rodrigo Pinto - Migrating to Teams, real cases and scenarios
European Collaboration Summit
 
Microsoft Teams Training - Howard University
Kyle Danzey
 
Team me up Scotty!
Thorbjørn Værp
 
Sydney Microsoft 365 Meetup Microsoft teams
Anupam Ranku
 
Teams Day Online - Microsoft Teams Governance
Albert Hoitingh
 
MicrosoftTeams-Workshop.pptx
muqtada1
 
Team me up scotty!
Thorbjørn Værp
 
Teams Summit - What is New and Coming
Perficient, Inc.
 
Leveraging Microsoft Teams for a SharePoint-Centric Organization
Christian Buckley
 
Ad

More from Maarten Eekels (20)

PPTX
ESPC19 - Office 365 Labels Deep Dive
Maarten Eekels
 
PPTX
Dutch Microsoft & Security Meetup - Ignite recap Microsoft 365 Security and C...
Maarten Eekels
 
PPTX
Dutch Microsoft & Security Meetup - How to protect my data in Office 365?
Maarten Eekels
 
PPTX
NACS - Microsoft Stream - Your Video Portal Unleashed
Maarten Eekels
 
PPTX
Office 365 Connect 2018 - Modern news publishing with SharePoint
Maarten Eekels
 
PPTX
SPSBE18 - Microsoft Stream - Your enterprise video portal unleashed
Maarten Eekels
 
PPTX
SPSIstanbul18 - Microsoft Teams Deep Dive
Maarten Eekels
 
PPTX
SPSCambridge18 - Modern news publishing with SharePoint
Maarten Eekels
 
PPTX
Experts Live NL 2018 - Extern delen van data in Office 365
Maarten Eekels
 
PPTX
Microsoft Stream - Your Enterprise Video Portal Unleashed
Maarten Eekels
 
PPTX
SPSHEL18 - Modern News Publishing with SharePoint
Maarten Eekels
 
PPTX
SPSDENORTH18 - Modern News Publishing with SharePoint
Maarten Eekels
 
PPTX
InSpark Ignite Recap Office 365
Maarten Eekels
 
PPTX
SPSVIE17 - Microsoft Flow And PowerApps - End-To-End
Maarten Eekels
 
PPTX
ESPC17 - The Microsoft On-premises Data Gateway
Maarten Eekels
 
PPTX
SPUnite17 - External Sharing in SharePoint Online
Maarten Eekels
 
PPTX
SPUnite17 - Modern News Publishing With SharePoint
Maarten Eekels
 
PPTX
SPSBE - Microsoft Teams Deep Dive
Maarten Eekels
 
PPTX
SPSLondon - How to secure your data in Office 365
Maarten Eekels
 
PPTX
SPSUnity - How to secure your data in office 365
Maarten Eekels
 
ESPC19 - Office 365 Labels Deep Dive
Maarten Eekels
 
Dutch Microsoft & Security Meetup - Ignite recap Microsoft 365 Security and C...
Maarten Eekels
 
Dutch Microsoft & Security Meetup - How to protect my data in Office 365?
Maarten Eekels
 
NACS - Microsoft Stream - Your Video Portal Unleashed
Maarten Eekels
 
Office 365 Connect 2018 - Modern news publishing with SharePoint
Maarten Eekels
 
SPSBE18 - Microsoft Stream - Your enterprise video portal unleashed
Maarten Eekels
 
SPSIstanbul18 - Microsoft Teams Deep Dive
Maarten Eekels
 
SPSCambridge18 - Modern news publishing with SharePoint
Maarten Eekels
 
Experts Live NL 2018 - Extern delen van data in Office 365
Maarten Eekels
 
Microsoft Stream - Your Enterprise Video Portal Unleashed
Maarten Eekels
 
SPSHEL18 - Modern News Publishing with SharePoint
Maarten Eekels
 
SPSDENORTH18 - Modern News Publishing with SharePoint
Maarten Eekels
 
InSpark Ignite Recap Office 365
Maarten Eekels
 
SPSVIE17 - Microsoft Flow And PowerApps - End-To-End
Maarten Eekels
 
ESPC17 - The Microsoft On-premises Data Gateway
Maarten Eekels
 
SPUnite17 - External Sharing in SharePoint Online
Maarten Eekels
 
SPUnite17 - Modern News Publishing With SharePoint
Maarten Eekels
 
SPSBE - Microsoft Teams Deep Dive
Maarten Eekels
 
SPSLondon - How to secure your data in Office 365
Maarten Eekels
 
SPSUnity - How to secure your data in office 365
Maarten Eekels
 
Ad

Recently uploaded (20)

PPTX
AI Code Generation Risks (Ramkumar Dilli, CIO, Myridius)
Priyanka Aash
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PPTX
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PDF
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
PDF
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PPTX
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
PPTX
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PDF
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
AI Code Generation Risks (Ramkumar Dilli, CIO, Myridius)
Priyanka Aash
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 

SPSWarsaw - Teams Architecture Deep Dive

  • 1. 06.04.2019 # 2019 # Microsoft Teams Architecture Deep Dive Maarten Eekels - @maarteneekels
  • 4. 06.04.2019 # Teams logical architecture Team Office 365 Groups Chat Channel SharePoint Reply ChainMessage Images, Emojis, Stickers, Giphy, Recordings OneDrive for Business Tabs Folder Tabs Activity FeedMeetings Calling Apps Apps Contacts Teams Chats Voice Voice mail
  • 5. 06.04.2019 # Where is everything stored? Image Files Voicemail Message Recording Calendar meeting Contacts Media service on Azure (using Blob storage) Team files  SharePoint Chat files  OneDrive for Business Individual mailbox in Exchange Chat service table storage (moving to Cosmos DB) Media service on Azure (using Blob storage) (<24 hours) Individual mailbox in Exchange Exchange Ingested to Exchange to enable compliance Ingested to Exchange to enable compliance Encoded to Microsoft Stream Telemetry Microsoft Data warehouse (No customer content)
  • 6. 06.04.2019 # Teams high level architecture Microsoft Teams Intelligent Communications Microsoft 365 Core services Most recent files Telemetry Files Files Web Companions Notes Calendar AAD MessagingSettings and O365 access OneNote OneDrivefor Business WAC Other Workloads Connectors Audio / video Search Notification service SMTP SharePoint Publish / Subscribe Push Notifications Experimentation MRU Calling / Meeting PSTN Desktop iOS App Android AppElectron Web Chat & Presence services Exchange Information Protection Graph Webhook Stream Recording Bots Graph API Email service Policy Teams services
  • 7. 06.04.2019 # Outside the compliancy perimeter User Browser, Desktop ,Mobile compliance boundary Microsoft Teams Guest user Anonymous join to a meeting Federation communication Email a channel Connectors Apps/Bots Tabs Calling Plan (PSTN) Push Notifications (Mobile) Other Cloud storage (3rd party) Graph API Giphy 2-way communication Inbound data Outbound data Data posted to a channel Data posted to a channel Query to Giphy Push notifications to Apple or Google to notify mobile client Optional Box, Dropbox, Google drive, Citrix Fileshare Any third-party tab is hosted outside the compliance boundary Any third-party App/bot or line of business app is hosted outside the compliance boundary Graph APIs can be exposed to line of business apps or 3rd party apps Enables inbound/outbound calling outside the organization Standard Teams user Guest added via AAD B2B Anonymous user joining a meeting Communication between multiple tenants URL Preview Get a preview of a URL that is posted to a message
  • 8. 06.04.2019 # Teams client Browsers: Edge, IE11, latest Chrome, latest Firefox, and now Safari too | Desktop: Windows 10, 8.1, 7(SP1), Mac OS X 10.10+ IOS Android Swift Java Angular  React jQuery, lodash etc.. (200+ Open Source Components) TypeScript, Node, SASS HTML5/CSS C++ Objective C Windows MacWeb AndroidiPhone/iPad Desktop Mobile Electron React Native
  • 9. 06.04.2019 # Memberships and Roles Team Owner Team Member Team Guest Create team  - - Leave team    Edit team name/description  - - Delete team  - - Add channel  * * Edit channel name/description  * * Delete channel  * * Add members  - - Add tabs  * - Add connectors  * - Add bots  * - * Can be restricted through Team Settings by the owner
  • 10. 06.04.2019 # Teams Admin Roles • Teams Service Administrator: The overall Teams workload admin, who can also manage and create O365 Groups. • Teams Communication Administrator: This role can manage meetings and calling functionality in Microsoft Teams. • Teams Communications Support Engineering: Users who are assigned this role have access to advanced call analytics tools. • Teams Communications Support Specialist: This role has access to basic call analytics tools.
  • 13. 06.04.2019 # Manage Teams with PowerShell Install-Module -Name MicrosoftTeams Get-Team $groupId = (Get-AzureADGroup -SearchString “<group name>").objectId Get-TeamFunSettings -GroupId $groupId Get-TeamMemberSettings -GroupId $groupId Get-TeamGuestSettings -GroupId $groupId
  • 14. 06.04.2019 # Allow only specific people to create Teams Azure Active Directory versie 2 PowerShell module required Connect-AzureAD Get-AzureADDirectorySetting $Policy = Get-AzureADDirectorySettingTemplate –Id 62375ab9-6b52- 47ed-826b-58e47e0e304b $Setting = $Policy.CreateDirectorySetting() $Setting[“EnableGroupCreation”] = “false” $Setting[“GroupCreationAllowedGroupId”] = “your group ID” New-AzureADDirectorySetting -DirectorySetting $Setting https://docs.microsoft.com/en- us/powershell/azure/overview?view=azureadps-2.0
  • 15. 06.04.2019 # External guest access • Default setting: Off for tenants / On for individual Teams • Disabling or enabling external guest user access for individual Teams is only possible through PowerShell
  • 16. 06.04.2019 # External sharing per Team Disabling or enabling external guest user access is only possible through PowerShell $template = Get-AzureADDirectorySettingTemplate | ? {$_.displayname -eq "group.unified.guest"} $settings = $template.CreateDirectorySetting() $settings["AllowToAddGuests"]=$False $groupID = (Get-AzureADGroup -SearchString “<your group name").ObjectId Get-AzureADObjectSetting -TargetObjectId $groupID -TargetType Groups | fl Values New-AzureADObjectSetting -TargetObjectId $groupID -TargetType Groups -DirectorySetting $settings Get-AzureADObjectSetting -TargetObjectId $groupId -TargetType Groups | Set- AzureADObjectSetting -TargetObjectId $groupId -TargetType Groups - DirectorySetting $settings
  • 19. 06.04.2019 # Naming conventions Get-AzureADDirectorySetting $directorySetting = Get-AzureADDirectorySetting -Id 92efeacc- 89c6-4c16-b1cf-107aaf87f7dc $directorySetting.Values $directorySetting["PrefixSuffixNamingRequirement"] = "Grp_[Department]_[GroupName]" $directorySetting["CustomBlockedWordsList"]="Payroll,CEO,HR" Set-AzureADDirectorySetting -Id (Get-AzureADDirectorySetting | where -Property DisplayName -Value "Group.Unified" -EQ).id -DirectorySetting $directorySetting