SlideShare a Scribd company logo
MICROSOFT 365
Microsoft Teams
Architecture Deep Dive
Maarten Eekels - @maarteneekels
MICROSOFT 365
Contact
@maarteneekels
meekels@portiva.nl
www.eekels.net
MICROSOFT 365
Teams logical architecture
MICROSOFT 365
Where is everything stored?
MICROSOFT 365
Outside the compliancy perimeter
MICROSOFT 365
Teams client
MICROSOFT 365
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
MICROSOFT 365
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.
MICROSOFT 365
Teams settings on tenant level
MICROSOFT 365
Settings on team level
MICROSOFT 365
Manage Teams with PowerShell
Install-Module -Name MicrosoftTeams
Get-Team
$groupId = (Get-AzureADGroup -SearchString “<group name>").objectId
Get-Team -GroupId $groupId | fl
Set-Team -GroupId $groupId -<setting name> <boolean>
MICROSOFT 365
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
MICROSOFT 365
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
$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
MICROSOFT 365MICROSOFT 365
DEMO
MICROSOFT 365
Groups expiration
MICROSOFT 365
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
MICROSOFT 365
Retention policies
MICROSOFT 365
Archiving Teams
MICROSOFT 365MICROSOFT 365
DEMO
MICROSOFT 365
Graph API
MICROSOFT 365MICROSOFT 365
DEMO
MICROSOFT 365MICROSOFT 365
That’s all folks!
Please review my session in the Yellenge App!
@maarteneekels

More Related Content

PPTX
European Collaboration Summit 2019 - Microsoft Teams Architecture Deep Dive
PPTX
ESPC19 - Office 365 Labels Deep Dive
PPTX
Overview of Private Channels in Microsoft Teams
PPTX
John Burkholder: Disaster Recovery in SharePoint 2010
PPTX
[AU SPC 2011] Backup Restore SharePoint 2010
PPTX
SPSWarsaw - Teams Architecture Deep Dive
PPTX
SPSZurich18 - Microsoft Teams Deep Dive
PPTX
SPSHEL18 - Microsoft Teams Deep Dive
European Collaboration Summit 2019 - Microsoft Teams Architecture Deep Dive
ESPC19 - Office 365 Labels Deep Dive
Overview of Private Channels in Microsoft Teams
John Burkholder: Disaster Recovery in SharePoint 2010
[AU SPC 2011] Backup Restore SharePoint 2010
SPSWarsaw - Teams Architecture Deep Dive
SPSZurich18 - Microsoft Teams Deep Dive
SPSHEL18 - Microsoft Teams Deep Dive

Similar to Experts Live 2019 - Microsoft Teams Architecture Deep Dive (20)

PPTX
ESPC19 - Microsoft Teams Architecture Deep Dive
PPTX
ECS19 - Maarten Eekels - MICROSOFT TEAMS ARCHITECTURE DEEP DIVE
PPTX
Working with Security and Compliance in Microsoft Teams - Microsoft 365 Virtu...
PDF
September 2019 Microsoft 365 Need to Know Webinar
PPTX
Microsoft Teams Preview - Technical Overview
PPTX
Governance and administration for teams app development
PPTX
Microsoft Teams Governance
PDF
Introduction to Microsoft Teams
PDF
June 2022 CIAOPS Need to Know Webinar
PPTX
Tech Module 4 - Microsoft Teams admin and gov.pptx
PDF
October 2020 Microsoft 365 Need to Know Webinar
PDF
Webinar: Deploy Microsoft Teams and stay in control
PPTX
M365VM22-Johnny Lopez - Teams Connect Overview.pptx
PPTX
Understanding Security and Compliance in Microsoft Teams - M365 Saturday Bang...
PPTX
Understanding Microsoft Teams Security & Compliance features and plan for Gov...
PPTX
Solvion Trend Werkstatt juni 2019 - Microsoft Teams
PPTX
Team me up Scotty!
PPTX
Overview of microsoft teams
PPTX
M365 Teams Automation
PPTX
Microsoft teams planning-workshop-dec2017
ESPC19 - Microsoft Teams Architecture Deep Dive
ECS19 - Maarten Eekels - MICROSOFT TEAMS ARCHITECTURE DEEP DIVE
Working with Security and Compliance in Microsoft Teams - Microsoft 365 Virtu...
September 2019 Microsoft 365 Need to Know Webinar
Microsoft Teams Preview - Technical Overview
Governance and administration for teams app development
Microsoft Teams Governance
Introduction to Microsoft Teams
June 2022 CIAOPS Need to Know Webinar
Tech Module 4 - Microsoft Teams admin and gov.pptx
October 2020 Microsoft 365 Need to Know Webinar
Webinar: Deploy Microsoft Teams and stay in control
M365VM22-Johnny Lopez - Teams Connect Overview.pptx
Understanding Security and Compliance in Microsoft Teams - M365 Saturday Bang...
Understanding Microsoft Teams Security & Compliance features and plan for Gov...
Solvion Trend Werkstatt juni 2019 - Microsoft Teams
Team me up Scotty!
Overview of microsoft teams
M365 Teams Automation
Microsoft teams planning-workshop-dec2017
Ad

More from Maarten Eekels (20)

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

Recently uploaded (20)

PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
Mushroom cultivation and it's methods.pdf
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Hybrid model detection and classification of lung cancer
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
Approach and Philosophy of On baking technology
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PDF
project resource management chapter-09.pdf
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
WOOl fibre morphology and structure.pdf for textiles
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Zenith AI: Advanced Artificial Intelligence
NewMind AI Weekly Chronicles - August'25-Week II
A novel scalable deep ensemble learning framework for big data classification...
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
1 - Historical Antecedents, Social Consideration.pdf
Mushroom cultivation and it's methods.pdf
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
MIND Revenue Release Quarter 2 2025 Press Release
Group 1 Presentation -Planning and Decision Making .pptx
Hybrid model detection and classification of lung cancer
gpt5_lecture_notes_comprehensive_20250812015547.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Univ-Connecticut-ChatGPT-Presentaion.pdf
Approach and Philosophy of On baking technology
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
SOPHOS-XG Firewall Administrator PPT.pptx
project resource management chapter-09.pdf
DP Operators-handbook-extract for the Mautical Institute
WOOl fibre morphology and structure.pdf for textiles

Experts Live 2019 - Microsoft Teams Architecture Deep Dive

  • 1. MICROSOFT 365 Microsoft Teams Architecture Deep Dive Maarten Eekels - @maarteneekels
  • 4. MICROSOFT 365 Where is everything stored?
  • 5. MICROSOFT 365 Outside the compliancy perimeter
  • 7. MICROSOFT 365 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
  • 8. MICROSOFT 365 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.
  • 11. MICROSOFT 365 Manage Teams with PowerShell Install-Module -Name MicrosoftTeams Get-Team $groupId = (Get-AzureADGroup -SearchString “<group name>").objectId Get-Team -GroupId $groupId | fl Set-Team -GroupId $groupId -<setting name> <boolean>
  • 12. MICROSOFT 365 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
  • 13. MICROSOFT 365 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 $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
  • 16. MICROSOFT 365 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
  • 22. MICROSOFT 365MICROSOFT 365 That’s all folks! Please review my session in the Yellenge App! @maarteneekels