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: