web-dev-qa-db-fra.com

octroi d'autorisations d'écriture à un groupe dans un dossier

Comment puis-je accorder une autorisation d'écriture à 1 groupe?
J'ai 2 utilisateurs (alex et ben).
alex est membre du groupe alex et du groupe consult.
ben est membre du groupe ben et du groupe consult.

Je souhaite accorder un accès en lecture-écriture à la fois alex et ben sur le dossier consult_documents.

Si je fais alex le propriétaire du répertoire consult_documents et j'accorde 775 accès au répertoire consult_documents, ben et alex pourront accéder au dossier, je pense.

Mais cela permettra-t-il également à ben d'accéder aux autres dossiers de alex? Si un utilisateur est dans deux groupes, cela signifie-t-il que tous les membres des deux groupes obtiennent les mêmes autorisations sur tous les dossiers?

35
anatak

L'octroi d'autorisations 775 sur un répertoire ne signifie pas automatiquement que tous les utilisateurs d'un certain groupe y auront rwx accès. Ils doivent être soit le propriétaire de l'annuaire soit appartenir au groupe de l'annuaire:

$ ls -ld some_dir
drwxrwxr-x 2 alex consult 4096 Feb 20 10:10 some_dir/
              ^     ^
              |     |_____ directory's group
              |___________ directory's owner

Donc, afin de permettre à alex et à ben d'avoir un accès en écriture à some_dir, le some_dir le répertoire lui-même doit appartenir au groupe consult. Si ce n'est pas le cas, le propriétaire du répertoire (alex dans votre exemple), devrait émettre la commande suivante:

$ chgrp consult some_dir/

ou pour changer la propriété du groupe de tout ce qui se trouve dans le répertoire:

$ chgrp -R consult some_dir/

Cela ne fonctionnera que si alex est membre du groupe consult, ce qui semble être le cas dans votre exemple.

Cela ne permettra pas à ben d'accéder à tous les répertoires d'Alex pour deux raisons:

  1. Tous les répertoires d'Alex n'appartiendront pas au groupe consult
  2. Certains répertoires alex peuvent appartenir au groupe consult mais alex n'a peut-être pas choisi d'y autoriser l'accès au groupe rwx.

En bref, la réponse dépend à la fois de la propriété du groupe et des bits d'autorisation de groupe définis pour l'annuaire.

Tout cela est fourni à condition que vous n'utilisiez aucune mesure supplémentaire contrôle d'accès obligatoire sur votre système.

42
Joseph R.

Cela incitera alex et ben à colabrer mutuellement dans ce répertoire, et ils ne peuvent pas collaborer dans d'autres Dir ..

Modifier le groupe d'utilisateurs à l'aide de

# usermod -a -G alex,ben alex

Ensuite, modifiez l'autorisation pour le dossier

# chown alex:ben consult_documents

Vérifiez ici que je l'ai travaillé

$ Sudo usermod -a -G alex,ben alex

$ Sudo chown alex:ben consult_documents/

cd consult_documents/

$ touch babin

drwxrwxr-x 2 alex ben  4096 Feb 20 15:19 .
drwxr-xr-x 3 alex alex 4096 Feb 20 15:17 ..
-rw-rw-r-- 1 alex alex    0 Feb 20 15:19 babin

$ su - ben

cd /home/alex/consult_documents/

ben@system99:/home/alex/consult_documents$ touch babin1
ben@system99:/home/alex/consult_documents$ ls -la
total 8
drwxrwxr-x 2 alex ben  4096 Feb 20 15:19 .
drwxr-xr-x 3 alex alex 4096 Feb 20 15:17 ..
-rw-rw-r-- 1 alex alex    0 Feb 20 15:19 babin
-rw-rw-r-- 1 ben  ben     0 Feb 20 15:19 babin1
ben@system99:/home/alex/consult_documents$

Have a look here

7
Babin Lonston

Si j'ai bien compris votre question, la réponse est oui.

Laisse-moi expliquer:

Vos droits d'accès aux dossiers et fichiers sont divisés en trois catégories:

xxxyyyzzz
xxx are access rights for the owner
yyy are access rights for the owner's group
zzz are the access rights for everyone else

Chaque fichier et dossier doit appartenir à un utilisateur.

Ce qui veut dire que si vous avez un dossier nommé consult_documents, et que vous voulez qu'il soit accessible depuis tout le monde du groupe Consult, vous aurez ceci (avec 755 droits d'accès):

drwxrwxr-x Alex Consult [......]

Le répertoire appartient à Alex et le groupe est Consult. Alex a des droits d'accès RWX dessus. Group Consult dispose de droits d'accès RWX sur celui-ci. D'autres utilisateurs ont des droits RX.

Comme votre utilisateur Alex a plusieurs groupes, vous pouvez choisir le groupe avec lequel partager.

Par exemple, si votre dossier appartient à Alex du groupe Alex:

drwxrwxr-x Alex Alex [......]

Fais le:

chown Alex:Consult your_folder

Cela deviendra:

drwxrwxr-x Alex Consult [......]

Et puis le répertoire est disponible pour le groupe Consult.

Veuillez noter que, pour autant que je sache, vous pouvez ajouter un groupe qui ne fait pas partie du groupe du propriétaire. Mais je ne sais pas si c'est recommandé (pas clair lors de la lecture des droits d'accès).

6
Laurent C.

setfacl -m g: transmission-debian: rwx -R/mnt/sra

Trouvé cette commande Nice, au lieu de chown qui changera complètement le propriétaire du fichier ou du répertoire!

Vous verrez sur un 'ls -Al' qu'un signe + sera ajouté pour montrer qu'il y a plus d'un propriétaire!

drwxr-xr-x 2 root root 4096 8 novembre 19:11 sdc1 /

drwxrwxr-x + 3 root root 4096 17 février 19:16 sra /

Et puis vous pouvez utiliser getfacl pour voir qui peut écrire ou lire le fichier ou le répertoire!

# fichier: sra

# propriétaire: root

# groupe: utilisateur root :: rwx

groupe :: r-x

groupe: debian-transmission: rwx

masque :: rwx

autre :: r-x

par défaut: user :: rwx

par défaut: group :: r-x

par défaut: groupe: debian-transmission: rwx

par défaut: mask :: rwx

par défaut: autre :: r-x

3
Marc Cabana