3.10.3. Cálculo da máscara ACE
Na maioria das situações, quando você adiciona ou atualiza um ACE, você usa os pseudônimos smbcacls
listados em Tabela 3.4, “Existentes smbcacls aliases e sua correspondente permissão do Windows”.
Entretanto, se você quiser definir permissões avançadas do Windows conforme listado em Tabela 3.3, “Permissões Windows e seu correspondente valor smbcacls em formato hexadecimal”, você deve usar a operação bit-wise OR
para calcular o valor correto. Você pode usar o seguinte comando shell para calcular o valor:
# echo $(printf '0x%X' $(( hex_value_1 | hex_value_2 | ... )))
Exemplo 3.4. Cálculo de uma Máscara ACE
Você deseja definir as seguintes permissões:
- Pasta transversal / arquivo de execução (0x00100020)
- Listar pasta / ler dados (0x00100001)
- Atributos de leitura (0x00100080)
Para calcular o valor hexadecimal para as permissões anteriores, entre:
# echo $(printf '0x%X' $(( 0x00100020 | 0x00100001 | 0x00100080 )))
0x1000A1
Use o valor retornado quando você definir ou atualizar um ACE.