Suporte a vários domínios para federação com o ID do Microsoft Entra

A documentação a seguir fornece orientação sobre como usar vários domínios e subdomínios de nível superior ao federar com domínios do Microsoft 365 ou do Microsoft Entra.

Suporte a vários domínios de nível superior

A federação de vários domínios de nível superior com o Microsoft Entra ID requer alguma configuração extra que não é necessária ao federar com um domínio de nível superior.

Quando um domínio é federado com o Microsoft Entra ID, várias propriedades são definidas no domínio no Azure. Um importante é o IssuerUri. Esta propriedade é um URI usado pelo ID do Microsoft Entra para identificar o domínio ao qual o token está associado. O URI não precisa resolver nada, mas deve ser um URI válido. Por padrão, a ID do Microsoft Entra define o URI como o valor do identificador do serviço de federação na configuração do AD FS local.

Observação

O identificador de serviço de federação é um URI que identifica exclusivamente um serviço de federação. O serviço de federação é uma instância do AD FS que funciona como o serviço de token de segurança.

Você pode exibir o IssuerUri usando o comando Get-MsolDomainFederationSettings -DomainName <your domain>PowerShell.

Observação

Os módulos Azure AD e MSOnline PowerShell foram preteridos a partir de 30 de março de 2024. Para saber mais, leia a atualização de descontinuação. Após essa data, o suporte para esses módulos é limitado à assistência de migração para o SDK do Microsoft Graph PowerShell e correções de segurança. Os módulos preteridos continuarão a funcionar até 30 de março de 2025.

Recomendamos migrar para o Microsoft Graph PowerShell para interagir com o Microsoft Entra ID (anteriormente Azure AD). Para perguntas comuns sobre migração, consulte as Perguntas frequentes sobre migração. Nota: As versões 1.0.x do MSOnline podem sofrer interrupções após 30 de junho de 2024.

Um problema surge quando você adiciona mais de um domínio de nível superior. Por exemplo, digamos que você tenha configurado a federação entre a ID do Microsoft Entra e seu ambiente local. Para este documento, o domínio, bmcontoso.com está sendo usado. Agora, um segundo domínio, de nível superior, bmfabrikam.com foi adicionado.

Uma captura de tela mostrando vários domínios de nível superior

Quando você tenta converter o domínio bmfabrikam.com a ser federado, ocorre um erro. O motivo é que o Microsoft Entra ID tem uma restrição que não permite que a propriedade IssuerUri tenha o mesmo valor para mais de um domínio.

Captura de tela que mostra um erro de federação no PowerShell.

Parâmetro SupportMultipleDomain

Para contornar essa restrição, você precisa adicionar um IssuerUri diferente, o que pode ser feito usando o -SupportMultipleDomain parâmetro. Esse parâmetro é usado com os seguintes cmdlets:

  • New-MsolFederatedDomain
  • Convert-MsolDomaintoFederated
  • Update-MsolFederatedDomain

Esse parâmetro faz com que o Microsoft Entra ID configure o IssuerUri para que ele seja baseado no nome do domínio. O IssuerUri será exclusivo entre diretórios no Microsoft Entra ID. O uso do parâmetro permite que o comando PowerShell seja concluído com êxito.

Captura de tela que mostra uma conclusão bem-sucedida do comando PowerShell.

-SupportMultipleDomain não altera os outros pontos de extremidade, que ainda estão configurados para apontar para o serviço de federação em adfs.bmcontoso.com.

-SupportMultipleDomain também garante que o sistema AD FS inclua o valor de Emissor adequado em tokens emitidos para o Microsoft Entra ID. Esse valor é definido pegando a parte do domínio do UPN do usuário e usando-o como o domínio no IssuerUri, ou seja, https://{upn suffix}/adfs/services/trust.

Assim, durante a autenticação para Microsoft Entra ID ou Microsoft 365, o elemento IssuerUri no token do usuário é usado para localizar o domínio no Microsoft Entra ID. Se não for possível encontrar uma correspondência, a autenticação falhará.

