Seu conteúdo em D: \ não deve estar disponível para "Usuários", pois um usuário recém-criado é colocado nesse grupo por padrão. Basta remover as entradas "Usuários" e "Todos" de D: \ e todos os subdiretórios - fazer não usar negar "ACE", pois eles efetivamente negarão o acesso de todos que são membros de "Usuários" , mesmo se o usuário tivesse acesso concedido pelos outros ACEs definidos.
Is there any way to do what I want, namely the "usual" Users access to C:\, but on D:\ no access except for read access to D:\Special?
Depende dos seus requisitos. Tecnicamente, um usuário não precisa de nenhuma permissão concedida no diretório pai para acessar um subdiretório. Mas se você precisar que o usuário consiga fazer a navegação por cliques através do Windows Explorer, obviamente será um problema se o diretório pai não puder ser listado. Suas opções aqui:
- apenas conceda o acesso a
D:\special
e remova o acesso para D: \ e crie um atalho, um mapeamento ou um link simbólico para que o usuário não precise navegar por D: \ para acessarspecial
- concede acesso a
D:\special
e concede apenas a permissão "List Folder Contents" ao usuário / grupo em questão sem herança . Dessa forma, o usuário poderá listar todo o diretório, mas não abrir nenhum dos arquivos ou subdiretórios.
Se os nomes de arquivos ou diretórios em D: \ não estão expondo algo confidencial, a segunda abordagem deve ser preferida, pois é mais "orgânica" e funciona melhor para as expectativas do usuário e do programador de aplicativos.
Editar: uma vez que a TomTom expressa algumas preocupações sobre se o método # 1 está realmente funcionando, aqui está uma pequena demonstração do meu sistema Windows (desculpe, o resultado é alemão, mas a ideia deve ser aparente, no entanto)
C:\Users\denis>mkdir server
C:\Users\denis>mkdir server\fault
C:\Users\denis>echo "test" > server\fault\text.txt
C:\Users\denis>cacls server /d denis
Sind Sie sicher (J/N)?j
Bearbeitetes Verzeichnis: C:\Users\denis\server
C:\Users\denis>dir server
Volume in Laufwerk C: hat keine Bezeichnung.
Volumeseriennummer: C4CB-6B0E
Verzeichnis von C:\Users\denis\server
Datei nicht gefunden
C:\Users\denis>dir server\fault
Volume in Laufwerk C: hat keine Bezeichnung.
Volumeseriennummer: C4CB-6B0E
Verzeichnis von C:\Users\denis\server\fault
17.12.2011 21:08 <DIR> .
17.12.2011 21:08 <DIR> ..
17.12.2011 21:08 9 text.txt
1 Datei(en), 9 Bytes
2 Verzeichnis(se), 14.307.930.112 Bytes frei
C:\Users\denis>type server\fault\text.txt
"test"