3.7. Modos de acesso a permissões de arquivo

Os modos de acesso a permissões de arquivo consistem em combinações dos seis seguintes modos:

r

modo de leitura

w

modo de gravação

px

modo de execução de perfil distinto

ux

modo de execução irrestrito

ix

modo de execução herdar

l

modo de link

3.7.1. Modo de leitura

Permite que o programa tenha acesso de leitura ao recurso. O acesso de leitura é necessário a scripts de shell e outros conteúdos interpretados e determina se um processo executor pode ter dump de memória ou ser anexado a ptrace(2) (ptrace(2) é usado por utilitários como strace(1), ltrace(1) e gdb(1)).

3.7.2. Modo de gravação

Permite que o programa tenha acesso de gravação ao recurso. Os arquivos que devem ser desvinculados (removidos) precisam ter essa permissão.

3.7.3. Modo de execução de perfil distinto

Este modo requer a definição de um perfil de segurança distinto para os recursos executados em uma transição de domínio do Novell AppArmor. Se não houver nenhum perfil definido, o acesso é negado. Incompatível com as entradas de execução inherit (herdar) e unconstrained (irrestrito).

3.7.4. Modo de execução irrestrito

Permite ao programa executar o recurso sem a aplicação de nenhum perfil do Novell AppArmor. Requer listagem do modo de execução. Incompatível com as entradas de execução inherit (herdar) e discrete profile (perfil distinto).

Esse modo é útil quando um programa delimitado precisa executar uma operação que requer privilégios, como a reinicialização da máquina. Colocando a parte privilegiada em outro executável e concedendo direitos irrestritos de execução, é possível evitar as restrições mandatórias impostas a todos os processos delimitados. Para obter mais informações acerca do que está sujeito a restrições, consulte a página de manual apparmor(7).

3.7.5. Modo de execução herdar

Evita a transição de domínio normal do Novell AppArmor em execve(2) quando um programa que tem perfil executa o recurso. Nesse caso, o recurso executado herda o perfil atual. Incompatível com as entradas de execução unconstrained (irrestrito) e discrete profile (perfil distinto). Esse modo é útil quando um programa delimitado precisa chamar outro programa delimitado sem ganhar as permissões do perfil de destino nem perder as permissões do perfil atual. Esse modo normalmente não é usado.

3.7.6. Modo de link

O modo de link negocia acesso a symlinks e hardlinks, além do privilégio de desvincular (ou apagar) arquivos. Quando se cria um link, o arquivo vinculado deve ter as mesmas permissões de acesso que o link criado (com a exceção de que o destino não precisa ter acesso de link).