Como – Migração do Office 365 para o Office 365 (Passo a Passo)

Como – Migração do Office 365 para o Office 365 (Passo a Passo). Mover de um ambiente do Office 365 para outro requer planejamento cuidadoso e execução para garantir uma transição perfeita sem comprometer a integridade dos dados. Este guia abrangente descreve o processo passo a passo para uma migração de caixa de correio entre inquilinos do Office 365, enfatizando as etapas essenciais. Ao seguir estas etapas detalhadas, as organizações simplificam sua jornada de migração e minimizam possíveis interrupções em suas operações diárias. Neste guia, descrevemos o processo de migração usando a ferramenta interna de Migração de Dados de Usuário entre Inquilinos. Embora tenha seus prós (não requer a compra de ferramentas de terceiros) e contras (não suporta a migração de pastas públicas, requer algumas habilidades de scripting de PowerShell), funciona tanto para pequenas como para grandes empresas.

Vamos começar nosso artigo Como – Migração do Office 365 para o Office 365.

Como – Migração do Office 365 para o Office 365

1. Avaliação Pré-Migração do Office 365 para o Office 365

Primeiro, certifique-se de coletar as seguintes informações:

  1. Uso de retenção legal. Caixas de correio e contas do OneDrive com uma política de Retenção aplicada não podem ser migradas para outro inquilino.
  2. Caixas de correio arquivadas. Durante a correspondência de atributos (mostrada abaixo durante a preparação da conta), os usuários que têm caixas de correio arquivadas devem ter ambos os atributos ExchangeGUID e ArchiveGUID correspondentes nos locatários de origem e destino.
  3. Delegações existentes de permissão Enviar em nome de. Essa permissão não é migrada e deve ser reconfigurada após a migração. Se você deseja usar um script do PowerShell para avaliar a lista de delegações, certifique-se de converter o atributo Nome Distinto (que não pode ser usado no locatário de destino) para algum atributo que permaneça o mesmo após a migração, por exemplo, Nome de Exibição. Um exemplo do script que pode ser usado para coletar as informações está abaixo (para executá-lo, conecte-se ao módulo do PowerShell do Exchange Online primeiro):
$delegatedmailboxes = get-mailbox -resultsize unlimited | ?{$_.GrantSendOnBehalfTo -ne $null} | select displayname,GrantSendOnBehalfTo

$FilePath = "C:\output\delegatee.csv" #use o caminho do arquivo próprio, garanta que a pasta exista
Add-Content -Value ("Delegator" + "," + "Delegatee") -Path $FilePath
foreach ($delegatedmailbox in $delegatedmailboxes) {
    $delegatees = $delegatedmailbox.GrantSendOnBehalfTo
    foreach ($delegatee in $delegatees) {
        $delegateeName = get-mailbox $delegatee
        $delegatedmailbox.Displayname + "," + $delegateeName.Displayname | out-file $FilePath -append
    }
}