Por exemplo, se o UPN de um usuário for bsimon@bmcontoso.com, o elemento IssuerUri no token, emissor do AD FS, será definido como http://bmcontoso.com/adfs/services/trust. Este elemento corresponde à configuração do Microsoft Entra e a autenticação é bem-sucedida.

A seguinte regra de declaração personalizada implementa essa lógica:

c:[Type == "http://schemas.xmlsoap.org/claims/UPN"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid", Value = regexreplace(c.Value, ".+@(?<domain>.+)", "http://${domain}/adfs/services/trust/"));

Importante

Para usar a opção -SupportMultipleDomain ao tentar adicionar novos domínios ou converter domínios já existentes, sua confiança federada precisa já ter sido configurada para dar suporte a eles.

Como atualizar a confiança entre o AD FS e o ID do Microsoft Entra

Se você não configurou a confiança federada entre o AD FS e sua instância do Microsoft Entra ID, talvez seja necessário recriar essa confiança. O motivo é que, quando é originalmente configurado sem o -SupportMultipleDomain parâmetro, o IssuerUri é definido com o valor padrão. Na captura de tela abaixo, você pode ver que o IssuerUri está definido como https://adfs.bmcontoso.com/adfs/services/trust.

Se você adicionou com êxito um novo domínio no centro de administração do Microsoft Entra e, em seguida, tenta convertê-lo usando Convert-MsolDomaintoFederated -DomainName <your domain>o , você receberá o seguinte erro.

Captura de tela que mostra um erro de federação no PowerShell depois de tentar converter um novo domínio com o comando

Se você tentar adicionar a -SupportMultipleDomain opção, receberá o seguinte erro:

Captura de tela que mostra um erro de federação após adicionar a opção

Simplesmente tentar executar Update-MsolFederatedDomain -DomainName <your domain> -SupportMultipleDomain no domínio original também resultará em um erro.

Erro de federação

Use as etapas abaixo para adicionar um domínio de nível superior adicional. Se você já adicionou um domínio e não usou o -SupportMultipleDomain parâmetro, comece com as etapas para remover e atualizar seu domínio original. Se você ainda não adicionou um domínio de nível superior, pode começar com as etapas para adicionar um domínio usando o PowerShell do Microsoft Entra Connect.

Use as etapas a seguir para remover a confiança do Microsoft Online e atualizar seu domínio original.

  1. No servidor de federação do AD FS, abra o Gerenciamento do AD FS.
  2. À esquerda, expanda Relações de Confiança e Relações de Confiança de Terceira Parte Confiável.
  3. À direita, exclua a entrada Microsoft Office 365 Identity Platform . Remover o Microsoft Online
  4. Em uma máquina que tenha o módulo Azure AD PowerShell instalado, execute o seguinte PowerShell: $cred=Get-Credential.
  5. Introduza o nome de utilizador e a palavra-passe de um Administrador de Identidade Híbrida para o domínio Microsoft Entra com o qual está a federar.
  6. Em PowerShell, digite Connect-MsolService -Credential $cred.
  7. Em PowerShell, digite Update-MSOLFederatedDomain -DomainName <Federated Domain Name> -SupportMultipleDomain. Esta atualização é para o domínio original. Então, usando os domínios acima, seria: Update-MsolFederatedDomain -DomainName bmcontoso.com -SupportMultipleDomain

Use as etapas a seguir para adicionar o novo domínio de nível superior usando o PowerShell

  1. Em uma máquina que tenha o módulo Azure AD PowerShell instalado, execute o seguinte PowerShell: $cred=Get-Credential.
  2. Digite o nome de usuário e a senha de um Administrador de Identidade Híbrida para o domínio do Microsoft Entra com o qual você está federando
  3. No PowerShell, insira Connect-MsolService -Credential $cred
  4. No PowerShell, insira New-MsolFederatedDomain –SupportMultipleDomain –DomainName

Use as etapas a seguir para adicionar o novo domínio de nível superior usando o Microsoft Entra Connect.

  1. Inicie o Microsoft Entra Connect a partir do ambiente de trabalho ou do menu Iniciar
  2. Escolha "Adicionar um domínio adicional do Microsoft Entra" Captura de tela que mostra a página
  3. Introduza o ID do Microsoft Entra e as credenciais do Ative Directory
  4. Selecione o segundo domínio que deseja configurar para federação. Adicionar um domínio adicional do Microsoft Entra
  5. Clique em Instalar

Verificar o novo domínio de nível superior

Usando o comando Get-MsolDomainFederationSettings -DomainName <your domain>PowerShell, você pode exibir o IssuerUri atualizado. A captura de tela abaixo mostra que as configurações de federação foram atualizadas no domínio original http://bmcontoso.com/adfs/services/trust

E o IssuerUri no novo domínio foi definido como https://bmcontoso.com/adfs/services/trust

Suporte para subdomínios

Quando você adiciona um subdomínio, devido à maneira como o Microsoft Entra ID lidou com domínios, ele herda as configurações do pai. Então, o IssuerUri, precisa corresponder aos pais.

Então, digamos, por exemplo, que eu tenho bmcontoso.com e depois adiciono corp.bmcontoso.com. O IssuerUri para um usuário de corp.bmcontoso.com precisa ser http://bmcontoso.com/adfs/services/trust. No entanto, a regra padrão implementada acima para o Microsoft Entra ID gera um token com um emissor como http://corp.bmcontoso.com/adfs/services/trust, que não corresponderá ao valor necessário do domínio e a autenticação falha.

Como habilitar o suporte para subdomínios

Para contornar esse comportamento, a confiança de terceira parte confiável do AD FS para Microsoft Online precisa ser atualizada. Para fazer isso, você deve configurar uma regra de declaração personalizada para que ela remova todos os subdomínios do sufixo UPN do usuário ao construir o valor Emissor personalizado.

Use a seguinte alegação:

c:[Type == "http://schemas.xmlsoap.org/claims/UPN"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid", Value = regexreplace(c.Value, "^.*@([^.]+\.)*?(?<domain>([^.]+\.?){2})$", "http://${domain}/adfs/services/trust/"));

[! NOTA] O último número no conjunto de expressões regulares é quantos domínios pai existem no seu domínio raiz. Aqui bmcontoso.com é usado, portanto, dois domínios pai são necessários. Se três domínios pai fossem mantidos (ou seja, corp.bmcontoso.com), então o número teria sido três. Eventualmente um intervalo pode ser indicado, a correspondência é feita para corresponder ao máximo de domínios. "{2,3}" corresponde a dois a três domínios (ou seja, bmfabrikam.com e corp.bmcontoso.com).

Use as etapas a seguir para adicionar uma declaração personalizada para oferecer suporte a subdomínios.

  1. Abrir a Gestão do AD FS
  2. Clique com o botão direito do mouse na relação de confiança do RP Online da Microsoft e escolha Editar regras de declaração
  3. Selecione a terceira regra de declaração e substitua Editar reivindicação
  4. Substitua a reivindicação atual:
c:[Type == "http://schemas.xmlsoap.org/claims/UPN"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid", Value = regexreplace(c.Value, ".+@(?<domain>.+)","http://${domain}/adfs/services/trust/"));

com

c:[Type == "http://schemas.xmlsoap.org/claims/UPN"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid", Value = regexreplace(c.Value, "^.*@([^.]+\.)*?(?<domain>([^.]+\.?){2})$", "http://${domain}/adfs/services/trust/"));

Substituir reivindicação

  1. Clique em Ok. Clique em Aplicar. Clique em Ok. Feche o Gerenciamento do AD FS.

Próximos passos

Agora que você tem o Microsoft Entra Connect instalado, você pode verificar a instalação e atribuir licenças.

Saiba mais sobre esses recursos, que foram habilitados com a instalação: Atualização automática, Impedir exclusões acidentais e Microsoft Entra Connect Health.

Saiba mais sobre estes tópicos comuns: agendador e como acionar a sincronização.

Saiba mais sobre como integrar suas identidades locais com a ID do Microsoft Entra.