Pular para o conteúdo
Identidades HíbridasTutorial · vídeo + passo a passo

Desativando o Entra Connect: do AD para a nuvem com usuários cloud only

Foto de Daniel Almeida
Daniel Almeida · 10 min de leitura

O vídeo é carregado do YouTube quando você clica em reproduzir.

O que você vai fazer

Como passar a fonte de autoridade de um usuário do AD para o Entra ID com o Graph Explorer e, depois, desligar a sincronização do tenant inteiro: parar o agendador, desinstalar o Entra Connect e deixar todos os usuários cloud only.

Pré-requisitos

  • Um tenant com o Microsoft Entra Connect Sync sincronizando o AD local (aqui, as duas florestas da série: mcait.local e mcacloud.local).
  • Uma conta com a função Administrador de Identidade Híbrida (Hybrid Identity Administrator) ou Administrador Global.
  • Entra Connect Sync na versão 2.5.76.0 ou superior para a troca de fonte de autoridade por usuário.
  • O módulo Microsoft Graph PowerShell instalado no servidor onde for desligar a sincronização do tenant.

Esse é o último passo da série do Entra Connect. Até aqui, instalamos o Entra Connect, colocamos um segundo servidor em Staging Mode, sincronizamos a floresta de uma empresa adquirida para o mesmo tenant e criamos a relação de confiança entre os dois ADs. Agora fechamos o ciclo: tirar os usuários do controle do AD e deixar tudo gerenciado direto na nuvem.

Existem dois caminhos, e o laboratório mostra os dois:

CaminhoComo funcionaQuando usar
Usuário por usuárioA sincronização continua ligada. Você troca a fonte de autoridade (SOA) só dos usuários escolhidos.Migração gradual, por departamento ou por empresa, sem parar o resto.
Tenant inteiroPara o agendador, desinstala o Entra Connect e desliga a sincronização do tenant.Quando o AD local vai deixar de ser a origem das identidades de uma vez.

O que é a fonte de autoridade (SOA)? É quem manda no usuário. Enquanto o usuário é sincronizado, a fonte é o AD local: qualquer mudança tem que ser feita lá e é levada para a nuvem pelo Entra Connect. Depois da troca, quem manda é o Entra ID, e o usuário passa a ser editado direto no portal.

E a senha? Continua a mesma. Com a sincronização de hash de senha ligada, o hash já está no Entra ID, e o usuário segue entrando com a senha que tinha.

Antes de começar

O que conferirPor quê
Função de administradorA troca de SOA exige no mínimo Administrador de Identidade Híbrida. Para dar o consentimento da permissão no Graph Explorer, é preciso ser Administrador de Aplicativos, Administrador de Aplicativos de Nuvem ou Administrador Global.
Versão do Entra ConnectA troca de SOA por usuário precisa da versão 2.5.76.0 ou superior. Nas anteriores, o Entra Connect não respeita a marcação e volta a sobrescrever o usuário.
Um último DeltaGarante que a nuvem fica com a última versão de tudo o que mudou no AD antes do desligamento.
A ordem oficialParar o agendador, desinstalar o Entra Connect (o ativo e o de staging) e só então desligar o tenant.
Não tem volta rápidaDepois de desligar o tenant, é preciso esperar 72 horas para poder religar a sincronização.

Parte 1: um usuário por vez (SOA)

Aqui a sincronização continua ligada. Vamos passar só a Camila Silva, da empresa adquirida, para a nuvem.

Confira o usuário sincronizado

No Microsoft Entra admin center, vá em Entra ID › Users. Na coluna On-premises sync enabled, a Camila está com Yes: ela vem do AD local.

Figura 1. Lista de usuários no Entra admin center com a coluna On-premises sync enabled e a Camila Silva com Yes.

Abra a Camila e vá em Properties, aba Job Information. Os campos estão cinza: não dá para editar nada aqui, porque quem manda nela é o AD.

Figura 2. Aba Job Information da Camila Silva com todos os campos bloqueados para edição.

Abra o Graph Explorer e confira a permissão

A troca de SOA é feita pelo Microsoft Graph. O jeito mais simples é o Graph Explorer, no navegador:

https://developer.microsoft.com/graph/graph-explorer
  1. Clique no ícone de login, no canto superior direito, e entre com a conta de administrador do tenant. Confira se aparece o nome do seu tenant ali em cima.
  2. Na área da consulta, abra a aba Modify permissions e procure User-OnPremisesSyncBehavior.ReadWrite.All.
  3. Clique em Consent e aceite. Essa permissão exige consentimento de administrador.
Figura 3. Aba Modify permissions do Graph Explorer com a permissão User-OnPremisesSyncBehavior.ReadWrite.All.

Por que no meu não pediu? O consentimento fica salvo para o Graph Explorer no tenant. Na primeira vez, ele abre a tela pedindo a aprovação do administrador; nas próximas, a permissão já aparece concedida.

Consulte quem manda no usuário (GET)

