Montar um compartilhamento de arquivo do SMB do Azure

O processo descrito neste artigo verifica se o compartilhamento de arquivos SMB e as permissões de acesso estão configurados corretamente e se você pode montar seu compartilhamento de arquivos SMB do Azure.

Aplica-se a

Tipo de compartilhamento de arquivos SMB NFS
Compartilhamentos de arquivos padrão (GPv2), LRS/ZRS Sim Não
Compartilhamentos de arquivos padrão (GPv2), GRS/GZRS Sim Não
Compartilhamento de arquivos premium (FileStorage), LRS/ZRS Sim Não

Pré-requisitos de montagem

Antes de poder montar o compartilhamento de arquivos do Azure, verifique se os seguintes pré-requisitos foram atendidos:

  • Certifique-se de que você concedeu permissões no nível de compartilhamento e configurou permissões no nível de diretório e arquivo. Lembre-se de que a atribuição de função no nível de compartilhamento poderá levar algum tempo para entrar em vigor.
  • Se você estiver montando o compartilhamento de arquivo de um cliente que já se conectou ao compartilhamento de arquivo usando sua chave de conta de armazenamento, certifique-se de que você desconectou o compartilhamento e removeu as credenciais persistentes da chave da conta de armazenamento. Para obter instruções sobre como remover credenciais em cache e excluir as conexões SMB existentes antes de iniciar uma nova conexão com os serviços de domínio do Active Directory (AD DS) ou credenciais do Microsoft Entra, siga o processo de duas etapas na página de perguntas frequentes.
  • Se sua origem do AD for AD DS ou Kerberos do Microsoft Entra, seu cliente deverá ter conectividade de rede irrestrita com seu AD DS. Se o computador ou a VM estiver fora da rede gerenciada pelo AD DS, será necessário habilitar a VPN para acessar o AD DS para autenticação.
  • Conecte-se ao cliente usando as credenciais da identidade do AD DS ou Microsoft Entra à qual você concedeu permissões.

Montar um compartilhamento de arquivo de uma VM conectada ao domínio

Execute o seguinte script do PowerShell ou use o portal do Azure para montar persistentemente o compartilhamento de arquivo do Azure e mapear para a unidade Z: no Windows. Se Z: já estiver em uso, substitua-o por uma letra de unidade disponível. Como você já foi autenticado, não será necessário fornecer a chave de conta de armazenamento. O script verificará se essa conta de armazenamento está acessível pela porta TCP 445, que é a porta que o SMB usa. Lembre-se de substituir os valores de espaço reservado por seus próprios valores. Para obter mais informações, veja Usar um compartilhamento de arquivo do Azure com o Windows.

A menos que você esteja usando nomes de domínio personalizados, você deve montar compartilhamentos de arquivos do Azure usando o sufixo file.core.windows.net, mesmo se você configurar um ponto de extremidade privado para seu compartilhamento.

$connectTestResult = Test-NetConnection -ComputerName <storage-account-name>.file.core.windows.net -Port 445
if ($connectTestResult.TcpTestSucceeded) {
    cmd.exe /C "cmdkey /add:`"<storage-account-name>.file.core.windows.net`" /user:`"localhost\<storage-account-name>`""
    New-PSDrive -Name Z -PSProvider FileSystem -Root "\\<storage-account-name>.file.core.windows.net\<file-share-name>" -Persist -Scope global
} else {
    Write-Error -Message "Unable to reach the Azure storage account via port 445. Check to make sure your organization or ISP is not blocking port 445, or use Azure P2S VPN, Azure S2S VPN, or Express Route to tunnel SMB traffic over a different port."
}

Você também pode usar o comando net-use de um prompt do Windows para montar o compartilhamento de arquivos. Substitua <YourStorageAccountName> e <FileShareName> por valores próprios.

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName>

Se você tiver problemas, confira Não é possível montar compartilhamentos de arquivos do Azure com as credenciais do AD.

Monte o compartilhamento de arquivos de uma VM não ingressada no domínio ou de uma VM ingressada em um domínio diferente do AD

Se sua origem do AD for AD DS local, VMs não conectadas ao domínio ou VMs que ingressaram em um domínio do AD diferente da conta de armazenamento podem acessar compartilhamentos de arquivo do Azure se tiverem conectividade de rede irrestrita com os controladores de domínio do AD e fornecerem credenciais explícitas (nome de usuário e senha). O usuário que acessa o compartilhamento de arquivos deve ter uma identidade e credenciais no domínio do AD ao qual a conta de armazenamento está ingressada.

Se sua origem do AD for Microsoft Entra Domain Services, a VM deverá ter conectividade de rede irrestrita com os controladores de domínio do Microsoft Entra Domain Services, que está localizado no Azure. Isso geralmente exige a configuração de uma VPN site a site ou ponto a site. O usuário que acessa o compartilhamento de arquivo deve ter uma identidade (uma identidade do Microsoft Entra sincronizada do Microsoft Entra ID para o Microsoft Entra Domain Services) no domínio gerenciado do Microsoft Entra Domain Services.

