fbpx

Como podemos te ajudar hoje?

Configuração de delegação para ADFS/SAML, servidores de arquivos e DFS no Active Directory

Você está aqui:
< Voltar

Atualização do Windows de novembro de 2021

Os patches lançados pela Microsoft durante o Patch Tuesday de novembro de 2021 em 9 de novembro causam compartilhamentos em branco no login com SSO de maneira semelhante a não habilitar corretamente a delegação.

Se os Logins aparecerem repentinamente em branco em uma instalação existente do MyWorkDrive que anteriormente funcionava bem, você precisará corrigir o patch com falha, veja este artigo para detalhes.

Se você estiver configurando o SSO pela primeira vez no servidor MyWorkDrive, consulte o artigo para obter detalhes sobre como aplicar a correção aos seus controladores de domínio, além de configurar a delegação conforme descrito abaixo.
A correção do patch fornecida pelo Windows Update deve ser aplicada manualmente. Sem adicionar a correção para o patch do Windows Update, os logons resultarão em compartilhamentos em branco.

Visão geral

Este artigo descreve as etapas de configuração de delegação para que o ADFS/SAML funcione corretamente com qualquer arquivo back-end e servidores DFS no Active Directory. Quando os compartilhamentos de arquivos estiverem localizados em um servidor diferente do Servidor MyWorkDrive (MWD), serão alcançados por meio de DFS ou os usuários serão autenticados usando ADFS/SAML, para passar corretamente os tokens do usuário para os compartilhamentos de arquivos de back-end, é necessário que o Servidor MyWorkDrive é confiável por quaisquer Servidores de Arquivos e Servidores DFS para delegação.

Active Directory

Usuários e computadores do Active Directory

O método mais comum de configuração da delegação é por meio das propriedades do servidor MyWorkDrive em usuários e computadores do Active Directory. Configure a Delegação do Active Directory no objeto de computador do Servidor MyWorkDrive para adicionar quaisquer Servidores de Arquivos e Servidores DFS em sua organização.

– De um Controlador de Domínio – Gerenciador de Servidores – Ferramentas – Usuários e Computadores do Active Directory – Computadores – {selecione o computador onde o MWD está instalado} – Propriedades – Delegação – Confiar neste computador apenas para delegação a serviços especificados – Usar qualquer protocolo de autenticação – Adicionar – Usuários ou Computadores – {selecione o(s) computador(es) que contém os compartilhamentos de rede necessários e o(s) computador(es) com a função DFS instalada} – OK – Serviços disponíveis – selecione cifs – OK

Nós fortemente recomendo você NÃO SELECIONE a opção que diz "Confiar neste computador para delegação a qualquer servidor (somente Kerberos)". Nós fortemente defenda que você adote uma abordagem de Acesso Mínimo Privilegiado especificando os servidores e serviços conforme descrito acima. Você pode ler mais sobre como proteger seu diretório ativo e riscos de delegação em Petri. com e ADSecurity.org

Exemplo de configuração para permitir que o MWD confie na delegação por meio de File-Server1 e DFS-Server1: – MWD instalado no computador MYWORKDRIVE-SERVER1 – Servidor de compartilhamento de arquivos de rede: FILE-SERVER1 – Servidor DFS: DFS-SERVER1

Com Powershell

Também é possível atribuir a delegação restrita ao CIFS via Powershell, no entanto, é recomendável usar o método GUI por meio do ADUC.

Para fazer isso por meio do Powershell, você deve especificar uma lista de nomes de entidade de serviço (SPNs) do FILESERVER na(s) conta(s) do(s) servidor(es) MyWorkDrive.

No exemplo abaixo, você substituirá “FILESERVER” pelo nome netbios do seu servidor de arquivos e “MWDSERVER” pelo nome netbios do seu servidor MyWorkDrive.

Para obter a lista de SPNs, você pode usar o cmdlet Get-ADComputer e exibir a propriedade servicePrincipalName do FILESERVER

Get-ADComputer FILESERVER -Properties servicePrincipalName | Select-Object -ExpandProperty servicePrincipalName |format-list

você receberá uma lista que inclui entradas como
host/SERVIDOR DE ARQUIVOS
host/FILESERVER.domain.tld

Em seguida, você deve usar o cmdlet Set-ADComputer com o parâmetro msDS-AllowedToDelegate substituindo os valores da seção msDS-AllowedToDelegateTo pelos SPNs do FILESERVER

Get-ADComputer -Identity MWDSERVER | Set-ADAccountControl -TrustedToAuthForDelegation $true
Set-ADComputer -Identity MWDSERVER -Add @{'msDS-AllowedToDelegateTo'=@('cifs/FILESERVER','cifs/FILESERVER.domain.tld')}