Configure a consulta assim:

  • Método: GET
  • Versão: beta (o onPremisesSyncBehavior só existe na beta)
  • Endereço, com o UPN do usuário:
https://graph.microsoft.com/beta/users/camila.silva@mcasecurity.com.br/onPremisesSyncBehavior

Clique em Run query. A resposta é 200 OK com "isCloudManaged": false: quem manda na Camila ainda é o AD.

Figura 4. Graph Explorer com o GET em beta, resposta 200 OK e isCloudManaged false.

Passe o usuário para a nuvem (PATCH)

Mantenha o mesmo endereço e troque só o método para PATCH. Na aba Request body, cole:

{
  "isCloudManaged": true
}

Clique em Run query. A resposta é 204 No Content: a alteração foi feita. O {} vazio é normal, porque o 204 não devolve conteúdo.

Figura 5. Graph Explorer com o PATCH, o corpo isCloudManaged true e a resposta 204 No Content.

GET lê, PATCH altera. O GET não precisa de corpo. O PATCH precisa dizer o que mudar, e é o corpo isCloudManaged: true que faz a troca. Sem ele, a resposta é um erro (veja em Erros comuns).

Confira a troca

Volte para GET e rode de novo. Agora vem "isCloudManaged": true.

Figura 6. Graph Explorer com o GET mostrando isCloudManaged true.

No portal, atualize a lista de usuários: a Camila passa para No na coluna On-premises sync enabled. No laboratório, isso apareceu quase na hora.

Figura 7. Lista de usuários com a Camila Silva já como No em On-premises sync enabled.

Abra de novo Properties › Job Information: os campos agora estão liberados para edição.

Figura 8. Aba Job Information da Camila com os campos editáveis.

Prove que o AD não manda mais

Falta a prova de que o AD não sobrescreve mais a Camila. No MCACLOUD01, abra Active Directory Users and Computers, entre nas propriedades da Camila e, na aba Organization, preencha o Job Title (aqui, “Analista Comercial”). Clique em OK.

Figura 9. Propriedades da Camila Silva no AD da adquirida com o Job Title Analista Comercial.

No servidor do Entra Connect (MCAIT03), rode um ciclo Delta:

Start-ADSyncSyncCycle -PolicyType Delta

O Delta envia para a nuvem só o que mudou no AD desde o último ciclo. Acompanhe no Synchronization Service Manager até os conectores terminarem.

Figura 10. Synchronization Service Manager rodando o Delta Import do mcacloud.local.

No portal, abra a Camila: o Job title continua vazio. A mudança feita no AD não chegou, e o On-premises sync enabled está como No. O Entra ID é a fonte de autoridade dela.

Figura 11. Propriedades da Camila no portal com o Job title vazio e On-premises sync enabled No.

Dá para voltar atrás? Sim, mas tem um passo a mais. Por padrão, o tenant bloqueia a volta da nuvem para o AD (a configuração blockCloudObjectTakeoverThroughHardMatchEnabled). Desative esse bloqueio, rode o mesmo PATCH com "isCloudManaged": false e, no próximo ciclo do Entra Connect, o AD volta a mandar no usuário e sobrescreve o que foi alterado na nuvem. Depois, ative o bloqueio de novo. O passo a passo está na documentação da Microsoft.

Parte 2: o tenant inteiro

Aqui não tem volta rápida. Todos os passos são feitos no servidor ativo do Entra Connect (MCAIT03), menos a desinstalação do servidor de staging (MCAIT02).

Duas florestas, um desligamento. O MCAIT03 sincroniza o mcait.local e o mcacloud.local. Ao parar e desinstalar o Entra Connect nele, as duas florestas param de sincronizar juntas. O mesmo vale para o Update-MgOrganization, que desliga o tenant inteiro de uma vez.

Rode um último Delta e pare o agendador

Abra o PowerShell como administrador no MCAIT03:

Start-ADSyncSyncCycle -PolicyType Delta

Espere o ciclo terminar no Synchronization Service Manager. Depois, pare o agendador, que é o relógio que roda a sincronização a cada 30 minutos, e confira:

Set-ADSyncScheduler -SyncCycleEnabled $false
Get-ADSyncScheduler

No resultado, procure SyncCycleEnabled : False.

Figura 12. PowerShell no MCAIT03 com o Delta, o Set-ADSyncScheduler e o SyncCycleEnabled False.

Desinstale o Entra Connect do servidor ativo

No MCAIT03, abra Control Panel › Programs and Features, selecione Microsoft Entra Connect Sync e clique em Uninstall. Confirme com Yes.

Figura 13. Programs and Features com o Microsoft Entra Connect Sync selecionado e a confirmação de desinstalação.

O assistente pede uma conta de Administrador de Identidade Híbrida ou Administrador Global do tenant. Ele usa essa conta para desligar no Entra ID os recursos ligados à sincronização, como a sincronização de hash de senha. Informe a conta e clique em Next.

