To check external access settings in Microsoft Teams, read the tenant's federation configuration for chat and meetings with other organisations, and the Teams client configuration for guest access. By default every external domain is allowed, if the other organisation allows yours, and external access policies decide who can use it.
| Method | Best fit |
|---|---|
| PowerShell | A CSV of the external access, trial tenant and guest access switches for 1 tenant. |
| Admin centre | A quick look at 1 tenant's domain lists and switches. |
| Altivane | Recommended for recurring reviews, with each setting rated against a recommendation. |
Before you start
Run the script as a Teams Administrator, in Windows PowerShell 5.1 or PowerShell 7.2 or later. Teams Reader and Global Reader can read the same settings in the Teams admin centre without changing them. Guest access needs no extra Microsoft 365 licence.
An external access policy can narrow these organisation settings for the people it is assigned to. Guest access also depends on settings in Microsoft Entra ID, Microsoft 365 Groups and SharePoint. The examples read the settings and export them; they change nothing.
Option 1
Check external access settings with PowerShell
Install the module once, then connect and export the external access and guest access switches, 1 row for each.
# Install once, if the module is not already installed.
Install-Module -Name MicrosoftTeams -Scope CurrentUser$ErrorActionPreference = 'Stop'
$external = 'AllowFederatedUsers', 'AllowTeamsConsumer', 'AllowTeamsConsumerInbound',
'ExternalAccessWithTrialTenants'
$guest = 'AllowGuestUser', 'AllowEmailIntoChannel', 'AllowDropBox', 'AllowBox',
'AllowGoogleDrive', 'AllowShareFile', 'AllowEgnyte'
Connect-MicrosoftTeams | Out-Null
try {
$federation = Get-CsTenantFederationConfiguration
$client = Get-CsTeamsClientConfiguration -Identity Global
if ($null -eq $federation -or $null -eq $client) {
Write-Output 'Teams returned no configuration. Check the role of the account you used.'
} else {
$report = @(
foreach ($name in $external) {
$value = $federation.$name
[pscustomobject]@{ Area = 'External access'; Setting = $name; Value = "$value" }
}
foreach ($name in $guest) {
$value = $client.$name
[pscustomobject]@{ Area = 'Guest access'; Setting = $name; Value = "$value" }
}
)
$report | Export-Csv -Path './teams-external-access.csv' -NoTypeInformation -Encoding utf8
Write-Output "$($report.Count) Teams access settings exported."
}
} finally {
Disconnect-MicrosoftTeams
}AllowFederatedUsers is the master switch: when it is False, no external domain is allowed, whatever the domain lists hold. AllowTeamsConsumer covers Teams accounts no organisation manages, and ExternalAccessWithTrialTenants reads Blocked unless tenants with only trial licences were allowed. Add or remove property names in either list to widen or narrow the export.
List the allowed and blocked domains
Reconnect with Connect-MicrosoftTeams, since the export disconnects, then read the 2 domain lists.
# Run while connected to Microsoft Teams.
$federation = Get-CsTenantFederationConfiguration
$federation | Select-Object -ExpandProperty AllowedDomains
$federation | Select-Object -ExpandProperty BlockedDomainsAllowAllKnownDomains means every domain not on the blocked list is allowed. A list of allowed domains means only those, and the blocked list is then ignored.
Option 2
Review external access in the Teams admin centre
- Sign in to the Microsoft Teams admin centre for the correct tenant.
- Go to Users > External access.
- Read the choice next to Teams and Skype for Business users in external organizations, such as Allow only specific external domains, and the domains it lists.
- Read People in my organization can communicate with unmanaged Teams accounts, and whether those accounts can contact your people first.
- Select the Policies tab to see the external access policies that narrow these settings.
- Go to Users > Guest access and read whether Guest access is on. Leave both pages without selecting Save.
This suits a look at a tenant you already have open. For the trial tenant choice, or a record to keep and compare, use PowerShell or a report.
Option 3 ยท Recommended for recurring reviews
Review Teams external access with Altivane
- Open Altivane and choose the tenant.
- Build the tenant's documents with the Teams External and Guest Access scorecard report in full, so each setting is listed as well as counted.
- Open the tenant's Excel workbook and find Teams Settings to Review: each setting that differs from the recommendation, with the reason for it.
- Read Teams Access Settings for every setting with its value, meeting and messaging ones included, and Teams Access Summary for the counts.
Altivane reads them through Teams PowerShell, so it needs the MicrosoftTeams module on the computer and certificate sign-in for the tenant; without either, the summary says what is missing. Each setting is marked OK or Review against its recommendation; guest access, the organisation's own choice, is shown for information. The scorecard marks the settings to review Warning or Critical at the counts you set. The build also writes the tenant's Word report.
Contact usCommon questions
Why can a person still not chat with an allowed organisation?
External access needs both sides. The other organisation must allow yours and turn on external access for its people, and your own person needs an external access policy that allows it. Until then, its people join your meetings as anonymous people.
Does blocking a domain stop its people joining meetings?
Not on its own. People from a blocked domain can still join anonymously when anonymous join is allowed. Each meeting policy sets that with AllowAnonymousUsersToJoinMeeting, so read it in the Global policy and any custom ones.
What is the difference between external access and guest access?
External access lets your people chat and meet with people in other organisations, who get no access to your teams or files. Guest access adds a person to your directory as a guest, so they can join teams and channels. To find your guests, see how to list guest users.
Microsoft references
Technical references checked on 24 October 2026. The example scripts have been reviewed and syntax checked; they have not been run against a live tenant.
- Manage external meetings and chat in Microsoft Teams
- Get-
Cs Tenant Federation Configuration reference - Set-
Cs Tenant Federation Configuration parameters - Get-
Cs Teams Client Configuration reference - Set-
Cs Teams Client Configuration parameters - Turn guest access in Microsoft Teams on or off
- Manage anonymous access to Teams meetings
- Microsoft Teams administrator roles
- Install the Microsoft Teams PowerShell module