Se você tiver mais de um servidor de arquivos, poderá continuar adicionando spns para todos os servidores de arquivos usando o mesmo sytnax.
Se você tiver mais de um servidor MyWorkDrive, precisará executar o conjunto de comandos para cada servidor MyWorkDrive.

Teste

Para testar qual delegação existe usando o Powershell, este comando fornecerá uma lista dos servidores de arquivos que confiam em seu servidor MyWorkDrive para delegação.

Get-ADComputer MWDSERVER -Propriedades msDS-AllowedToDelegateTo,Displayname | selecione Displayname -ExpandProperty msDS-AllowedToDelegateTo | lista de formatos

* Observe que leva pelo menos 15 minutos para o diretório ativo aplicar essas alterações ao banco de dados e replicar – Aguarde pelo menos 15 minutos antes de iniciar o teste de acesso.

Delegação restrita de Kerberos

Alguns ambientes podem exigir o método de configuração alternativo, Kerberos Constrained Delegation (KCD) .

Para clientes com vários domínios ou aqueles que hospedam seu Active Directory no Azure AD Domain Services (isso não é o mesmo que Azure AD), a delegação deve ser habilitada usando a delegação restrita baseada em recursos no powershell. Alguns clientes em ambientes de alta segurança ou ao usar appliances de serviço de arquivos também podem exigir delegação restrita baseada em recursos.

As etapas de configuração do Powershell para domínios do Server 2012 ou superior estão localizadas no artigo da Microsoft sobre como habilitar a delegação restrita de Kerberos (KCD) em um domínio gerenciado e Como configurar a delegação do computador com powershell.

Um exemplo de comando do servidor MyWorkDrive para um servidor de arquivos e servidor MyWorkDrive é o seguinte:

Domínio único:

Set-ADComputer MyWorkDriveServer -PrincipalsAllowedToDelegateToAccount (Get-ADComputer FileServer)

Múltiplos Domínios onde o Servidor MyWorkDrive, Usuários ou Recursos estão em domínios diferentes:

No servidor Windows que hospeda os compartilhamentos de arquivos reais que confiarão no servidor MyWorkDrive, execute um conjunto dos seguintes comandos powershell: em que $MyWorkDriveServer é o nome do servidor MyWorkDrive e $FileServer é o nome do servidor de arquivos que está inserindo seu domínio onde o servidor MyWorkDrive está localizado em sua consulta na base de pesquisa ou usando o controlador de domínio especificado do qual o servidor MyWorkDrive é membro:

Controlador de domínio especificado:

$MyWorkDriveServer= Get-ADComputer -Identity MYWORKDRIVE-SERVER -server mwf-dc.mwf.local

$FileServer= Get-ADComputer -Identity “FILE-SERVER” -server mwf-dc.mwf.local

$FileServer2= GetADComputer – Identificar “FILE-SERVER2” – servidor mwf2.dc.mwf2.local

Set-ADComputer ($FileServer),($FileServer2) -PrincipalsAllowedToDelegateToAccount $MyWorkDriveServer

Base de pesquisa:

$MyWorkDriveServer= Get-ADComputer -Filter {Name -eq “MYWORKDRIVE-SERVER”} -SearchBase “DC=MWF,DC=local” -Server “mwf.local”

$FileServer= Get-ADComputer -Filter {Name -eq “FILE-SERVER”} -SearchBase “DC=MWF,DC=local” -Server “mwf.local”

Set-ADComputer $FileServer -PrincipalsAllowedToDelegateToAccount $MyWorkDriveServer

 

Conta de usuário de armazenamento dos serviços de domínio do Azure AD

Para habilitar a delegação, precisamos usar o comando powershell abaixo para definir a conta de usuário de armazenamento para confiar no computador do servidor MyWorkDrive conforme permitido para delegar:

$ImpersonatingAccount = Get-ADComputer -Identity
Set-ADUser -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount

 

Teste

Para verificar a delegação, execute o seguinte comando do powershell:

Get-ADComputer $MyWorkDriveServer -Propriedades * | Format-List -Property *delegat*,msDS-AllowedToActOnBehalfOfOtherIdentity

Ou

A partir do MyWorkDrive Server 5.4 ou superior, execute os testes no painel de administração do MyWorkDrive Server em cada compartilhamento usando nossa ferramenta de teste integrada.

Casos Especiais – DFS e AzureFiles

DFS

