Gravar permissão para um arquivo específico sem alterar a propriedade

2

Pelo que entendi, para dar uma permissão de gravação a um usuário, eu posso alterar o proprietário do arquivo para aquele usuário e dar a ele "permissão de gravação do usuário" (que eu não quero fazer), ou manter o mesmo proprietário, mas adicione esse usuário ao grupo do arquivo e dê ao grupo uma permissão de gravação. Mas este último dará permissão a este usuário para todos os outros arquivos associados a este grupo (quaisquer que sejam essas permissões).

Portanto, se o arquivo for de propriedade de user1 e group user1, a maioria dos arquivos user1 também terá o grupo user1. Se eu adicionar user2 ao grupo user1, o user2 terá obtido permissões extras. A única maneira que posso pensar é criar um grupo para este arquivo específico, alterar o grupo com chown e, em seguida, adicionar user2 a esse grupo. Isso está correto? Parece-me que isso cria muita complexidade se eu tiver que fazer isso para cada arquivo. Eu venho de um fundo do Windows e lá você simplesmente clique com o botão direito no arquivo e adicione o usuário à permissão do arquivo. Portanto, não há necessidade de criar 20 grupos para 20 arquivos diferentes, depois adicionar os usuários a todos os 20 grupos, etc.

Alguém pode me esclarecer?

Obrigado.

    
por black 14.08.2015 / 19:20

1 resposta

2

Essa é a principal maneira de conceder permissões no unix, sim.

A ideia é que você normalmente não teria 20 grupos para os 20 arquivos diferentes e adicionaria os usuários a todos os 20 grupos. Em vez disso, se você tiver alguns usuários que precisam acessar vários arquivos, adicione um grupo um contendo esses usuários e todos os 20 arquivos pertencentes a esse grupo.

A vantagem de usar grupos em vez de adicionar usuários únicos é em uma organização, onde as pessoas ganham ou perdem privilégios à medida que mudam de emprego. Então, em vez de adicionar ou removê-los de um grande número de arquivos, basta adicionar ou removê-los de um grupo.

No entanto, para os casos em que o usuário normal / grupo / outros privilégios não são flexíveis o suficiente para suas necessidades, existe uma alternativa chamada Lista de Controle de Acesso ou ACLs. As ACLs concederão ou revogarão permissões para usuários ou grupos, além das permissões de usuário / grupo de estilo antigo.

Para adicionar um usuário à ACL de um arquivo, use setfacl . Exemplo:

setfacl -m u:lisa:r /path/to/file

concederá ao usuário "lisa" acesso de leitura ao arquivo.

Há mais informações nas páginas man de setfacl e getfacl .

    
por 14.08.2015 / 20:06