O script cria um arquivo CSV que contém as informações sobre todas as delegações da permissão Enviar em nome de no locatário. O arquivo pode ser usado após a migração para recriar as delegações. Observe que os arquivos CSV usam vírgula como separador, então, se vírgula for usada no atributo Nome de Exibição dos usuários em sua empresa, ajuste o script conforme necessário (por exemplo, use a tabulação como separador).

  1. Certifique-se de ter as permissões necessárias em ambos os locatários de origem e destino. A configuração inicial requer a função de Administrador da Organização (para a configuração do relacionamento da organização) e a capacidade de registrar aplicativos no Azure AD (para registrar o aplicativo de migração nos passos seguintes). O próprio movimento não requer privilégios elevados e pode ser feito por uma conta com permissão de Mover Caixa de Correio.
  2. Assegure-se de ter as licenças necessárias em ambos os locatários de origem e destino. Você precisa de licenças do Microsoft 365 e de licenças de Migração de Dados de Usuário entre Locatários para todos os usuários que forem migrados. Garanta que as licenças de Migração de Dados de Usuário entre Locatários sejam atribuídas antes da migração. No locatário de destino, certifique-se de que as licenças do Exchange Online não sejam atribuídas antes de atribuir o atributo ExchangeGUID e os endereços de proxy ao usuário, pois isso causa falha na migração (porque uma caixa de correio com GUID diferente é atribuída à caixa de correio.
  3. Obtenha e anote o ID do locatário para ambos os locatários, conforme descrito no artigo Encontre o ID do seu locatário do Microsoft 365.Também, notifique os usuários finais sobre o impacto esperado:

A note to users

Além disso, notifique os usuários finais sobre o impacto esperado:

  • A caixa de correio estará em modo somente leitura por um curto período durante a migração.
  • Os usuários precisarão recriar o perfil do Outlook nos dispositivos desktop e móveis após a migração.
  • As aplicações do Microsoft 365 podem exigir reativação.
  • Se o OneDrive ou o SharePoint estavam mapeados como uma unidade de rede, será necessário remapeá-los.
  • As reuniões existentes do Teams precisarão ser recriadas.
  • Os Grupos do Microsoft 365 não serão migrados.

2. Registro da Aplicação de Migração no Microsoft Entra

Para permitir que a Microsoft mova os usuários entre dois locatários, é necessário registrar a aplicação no Microsoft Entra (para aqueles que perderam a atualização, Entra é como a Microsoft chama o Azure AD agora) do locatário de destino e conceder a permissão Mailbox.Migration . Além disso, a criação do segredo é necessária, o qual é utilizado para criar o ponto de extremidade de migração (o ponto de extremidade de migração é uma entidade de configuração que contém configurações e credenciais para realizar migrações externas).

  1. Vá para o Centro de administração do Microsoft Entra e faça login usando uma conta que possa registrar aplicativos.
  2. Navegue até Aplicativos > Registros de aplicativos e selecione Novo registro.
  1. Na janela Registrar um aplicativo que aparecer, insira o nome (qualquer nome serve), selecione a opção Contas em qualquer diretório organizacional (Qualquer diretório Microsoft Entra – Multilocatário) como tipos de conta suportados e especifique https://office.com como URI de redirecionamento da web, em seguida, pressione Registrar.
  1. De volta à página de Registros de aplicativos, selecione o aplicativo criado.
  2. Na página aberta, na guia Visão geral, encontre ID do aplicativo (cliente) e anote-o para uso futuro.
  1. Vá para a guia de Permissões da API e pressione Adicionar uma permissão.
  1. Na janela que aparecer, navegue até a guia APIs que minha organização usa e selecione Office 365 Exchange Online.
  1. Navegue até Permissões do aplicativo, na lista selecione Caixa de correio > Mailbox.Migration e depois pressione o botão Adicionar permissões.
  1. Após as permissões serem concedidas, vá para a guia Certificados e segredos (no painel de navegação da página do aplicativo) e na seção de Segredos do cliente, selecione Novo segredo do cliente.
  1. Preencha ambos os campos e pressione Adicionar.
  1. De volta à página Certificados e segredos, você verá o novo ID do segredo e a senha, anote ambos para uso futuro.

3. Preparação do locatário de destino do Office 365

Na próxima etapa, concedemos consentimento de administrador à aplicação registrada no locatário de destino e, em seguida, criamos o ponto de migração e o relacionamento de organização. Os relacionamentos de organização são usados no Exchange Online para fornecer a terceiros algum acesso aos recursos internos. O uso mais popular desse recurso é dar acesso de leitura às informações do calendário à organização parceira (para compartilhar status de disponibilidade), no entanto, também pode ser usado para outros tipos de acesso. No nosso caso, fornecemos a capacidade de mover a caixa de correio.

  1. No centro de administração do Microsoft Entra, vá para Aplicativos > Aplicativos empresariais.
  2. Na lista de aplicativos, selecione a aplicação de migração criada.
  3. A página do aplicativo aparece, vá para a guia Permissões e pressione Conceder consentimento de administrador para [o nome do seu locatário].
  1. A página de aplicação aparece, navegue até a aba Permissões e pressione Conceder consentimento de administrador para [o nome do seu locatário.
  1. Uma nova janela do navegador se abre, aceite a concessão de permissões.
  2. Para criar o ponto de migração e o relacionamento da organização no locatário de destino, abra o PowerShell e conecte-se ao módulo Exchange Online.
  3. Em seguida, verifique se a sua organização Exchange está no estado desidratado. Se estiver, nenhuma personalização das configurações da organização é possível.
Get-OrganizationConfig | select isDehydrated
  1. Se a saída for Falso, este passo pode ser ignorado, se for Verdadeiro, execute o cmdlet Enable-OrganizationCustomization.
  2. Crie o ponto de migração:
$AppId = "[Application ID saved in step 2.5]"
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $AppId, `
(ConvertTo-SecureString -String "[secret password saved in step 2.11]" -AsPlainText -Force)
New-MigrationEndpoint -RemoteServer outlook.office.com -RemoteTenant ".onmicrosoft.com" `
-Credentials $Credential -ExchangeRemoteMove:$true -Name "MigrationEndpoint01" -ApplicationId $AppId

Onde “<DomínioOrigem>.onmicrosoft.com” é o domínio do qual você vai migrar os usuários

  1. Crie o relacionamento da organização (ou modifique-o, se o relacionamento já existir):
$sourceTenantId="[ID of the source tenant from step 1.6]"
$existingOrgRel = Get-OrganizationRelationship | ?{$_.DomainNames -like $sourceTenantId}
If ($null -ne $existingOrgRel) {
    Set-OrganizationRelationship $existingOrgRel.Name -Enabled:$true -MailboxMoveEnabled:$true -MailboxMoveCapability Inbound
}
Else {
    New-OrganizationRelationship "SourceTenant" -Enabled:$true -MailboxMoveEnabled:$true -MailboxMoveCapability Inbound -DomainNames $sourceTenantId
}

4. Preparação do locatário de origem do Microsoft 365

  1. Faça login no console de administração da Microsoft Entra do locatário de origem.
  2. Acesse o URL https://login.microsoftonline.com/<TargetTenant>.onmicrosoft.com/adminconsent?client_id=[ID do Aplicativo]&redirect_uri=https://office.com, onde <TargetTenant> deve ser substituído pelo nome de domínio do locatário para o qual deseja mover as caixas de correio, e ID do Aplicativo é o que foi salvo anteriormente.
  3. Na janela que aparecer, aceite conceder as permissões à aplicação.
  1. Conecte-se ao PowerShell do Exchange Online do locatário de origem (se você estiver preparando ambos os locatários a partir do mesmo computador, será necessário executar Connect-ExchangeOnline novamente com um parâmetro UserPrincipalName diferente).
  2. Repita os passos 3.6 e 3.7 da seção anterior para o locatário de origem.
  3. Crie um novo grupo de segurança habilitado para email. Usado para definir os usuários que serão movidos:
$UserGroup="[name of the group]" ; New-DistributionGroup -Type Security -Name $UserGroup
  1. Crie um relacionamento de organização (ou modifique-o, se o relacionamento já existir):
$targetTenantId="[ID of the target tenant saved in step 1.6]"
$AppId="[Application ID]"
$existingOrgRel = Get-OrganizationRelationship | ?{$_.DomainNames -like $targetTenantId}
If ($null -ne $existingOrgRel) {
    Set-OrganizationRelationship $existingOrgRel.Name -Enabled:$true -MailboxMoveEnabled:$true `
    -MailboxMoveCapability RemoteOutbound -OAuthApplicationId $AppId -MailboxMovePublishedScopes $UserGroup
}
Else {
    New-OrganizationRelationship "TargetTenant" -Enabled:$true -MailboxMoveEnabled:$true -DomainNames $targetTenantId `
    -MailboxMoveCapability RemoteOutbound  -OAuthApplicationId $AppId -MailboxMovePublishedScopes $UserGroup
}
  1. Mova todos os usuários planejados para serem migrados para o grupo criado no passo 6. Lembre-se de que o uso de grupo aninhado não é recomendado.

5. Preparação das contas de usuário no locatário de destino

O movimento entre locatários de caixas de correio requer objetos MailUser pré-criados no domínio de destino. Os objetos devem ter atributos que correspondam aos atributos da caixa de correio de origem, mais detalhes podem ser encontrados aqui. Certifique-se de que o atributo EmailAddresses esteja configurado corretamente: ele deve conter o atributo LegacyExchangeDN da caixa de correio de origem como um endereço de proxy X500. A maneira mais fácil de realizar a correspondência de atributos é usar o PowerShell.

  1. Na sessão do PowerShell do locatário de origem, execute o script abaixo para exportar os atributos do usuário para um arquivo XML (neste caso, XML se encaixa melhor do que CSV, porque alguns atributos são arrays).
$UserAttributes = "C:\output\UserAttributes.xml" #use seu próprio caminho de arquivo, certifique-se de que a pasta exista
Get-DistributionGroupMember -ResultSize Unlimited $UserGroup | ForEach-Object {Get-Mailbox $_.DisplayName}| `
Select-Object PrimarySMTPAddress,Alias,SamAccountName,FirstName,LastName,DisplayName,Name,ExchangeGuid,`
ArchiveGuid,LegacyExchangeDn,EmailAddresses | Export-Clixml $UserAttributes
  1. Durante a criação de objetos MailUser, especifique as senhas. Portanto, na sessão do PowerShell do locatário de destino, prepare alguma função do PowerShell para geração de senha. Por exemplo, a função abaixo é criada com base na função Get-RandomPassword disponível na PowerShell Gallery.
$symbols = '!@#$%^&amp;*'.ToCharArray()
$characterList = @([char[]]([char]'a'..[char]'z'), [char[]]([char]'A'..[char]'Z'), [char[]]([char]'0'..[char]'9') + $symbols)

function Get-RandomPassword  {
    param(
        [ValidateRange(12, 256)]
        [int]
        $length = 16
    )

    do {
        $password = -join (0..$length | ForEach-Object { $characterList | Get-Random })
        [int]$hasLowerChar = $password -cmatch '[a-z]'
        [int]$hasUpperChar = $password -cmatch '[A-Z]'
        [int]$hasDigit = $password -match '[0-9]'
        [int]$hasSymbol = $password.IndexOfAny($symbols) -ne -1
    }
    until (($hasLowerChar + $hasUpperChar + $hasDigit + $hasSymbol) -ge 3)

    $password | ConvertTo-SecureString -AsPlainText -Force
}
  1. Na sessão do PowerShell do locatário de destino, execute o seguinte script para criar os objetos MailUser. Além disso, ele cria um arquivo CSV que é usado durante a criação do lote de migração.
$MailUsers = Import-Clixml $UserAttributes
$Organization = "@.onmicrosoft.com" #use o nome do locatário de destino
$CSVData = "C:\output\CSVData.csv" #use seu próprio caminho de arquivo, certifique-se de que a pasta exista
Add-Content -Value ("EmailAddress") -Path $CSVData
foreach ($MailUser in $MailUsers) {
    $SMTPAddress = $MailUser.Alias + $Organization
    $SMTPAddress  | out-file $CSVData -append
    $Password = Get-RandomPassword
    $x500 = "x500:" + $MailUser.LegacyExchangeDn
    $UserObject = New-MailUser -MicrosoftOnlineServicesID $SMTPAddress -PrimarySmtpAddress $SMTPAddress `
    -ExternalEmailAddress $MailUser.PrimarySmtpAddress -FirstName $MailUser.FirstName -LastName $MailUser.LastName `
    -Name $MailUser.Name -DisplayName $MailUser.DisplayName -Alias $MailUser.Alias -Password $Password
    $UserObject | Set-MailUser -EmailAddresses @{add = $x500 } -ExchangeGuid $MailUser.ExchangeGuid -ArchiveGuid $MailUser.ArchiveGuid
    $ProxyX500 = $MailUser.EmailAddresses | Where-Object { $_ -match "x500" }
    $ProxyX500 | ForEach-Object { Set-MailUser $MailUser.Alias -EmailAddresses @{add = "$_" } }
}
  1. Ao garantir que os objetos adequados sejam criados no locatário de destino, atribua licenças do Exchange Online aos usuários.
  2. Para validar a configuração, na sessão do PowerShell do locatário de origem execute:
Test-MigrationServerAvailability -EndPoint "MigrationEndpoint01" -TestMailbox "[primary SMTP address of the target user mailbox]"

6. Movimentação de contas de usuário e finalização da migração

Durante as migrações entre inquilinos do Office 365 para o Office 365, as caixas de correio são movidas usando os lotes de migração. Os lotes de migração são os pedidos para alterar a localização das caixas de correio listadas. O lote é criado usando o Centro de Administração do Exchange Online ou usando o cmdlet PowerShell New-MigrationBatch .

  1. Crie o lote de migração a partir da sessão do PowerShell do inquilino de origem. Certifique-se de que o caminho para o arquivo CSV criado anteriormente está correto.
New-MigrationBatch -Name Batch01 -SourceEndpoint "MigrationEndpoint01" -CSVData ([System.IO.File]::ReadAllBytes("C:\output\CSVData.csv"))`
-Autostart -TargetDeliveryDomain .onmicrosoft.com

Observe que a Microsoft não recomenda o uso de lotes com mais de 2000 usuários. Se você tiver um grande número de caixas de correio a serem movidas, crie vários lotes.

  1. Monitore o progresso do movimento do lote a partir do PowerShell (usando o cmdlet Get-MigrationStatistics) ou no centro de administração do Exchange Online (faça login em https://admin.exchange.microsoft.com/ e navegue até Início> Lotes de Migração), procure por erros e avisos.
  2. Depois, use o arquivo com informações de delegação criado anteriormente para reconfigurar as permissões de Enviar em Nome de. Para fazer isso, execute o seguinte na sessão do PowerShell do inquilino de destino:
$delegateelist = Import-Csv "C:\output\delegatee.csv"
foreach ($mailbox in $delegateelist ) {
    Set-Mailbox $mailbox.Delegator -GrantSendOnBehalfTo $mailbox.delegatee)
}

Após a conclusão de todos os passos, sinta-se à vontade para remover o ponto de migração e relacionamento da organização criados.

Como fazer – Conclusão da Migração do Office 365 para o Office 365

A migração bem-sucedida de caixas de correio entre ambientes do Office 365 requer uma avaliação detalhada e execução precisa de vários passos. Este guia forneceu um roteiro abrangente para profissionais de TI navegarem por considerações críticas, permissões e configuração de migração. Ao aderir a esses passos, as organizações conduzem um processo de migração de caixas de correio suave e eficiente, garantindo um tempo de inatividade mínimo e preservando a integridade dos dados.

Source:
https://infrasos.com/how-to-office-365-to-office-365-migration/