3.1 ACL's e ACE's


Ter controle sobre diversos arquivos e diretórios isolados em várias partes da estrutura de diretórios de um sistema de arquivos é relativamente difícil. Por este motivo, foi desenvolvido o conceito de Lista de Controle de Acessos, ou ACL. É uma lista com várias entradas chamadas Entradas de Controle de Acessos, ou ACE. Estas entradas consistem, resumidamente, em um conjunto de permissões e de um objeto (usuário ou grupo) que utilizará este conjunto para acessar um arquivo ou diretório. Ao contrário do que acontece no Linux, a ACL não se encontra anexada ao arquivo ou seu conteúdo (ex.: o i-node), mas é armazenada em um local especial, e o arquivo tem somente um ponteiro para que processos que tentem acessá-lo consigam determinar onde procurar pelas permissões de acesso ao mesmo.

Cada ACE é de um tipo definido pelo nome de ACCESS_MASK, que tem um tamanho de 4 bytes, ou uma DWORD. Uma ACE pode ser definida, por exemplo, das seguintes formas:
- Usuário X pode ler, escrever e deletaar este arquivo.
- Usuário Y pode ler este arquivo.
- Grupo XYZ pode ler este arquivo.

Diferentemente do Linux, os tipos de acessos são mais que três, consistindo no seguinte: