Microsoft Teams Migration FAQs

This guide will cover frequently asked questions and troubleshooting processes related to Microsoft Teams to Microsoft Teams (Parallel) migrations. It is not intended to replace any part of the migration guide, which lays out the steps necessary to perform a Teams to Teams migration. 

Permissions

Is Global Admin required for Teams (Parallel)?

No. For Teams Parallel, the AO ‘UseApplicationPermission=1’ has been defaulted. Use Teams-FullControlApp for both Source and Destination.

Application Permissions

MigrationWiz now supports read-only Application Permissions for Teams migrations, in addition to full-control permissions. This new app, with ReadOnly permissions, can only be used at the source to enhance security, and will not export document permissions. The destination permissions will always require FullControl permissions.

This allows for a secure migration without the use of Global Admin or Site Collection Admin permissions on the source and destination.

This app is similar to the Office 365 Authentication App previously deployed, which utilized delegate permissions. This app uses application permissions. If you are not using application permissions, go to the Authentication App article and follow those steps.

61d5b82a-cc9f-42d9-8565-7813f8c94121.png

Enable Application Permissions

These are the steps to enable permission level at the source only. This authentication process gives you control over who is entitled to use the source.

  1. Ensure you are signed in as a Global Admin in the Office 365 Admin Portal.

  2. Go to either Teams-ReadOnlyApp or to Teams-FullControlApp and consent to the app access when prompted. If choosing the Teams-ReadOnlyApp option, you will need to disable AMR via "DisableAsynchronousMetadataRead=1", due to Microsoft API limitation.

  3. Create new Security Group named “MigrationWiz” on the Office 365 Admin Portal. If you have not created a security group before, follow Microsoft's instructions.

  4. Create new user. This user must have an active Teams license applied.

  5. Add new user to previously created security group as a member. Important: ADFS and MFA must be turned off for this user.

  6. Create MigrationWiz project.

  7. When creating the endpoints, enter the new user credentials.

Steps to enable permission level at the destination:

  1. Ensure you are signed in as a Global Admin.

  2. Go to Teams-FullControlApp and consent to the app access when prompted.

  3. Create new Security Group named “MigrationWiz” on the Office 365 Admin Portal.

  4. Create new user. Important: ADFS and MFA must be turned off for this user.

  5. Add new user to previously created security group as a member.

  6. Create MigrationWiz project.

  7. When creating the endpoints, enter the new user credentials.

Teams-FullControlApp may be used on both source and destination tenant and will export document permissions. Teams-ReadOnly can only be used on the source tenant, and will not export document permissions.

Post-Migration Steps

  1. Remove the newly created user.

  2. Remove the MigrationWiz Security Group created in Step 3.

  3. To remove the app from the source or destination, perform the following steps:

    1. Launch PowerShell.

    2. Connect PowerShell to Office 365.

    3. Enter the command: Connect-AzureAD

    4. Enter the admin credentials in the prompt.

    5. Enter the command:Get-AzureADServicePrincipal -SearchString Migration

    6. Look for the ObjectId of the app you want to remove and enter the following command: Remove-AzureADServicePrincipal -objectId <the object id>

Permissions Granted

  Teams ReadOnly Teams FullControl
Conversations Y Y
Teams Permissions Y Y
Documents Y Y
Document Permissions N Y

Read Only permissions granted:

    • SharePoint API

      • Sites.Read.All,

      • User.Read.All

    • Graph API

      • Files.Read.All,

      • Group.ReadWrite.All
        (This is to add the user to the team as a owner first before being able to read conversations)

      • User.Read.All

      • Group.Read.All (delegate permission)
        (This is to be able to read all the conversations as a user after being added)

      • User.Read (delegate permission)

Full Control permissions granted:

  • SharePoint API:

    • Sites.FullControl.All

    • User.ReadWrite.All

  • Graph API:

    • Files.Read.All,

    • Group.ReadWrite.All

    • User.Read.All

    • Group.ReadWrite.All (delegate permission)

    • User.Read (delegate permission)

How long does the Azure SAS token last for the Microsoft-provided Azure Storage?

The Azure storage SAS token Microsoft provides to us last only 5 days instead of 30 days.

Adding Teams & Autodiscovery

What is the difference between the previous Assessment and Autodiscovery?

Assessment previously would calculate the number of teams, number of users file size and licenses needed.

Autodiscover will only discover the total number of teams at the Source

As such, from a speed perspective, autodiscover should be relatively faster than the Assessment. Once auto-discover has completed, users can import the teams and all the teams will be populated as line items.

What should I do when auto-discovery fails?

Check your Source credentials. Auto-discover will fail if the credentials verification fails.

What will Folder Summary show?

Folder summary will be shown per team level, so all the channels, documents and document permissions specific only to that team.

Migrating Teams

Can I select which Teams to migrate?

Yes, by checking only those teams to be migrated after the adding of teams is done either via auto-disover, quick add or bulk add.

Can I migrate only specific users?

No. All users in a selected team will be migrated.

How do I apply user mapping for large number of users?

  1. Download the script and example file attached at the end of this article (Add-MWTeamsUserMapping.ps1 and example.com).

  2. Fill in the example.csv with the desired user mapping

  3. Retrieve your Teams project ID. This can be obtained by copying the text after the projects/ and before the ?, as shown below.Teams_User_ID.png

  4. Run Powershell as an Adminstrator.

  5. Run this command:

    Set-ExecutionPolicy Unrestricted -Scope CurrentUser
    cd <Download folder>
    .\Add-MWTeamsUserMapping.ps1 -projectId <Teams project id> -csv <your csv path>
  6. E.g: .\Add-MWTeamsUserMapping.ps1 -projectId b2b00b67-c6fc-11ea-a81a-000d3af5b517 -csv .\example.csv

  7. Enter your MigrationWiz Account username and password

  8. Input the path to the CSV file with the user mapping.