Ao usar o DFS com SSO e MyWorkDrive, você deve configurar a Delegação para o servidor MyWorkDrive para os computadores DFS E os servidores de compartilhamento de arquivos.

IE, se você tiver os seguintes servidores

DFS1 DFS2

Configurado para compartilhar arquivos dos seguintes servidores de arquivos (dispositivos de armazenamento Windows ou AD Joined) FileShareSanJose FileShareHouston FileShareNewYork

Em seguida, todos os cinco membros do AD devem aparecer como aprovados para delegar via CIFS na guia Delegação do AD do Servidor MyWorkDrive

Arquivos do Azure

Quando você tiver concluído com êxito nosso guia de configuração para usar os Arquivos do Azure com MyWorkDrive, sua conta de armazenamento de arquivos do Azure será um membro do domínio. Esse membro do domínio precisa ser adicionado à Delegação para o servidor MyWorkDrive para que o SSO apresente adequadamente essa unidade como um compartilhamento para os usuários.

Solução de problemas

Se seus compartilhamentos estiverem em branco quando os usuários fizerem login via SSO, é provável que a Delegação não esteja configurada corretamente. Se você acredita que configurou corretamente a Delegação via KCD ou Active Directory, você pode usar o Powershell para testar se o servidor/dispositivo de compartilhamento de arquivos está aceitando a delegação corretamente. Isso informará se o usuário conectado pode acessar arquivos e pastas no compartilhamento de arquivos delegado.

Você pode usar um script Powershell muito simples para testar se a Delegação está configurada corretamente, usando uma técnica conhecida como “Double Hop”. Informações adicionais sobre este teste podem ser encontradas em https://4sysops.com/archives/solve-the-powershell-multi-hop-problem-without-using-credssp/ Para realizar este teste, você precisará de 3 máquinas em seu diretório ativo

  • Cliente – pode ser qualquer máquina associada ao domínio; como uma estação de trabalho Windows 10. Você executará o comando Powershell da máquina.
  • Servidor MyWorkDrive – o servidor que deve poder acessar o compartilhamento via delegação
  • Servidor de Arquivos – o servidor que está definido para Delegação no Servidor MyWorkDrive.

Você também precisará saber o caminho de um compartilhamento no servidor de arquivos que contém arquivos, que o usuário conectado pode acessar. O comando powershell é Invoke-Command -ComputerName $MyWorkDriveServerName -ScriptBlock {Get-ChildItem -Path \\$FileServer\ShareName } Você substituirá $MyWorkDriveServerName pelo nome de rede do seu servidor MyWorkDrive. Você substituirá $FileServer\ShareName pelo servidor de arquivos e compartilhamento que deseja testar. O compartilhamento deve conter arquivos aos quais você espera que o usuário tenha acesso. E execute o comando da estação do Cliente Exemplo Em nosso exemplo, estamos testando a delegação para um Linux Samba Share de dois servidores MyWorkDrive diferentes. Um servidor MyWorkDrive tem delegação definida, o outro não. Estamos testando a partir de um cliente Windows 10 no domínio. Delegação não configurada Neste teste, testaremos a delegação em um servidor em que intencionalmente não configuramos a delegação e esperamos um erro.

  • Servidor MyWorkDrive: mwf-scott6
  • Servidor de arquivos: ubuntu-samba
  • Compartilhe: todos

Execute o Powershell no membro de domínio do Windows 10 e execute o seguinte comando Invoke-Command -ComputerName mwf-scott6 -ScriptBlock {Get-ChildItem -Path \\ubuntu-samba\everyone } Os resultados que obtemos são: Um erro informando que o caminho do arquivo não existe. A delegação não funcionou e nosso usuário não conseguiu acessar o compartilhamento. Nesse cenário, o compartilhamento aparecerá em branco quando o usuário fizer login no MyWorkDrive via SSO. Este é o resultado esperado, pois não configuramos a delegação. Também pode indicar que seu servidor de arquivos/dispositivo não está aceitando delegação, se configurado corretamente. Configuração de delegação Neste teste, testaremos a delegação em um servidor onde a delegação está configurada corretamente

  • Servidor MyWorkDrive: mwf-scott5
  • Servidor de arquivos: ubuntu-samba
  • Compartilhe: todos

Execute o Powershell no membro de domínio do Windows 10 e execute o seguinte comando Invoke-Command -ComputerName mwf-scott5 -ScriptBlock {Get-ChildItem -Path \\ubuntu-samba\everyone } Os resultados que obtemos são: Uma lista de arquivos e pastas no diretório. A delegação funcionou e nosso usuário conseguiu acessar o compartilhamento.