Criar a partilha é um comando. O trabalho é casar duas camadas. No Windows Server, o pedido pela rede atravessa duas camadas: a capa de partilha, que o serviço SMB (Server Message Block) avalia quando a ligação abre, e os ACLs NTFS (Access Control List), que o sistema de ficheiros avalia em cada pasta e ficheiro. Qualquer uma nega sozinha — um New-SmbShare perfeito não salva uma pasta sem o grupo certo no NTFS. Este tutorial monta a cadeia e fecha na partilha do ERP que a contabilidade já perdeu uma vez.
TL;DR — a receita em duas camadas
Na capa de partilha, largura: Authenticated Users com Alterar e administradores com Controlo Total, no New-SmbShare. No NTFS, restrição por grupos de domínio: icacls com /inheritance:r e concessões (OI)(CI). Confirma com Get-SmbShareAccess, icacls e Effective Access — o cálculo vê só o NTFS.
Neste artigo
1. A decisão: partilha larga no topo, NTFS restrito no fundo
A ordem do sysadmin: no topo dá-se largura na capa de partilha, no fundo restringe-se no NTFS. A capa de partilha tem três degraus — Leitura (Read), Alterar (Change) e Controlo Total (Full Control) — e vale para a partilha inteira de uma vez. Por isso fica lá a largura: Authenticated Users com Alterar, administradores com Controlo Total. A finura mora no NTFS, que aceita concessões por grupos de domínio (ex.: CONTOSO\Contabilidade) em cada pasta. Quando muda quem precisa de acesso, muda-se o grupo no AD — as concessões seguem.
Na capa larga, a escolha certa: Authenticated Users, não Everyone. Desde o Windows Server 2003 que Everyone cobre apenas Authenticated Users e Guest — antes dessa geração, incluía ainda as ligações sem conta do Anonymous Logon. O Authenticated Users entra só nas contas que passaram um início de sessão — sem convidados, nem mesmo um Guest com palavra-passe. Everyone fica para laboratórios.
2. Criar a partilha com New-SmbShare
A pasta e o New-SmbShare
O terreno: FS01, membro do domínio CONTOSO, pasta do ERP em D:\Shares\ERP. A pasta nasce com mkdir e a partilha com New-SmbShare — nome, caminho, listas de acesso e o modo de enumeração:
mkdir D:\Shares\ERP
New-SmbShare -Name "ERP" -Path "D:\Shares\ERP" -FullAccess "Administrators" -ChangeAccess "Authenticated Users" -Description "ERP Contabilidade" -FolderEnumerationMode AccessBased
Name ScopeName Path Description
---- --------- ---- -----------
ERP * D:\Shares\ERP ERP Contabilidade
Define sempre as listas no próprio comando: largura no -ChangeAccess (Alterar para Authenticated Users) e Controlo Total nos administradores. O -FolderEnumerationMode AccessBased esconde os ficheiros que o utilizador não pode abrir — por defeito, Unrestricted, que mostra até os nomes que o NTFS nega. E o -WhatIf não funciona neste cmdlet — confirma o caminho antes do Enter.
Conferir a capa de partilha
Na mesma consola:
Get-SmbShareAccess -Name "ERP"
Name ScopeName AccountName AccessControlType AccessRight
----- --------- ----------- ----------------- -----------
ERP * Default BUILTIN\Administrators Allow Full
ERP * Default Authenticated Users Change
Os degraus e o que cada um soma ficam na secção 1 — nas propriedades da partilha (separador Permissões) o mesmo mapa aparece por botões.
Fechar o NTFS com icacls
A capa do disco entra com o icacls. Duas linhas: cortar herança e segurar SYSTEM e administradores, depois o grupo de negócio:
icacls D:\Shares\ERP /inheritance:r /grant:r "NT AUTHORITY\SYSTEM:(OI)(CI)F" "Administrators:(OI)(CI)F"
Successfully processed 1 files; Failed processing 0 files
icacls D:\Shares\ERP /grant:r "CONTOSO\Contabilidade:(OI)(CI)M"
Successfully processed 1 files; Failed processing 0 files
O /inheritance:r remove os ACEs herdados (I) vindos de D:\Shares e a pasta deixa de nascer com o mapa da raiz. Cada /grant:r escreve uma concessão explícita e substitui as anteriores do mesmo principal. Os sinalizadores (OI)(CI) mandam o direito descer às subpastas e aos ficheiros por baixo — sem eles, o resto fica sem nada.
O NT AUTHORITY\SYSTEM fica na lista: os serviços avaliam o disco com a rede parada. Nos servidores com interface em português os builtin saem traduzidos (BUILTIN\Administradores e não Administrators) — e não fica pelos builtin: Authenticated Users e NT AUTHORITY\SYSTEM também são strings localizadas que falham numa build noutra língua. No icacls o remendo robusto é escrever SIDs com o prefixo *: *S-1-5-32-544 (Administrators), *S-1-5-18 (SYSTEM) e *S-1-5-11 (Authenticated Users). Os grupos de domínio são os teus.
Mostrar o ACL e confirmar no Effective Access
O mapa final lê-se no icacls sem parâmetros:
icacls D:\Shares\ERP
D:\Shares\ERP CONTOSO\Contabilidade:(OI)(CI)M
NT AUTHORITY\SYSTEM:(OI)(CI)F
BUILTIN\Administrators:(OI)(CI)F
Successfully processed 1 files; Failed processing 0 files
Nada de (I): é tudo explícito pela ordem canónica — recusas primeiro, concessões a seguir, herdados por fim. Um /deny bate mais alto do que uma concessão herdada: precisão pontual, não rotina.
A prova faz-se no Explorador de Ficheiros: propriedades da pasta, separador Segurança, botão Avançado (Advanced), separador Effective Access e Select a user. Escolhe uma conta da Contabilidade e o Windows calcula o resultado — o cálculo conta apenas os ACLs NTFS.
3. Armadilhas típicas
Everyone herdado do servidor de ficheiros antigo
Partilhas trazidas de um servidor de ficheiros antigo chegam com a era embutida: na família Windows Server 2003 qualquer partilha nova ficava com Everyone em Leitura por defeito e, antes do 2003, o Everyone ainda incluía ligações anónimas. Ao tocar nesse legado: troca Everyone por Authenticated Users na capa de partilha e traz os ACLs NTFS com robocopy /copyall — o robocopy por defeito só anda com dados, atributos e timestamps e deixa as ACLs para trás.
A herança que reescreve o teu ACL
Uma pasta dentro de D:\Shares nasce com os ACEs da raiz — os grupos de cima, não os teus. Recriada num restauro, nasce outra vez com herança: grupos a mais, ou nenhum dos teus. O icacls sem parâmetros revela os herdados (I). A meia herança também morde: uma concessão sem (OI)(CI) vale só para a pasta — as subpastas e os ficheiros ficam de fora. O remendo: /inheritance:r e o mapa explícito próprio.
A sessão local ignora a capa de partilha
As permissões de partilha valem exclusivamente pelo caminho de rede. A sessão no próprio FS01 (consola ou RDP) ignora a capa de partilha e fica-se pelo NTFS. As cópias de segurança que abrem D:\Shares\ERP localmente continuam a ler mesmo com a capa mal feita, e um teste de dentro do servidor pode dar verde enquanto a rede nega — testa sempre pelo caminho UNC.
4. Partilha vs. NTFS numa tabela
As duas camadas em contraponto:
| Camada | Permissões de partilha | ACLs NTFS |
|---|---|---|
| Onde vive | No serviço SMB do servidor, por partilha | No disco, em cada pasta e ficheiro |
| O que alcança | Só o acesso pela rede, por SMB | Rede e sessão local — vale sempre |
| Quem avalia | O serviço SMB ao abrir a ligação | O driver NTFS em cada abertura de pasta ou ficheiro |
| Herança | Não herda nem desce — vale para a partilha inteira | Desce por (OI)(CI) e marca (I) no que veio de cima |
| Ferramentas | New-SmbShare, Get-SmbShareAccess | icacls, Get-Acl |
Pela rede as duas camadas valem em conjunto e vence a mais restritiva — a capa larga não abre nada por acidente.
5. Cenário: a contabilidade perdeu a partilha do ERP
Segunda-feira, 08:12 (cenário ilustrativo): o financeiro liga — o ERP dá «acesso negado» em \\FS01\ERP para a contabilidade inteira. Diagnóstico pelas duas camadas, capa de partilha primeiro — um só comando:
Get-SmbShareAccess -Name "ERP"
icacls D:\Shares\ERP
A partilha está limpa: os Allow de sempre, sem negações. O disco conta a história: no icacls, os ACEs estão todos marcados com (I) e falta o CONTOSO\Contabilidade. Alguém recriou a pasta ao fim de semana e o ACL novo veio da herança de cima, sem o grupo. A partilha deixava passar — o disco negava.
O remendo repete o passo NTFS — cortar a herança e escrever o mapa explícito:
icacls D:\Shares\ERP /inheritance:r /grant:r "NT AUTHORITY\SYSTEM:(OI)(CI)F" "Administrators:(OI)(CI)F"
icacls D:\Shares\ERP /grant:r "CONTOSO\Contabilidade:(OI)(CI)M"
icacls D:\Shares\ERP
O icacls final mostra CONTOSO\Contabilidade:(OI)(CI)M na frente e os ACEs explícitos a seguir, e a conta de teste confirma Alterar no Effective Access — às 08:34, contabilidade de volta. Vinte e dois minutos, sem reinstalações e sem ligar ao fornecedor.
A moral: a capa de partilha larga é a mais estável — no disco de baixo é que o acidente acontece. Diagnóstico nas duas camadas, sempre: a partilha em duas linhas, o disco na saída do icacls.
6. Artigos Relacionados
- Security Groups do Active Directory: gestão com PowerShell
- FSRM: Quotas e Filtragem de Ficheiros no Windows Server
- Windows Server 2025: Novidades e Guia de Migração