Para montar um compartilhamento de arquivos a partir de uma VM não ingressada no domínio, use a notação username@domainFQDN , em que domainFQDN é o nome de domínio totalmente qualificado. Isso permitirá que o cliente entre em contato com o controlador de domínio para solicitar e receber tíquetes do Kerberos. Você pode obter o valor domainFQDN executando (Get-ADDomain).Dnsroot no Active Directory PowerShell.

Por exemplo:

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:<username@domainFQDN>

Se sua origem do AD for Microsoft Entra Domain Services, você também poderá fornecer credenciais como DOMAINNAME\username em que DOMAINNAME é o domínio do Microsoft Entra Domain Services e username é o nome de usuário da identidade no Microsoft Entra Domain Services:

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:<DOMAINNAME\username>

Observação

Os Arquivos do Azure não dão suporte à tradução de SID para UPN para usuários e grupos de uma VM não ingressada no domínio ou uma VM ingressada em um domínio diferente por meio do Explorador de Arquivos do Windows. Se você quiser exibir os proprietários de arquivos/diretórios ou exibir/modificar permissões NTFS por meio do Explorador de Arquivos do Windows, só poderá fazê-lo a partir de VMs conectadas ao domínio.

Montar compartilhamentos de arquivos usando nomes de domínio personalizados

Se você não quiser montar compartilhamentos de arquivos do Azure usando o sufixo file.core.windows.net, poderá modificar o sufixo do nome da conta de armazenamento associado ao compartilhamento de arquivos do Azure e adicionar um registro CNAME (nome canônico) para rotear o novo sufixo para o ponto de extremidade da conta de armazenamento. As instruções a seguir são somente para ambientes de floresta única. Para saber como configurar ambientes que têm duas ou mais florestas, consulte Usar Arquivos do Azure com várias florestas do Active Directory.

Observação

Os Arquivos do Azure só dão suporte à configuração do CNAMES usando o nome da conta de armazenamento como um prefixo de domínio. Se você não quiser usar o nome da conta de armazenamento como prefixo, considere o uso de namepaces DFS.

Neste exemplo, temos o domínio do Active Directory onpremad1.come temos uma conta de armazenamento chamada mystorageaccount que contém compartilhamentos de arquivos SMB do Azure. Primeiro, precisamos modificar o sufixo SPN da conta de armazenamento para mapear mystorageaccount.onpremad1.com para mystorageaccount.file.core.windows.net.

Isso permitirá que os clientes montem o compartilhamento com net use \\mystorageaccount.onpremad1.com porque os clientes em onpremad1 saberão pesquisar onpremad1.com para encontrar o recurso adequado para essa conta de armazenamento.

Para usar esse método, conclua as seguintes etapas:

  1. Certifique-se de que você configurou a autenticação baseada em identidade. Se sua origem do AD for AD DS ou Kerberos do Microsoft Entra, certifique-se de que você sincronizou suas contas de usuário do AD com o Microsoft Entra ID.

  2. Modifique o SPN da conta de armazenamento usando a ferramenta setspn. Encontre <DomainDnsRoot> executando o seguinte comando do Active Directory PowerShell: (Get-AdDomain).DnsRoot

    setspn -s cifs/<storage-account-name>.<DomainDnsRoot> <storage-account-name>
    
  3. Adicione uma entrada CNAME usando o Gerenciador de DNS do Active Directory e siga as etapas abaixo para cada conta de armazenamento no domínio no qual a conta de armazenamento foi ingressada. Se você estiver usando um ponto de extremidade privado, adicione a entrada CNAME para mapeá-la para o nome do ponto de extremidade privado.

    1. Abra o Gerenciador de DNS do Active Directory.
    2. Acesse seu domínio (por exemplo, onpremad1.com).
    3. Acesse "Zonas de Pesquisa Direta".
    4. Selecione o nó com o nome do seu domínio (por exemplo, onpremad1.com) e clique com o botão direito do mouse em Novo Alias (CNAME).
    5. Para o nome do alias, insira o nome da conta de armazenamento.
    6. Para o FQDN (nome de domínio totalmente qualificado), insira <storage-account-name>.<domain-name>, como mystorageaccount.onpremad1.com. A parte do nome do host do FQDN deve corresponder ao nome da conta de armazenamento. Caso contrário, você receberá um erro de acesso negado durante a instalação da sessão de SMB.
    7. Para o FQDN do host de destino, insira <storage-account-name>.file.core.windows.net
    8. Selecione OK.

Agora você deve ser capaz de montar o compartilhamento de arquivos usando storageaccount.domainname.com. Você também pode montar o compartilhamento de arquivos usando a chave da conta de armazenamento.

Próxima etapa

Se a identidade que você criou no AD DS para representar a conta de armazenamento estiver em um domínio ou UO que imponha a rotação de senha, talvez seja necessário atualizar a senha da identidade da conta de armazenamento no AD DS.