Figura 14. Tela Connect to Microsoft Entra ID do assistente de desinstalação, pedindo a conta de administrador.

Atenção à conta. Se aparecer uma conta guardada de outro tenant na tela de escolha, clique em Use another account e digite a conta do tenant certo.

Deixe marcada a opção Also uninstall supporting components, que remove também o SQL Server LocalDB e os drivers instalados com o Entra Connect, e clique em Remove.

Figura 15. Assistente Uninstall Microsoft Entra Connect Sync removendo os componentes.

No fim, o Entra Connect Sync some da lista de programas.

Figura 16. Programs and Features no MCAIT03 sem o Microsoft Entra Connect Sync.

Desinstale também o servidor de staging

Repita o processo no MCAIT02. Mesmo em Staging Mode, ele guarda a configuração e as credenciais dos conectores e, se alguém o tirar do staging, volta a sincronizar. Não deixe nenhum Entra Connect para trás.

Figura 17. Desinstalação concluída no MCAIT02, com todos os componentes removidos.

O aviso no final. O assistente avisa que o Microsoft Entra ID vai começar a mandar alertas de “sem atividade de sincronização”. Depois de desligar o tenant, esses alertas param de fazer sentido e podem ser ignorados.

Desligue a sincronização no tenant

Esses comandos usam o módulo Microsoft Graph PowerShell. Para conferir se está instalado:

Get-Module Microsoft.Graph* -ListAvailable

Se não aparecer nada, instale antes:

Install-Module Microsoft.Graph -Scope CurrentUser

Conecte no tenant com permissão para alterar a organização:

Connect-MgGraph -Scopes "Organization.ReadWrite.All"

Entre com a conta de administrador do tenant. A resposta é Welcome to Microsoft Graph!. O ID que aparece em Connected via delegated access using é o do aplicativo Microsoft Graph PowerShell, igual para todo mundo.

Figura 18. PowerShell com o Connect-MgGraph e a mensagem Welcome to Microsoft Graph.

Agora guarde o ID do tenant numa variável e desligue a sincronização:

$OrgID = (Get-MgOrganization).Id
Update-MgOrganization -OrganizationId $OrgID -BodyParameter @{ onPremisesSyncEnabled = $false }

Para conferir:

Get-MgOrganization | Select OnPremisesSyncEnabled

O resultado vem em branco. A documentação mostra False, mas, tanto no ensaio quanto na gravação, o valor veio vazio logo depois do comando, e os usuários passaram para cloud only normalmente. O que importa é que ele deixou de ser True.

O que é apagado. Ao desligar a sincronização, o Entra ID limpa dos usuários alguns atributos que vinham do AD, como o OnPremisesDistinguishedName, o OnPremisesSamAccountName e o OnPremisesUserPrincipalName. O resto do usuário, incluindo a senha, continua igual.

Figura 19. PowerShell com o $OrgID, o Update-MgOrganization e o OnPremisesSyncEnabled em branco.

Confira os usuários na nuvem

No portal, em Entra ID › Users, atualize a lista algumas vezes. Os usuários das duas florestas vão passando para No na coluna On-premises sync enabled. No laboratório, levou alguns minutos; em tenants grandes, pode demorar mais.

Figura 20. Lista de usuários com todos como No em On-premises sync enabled.

Pronto: todos os usuários das duas empresas agora são cloud only, gerenciados direto no Entra ID.

Erros comuns

404 Not Found no GET

"code": "Request_ResourceNotFound"

Se aparecer o aviso You are currently using a sample account, você não está logado: a consulta rodou no tenant de exemplo da Microsoft, onde o usuário não existe. Faça o login no canto superior direito e rode de novo. Se já estiver logado, confira o UPN exato do usuário no portal.

Figura 21. Graph Explorer com erro 404 e o aviso de conta de exemplo.

400 Bad Request no PATCH

"message": "Empty Payload. JSON content expected."

O PATCH foi enviado sem corpo. Cole o { "isCloudManaged": true } na aba Request body antes de clicar em Run query.

Figura 22. Graph Explorer com erro 400 Empty Payload no PATCH.

Login com a conta errada

Tanto o assistente de desinstalação quanto o Connect-MgGraph mostram as contas guardadas no servidor. Se a conta listada for de outro tenant, use Use another account (ou Work or school account, na janela do PowerShell) e digite a conta do tenant certo.

Resumindo

Para tirar um usuário de cada vez do controle do AD, basta trocar a fonte de autoridade dele no Graph com o isCloudManaged: true, sem mexer no resto da sincronização. Para encerrar de vez, a ordem é: um último Delta, parar o agendador, desinstalar o Entra Connect no servidor ativo e no de staging, e desligar a sincronização do tenant com o Update-MgOrganization. Em poucos minutos, todos os usuários passam a ser gerenciados só na nuvem, com a mesma senha de sempre.

Com isso, fechamos a série do Entra Connect.

Referências:

Continue lendo