Can I rename a team before migration?

Yes. However, only the MailNickname gets renamed. There will not be any changes to the Display Name. Prepend/AppendFolder AdvancedOptions is no longer supported for the new Teams Parallel connector.

 

If a Team at the destination exists with the same name as a Team at the Source tenant, can I rename the specific Team before the migration?

Yes. Click on the Edit icon of the team/line item and change the Destination MailNickname.

Can I migrate Teams with special characters in the name?

Yes. The steps for this are included in the Teams to Teams Migration Guide.

Can I migrate archived Teams?

Currently, archived are migrated over but as non-archive team. Private channels of archived teams will not be migrated. This is a known MSFT API limitation.

SharePoint sites are live in the destination. Will the Teams automatically connect to the SharePoint sites after Teams have been migrated? 

No, because this is dependent on teams, we don’t have control. once a team is created, a new SP site will be created for that team.

Migrating Private Channels

Can I migrate private channels?

Private channel creation was disabled on 7/17 due to recent changes in Microsoft Graph API. However, MigrationWiz can migrate private channels through the use of the Advanced Option TeamsMigratePrivateChannel=1. Steps for this are included in the migration guide. The scripts required are attached at the end of this article.

Private channels will be migrated as private channels with conversations and documents. Users will not be migrated to the channel; users at the destination must be added manually or via PS script. The admin user will not be removed from the private channel or from the team if the team has a private channel. This is applicable for all teams at the destination, both migrated and existing private channels.

Can I migrate private channels belonging to an archived team?

No, private channels of archived teams will not be migrated. This is a known Microsoft API limitation.

Migrating Private Channels

  1. Identify the private channels in the source tenant (use the MWTeamsPrivateChannelMembers.ps1 script).
  2. We suggest starting with smaller batches when working with private channels due to higher rate of admin sync issues faced. Start with a maximum of no more than 10 teams with no more than 20 private channels in a batch.
  3. Add Advanced Option TeamsMigratePrivateChannel=1 into the project.
  4. Do a scaffolding run
    1. Select “Teams Creation” in the Start Full Migration flyout
    2. If there are any errors encountered during the scaffolding run, wait a few hours, then re-run

Important: Private Channels will not be created during the scaffolding run in order to improve the success rate for their SharePoint site provision. Tests have shown that if private channels are created before the parent team SharePoint sites are ready, the private channel SharePoint site will not be created automatically.

  1. Wait 24 hours for the Team sites to provision. Private channels will not be created during the scaffolding run. It will only be created during normal content migration
  2. Continue the rest of the migration normally.
  3. Migrate the private channel users using the PS script “MWTeamsPrivateChannelMembers.ps1”.
  4. After the migration is completed, delete the migration admin user from both source and destination to remove the user from all teams and private channel.

Can I select which channels to migrate?

Yes via the folder filter Advanced Options. Refer to the Folder Filtering directions.

Migrating Chats & Conversations

Are all conversations migrated?

60 messages per team will be displayed in the destination team.

MigrationWiz will gather the total number of channels in each team  and then grab the most recent 60 threads in each team. The conversations will be distributed across those channels. For example, if you have six channels in a team, you will have ten messages per channel. This number can be controlled with the TeamsMaxConversationPostPerTeam Advanced Option. Details on this process are found in the migration guide. 

The entire channel conversation history can also be downloaded as HTML in the ‘Conversation History’ tab.

How does MigrationWiz choose 'most recent'?

It is based on the age of the root message. If you reply to an old message, it will not be counted as the most recent.

Migrating Guests

Are guests/external users migrated?

Guest access on the source will be migrated if the guest exists and guest permissions are enabled at the destination tenant prior to migration. This may be done via the Teams or Office 365 admin portal.

Post-Migration

Team members are missing at my destination. How do I resolve this?

Teams with a large number of members may take longer time to sync. To verify that all members have migrated:

  • Log into portal.azure.com

  • Go to the migrated group (Team)

  • View the members list to verify that the correct number of members were migrated

  • This should be synced to the Teams interface in the next few hours

Government Migrations 

Can I migrate to or from a US Government tenant?

Yes, via Advanced Options. Refer to the migration guide.

Does GCC support the Teams application permission Advanced Option?

No, currently GCC does not support the use of application permission (UseApplicationPermission=1). Add the option UseDelegatePermission=1 instead

Black Forest Tenant Migrations

Teams migration is currently not supported for Black Forest Tenants in the Microsoft Germany Datacenter, as it was not rolled out there to the best of our knowledge, nor could we obtain a test environment. For German customers in a .com Office 365 instance, Teams and migrations to and from should work normally. For US Government tenants, we currently support it as a destination. Source is as yet untested.

Advanced Options

User Mapping Troubleshooting

If the user is not found at the destination (w/ or w/o mapping), MW will throw a warning message indicating that the particular user is not found and will not be added to the migrated teams. To fix this, make the correction to user mapping and re-migrate with 'Team Permission' selected.

Does UserMapping refer to the UPN or to the SMTP?

UPN.

What Advanced Options are now built into Teams Parallel? 

  • Prepend/AppendFolder
  • SkipAdminCache
  • TeamsSelectiveLoading
  • UseApplicationPermission
  • UseAsynchronousMetadataRead
Was this article helpful?
0 out of 2 found this helpful