Gostaria de saber se existe alguma maneira de listar a ACL de determinado usuário para todos os arquivos.
Exemplo, para cronjob temos detalhes em /var/spool/cron/.
Da mesma forma, o ACL armazena as informações em qualquer lugar?
Gostaria de saber se existe alguma maneira de listar a ACL de determinado usuário para todos os arquivos.
Exemplo, para cronjob temos detalhes em /var/spool/cron/.
Da mesma forma, o ACL armazena as informações em qualquer lugar?
ACL (lista de controle de acesso) não é um processo. É apenas uma parte dos metadados em qualquer inode, como as clássicas permissões de arquivo do Unix. Em outras palavras, cada ACL é armazenada com o arquivo ou diretório que afeta.
Quando você fala das ACLs de um determinado usuário, você se refere às ACLs criadas ou modificadas por esse usuário? As ACLs são geralmente tratadas como atributos estendidos de um arquivo/diretório, portanto, você pode usar o subsistema de auditoria para registrar quaisquer
setxattr()/lsetxattr()/fsetxattr()
chamadas do sistema para registrá-las. Você também pode obter outros tipos de atributos estendidos, portanto, pode ser necessário fazer algum pós-processamento para o log.Ou você quer dizer ACLs que se referem a um usuário específico? Para isso, receio que você teria que fazer algo como
getfacl -Rs /
obter todas as ACLs na árvore do sistema de arquivos e, em seguida, filtrar os resultados para procurar o usuário desejado.Um pouco de script de shell responderá a isso de maneira bastante direta. Antes de tudo, você precisa percorrer o sistema de arquivos procurando por ACLs. Qualquer um que você encontrar precisa ser verificado para ver se eles se referem à sua conta de usuário e, em caso afirmativo, impressos. (Não é um processo incrivelmente eficiente, então não recomendo que você o execute com muita frequência.)
Se você também estiver interessado na propriedade direta do arquivo, altere a
grep
linha para isto: