« Discussion:Les permissions sur les fichiers » : différence entre les versions
mAucun résumé des modifications |
m (Lea a déplacé la page Discussion:Admin-admin env-permissions vers Discussion:Les permissions sur les fichiers) |
||
(3 versions intermédiaires par 3 utilisateurs non affichées) | |||
Ligne 7 : | Ligne 7 : | ||
Il n'y a donc pas non plus de conversion en décimal qui se produise si l'on omet ce préfixe zéro. | Il n'y a donc pas non plus de conversion en décimal qui se produise si l'on omet ce préfixe zéro. | ||
Vincent Ramos=Commentaires de : ClementHermann= | Vincent Ramos= | ||
Merci de poser les questions sur le phorum de Léa. | |||
=Commentaires de : ClementHermann= | |||
posté le 2005-01-31 17:50:54 | posté le 2005-01-31 17:50:54 | ||
====Spécificités pour les répertoires==== | |||
==== | |||
Pour les répertoires, la signification des permissions est légèrement modifiée : | Pour les répertoires, la signification des permissions est légèrement modifiée : | ||
On utilisera la convention suivante : '''''<nom du droit>''''' ('''''<représentation symbolique>''''') ('''''<valeur numérique>''''') | |||
On utilisera la convention suivante : | |||
la valeur numérique (en octal) est utilisée par exemple par la commande chmod et la commande find (voir l'article auquel ce commentaire répond). Les différentes valeurs s'additionnent pour donner une représentation numérique de la permission pour chaque entité (propriétaire, groupe, autres). | la valeur numérique (en octal) est utilisée par exemple par la commande chmod et la commande find (voir l'article auquel ce commentaire répond). Les différentes valeurs s'additionnent pour donner une représentation numérique de la permission pour chaque entité (propriétaire, groupe, autres). | ||
- | - '''exécution''' ('''''x''''') ('''''1''''')--- | ||
Donne le droit d'accéder au répertoire | Donne le droit d'accéder au répertoire | ||
- | - ''l'ecture''' ('''''r''''') ('''''2''''')--- | ||
Donne le droit de lister le contenu d'un répertoire. (//NB: Si cette permission est absente, le répertoire n'est pas visible avec ls, à moins d'en être propriétaire.//) | Donne le droit de lister le contenu d'un répertoire. (//NB: Si cette permission est absente, le répertoire n'est pas visible avec ls, à moins d'en être propriétaire.//) | ||
- | - '''écriture''' ('''''w''''') ('''''4''''')--- | ||
Donne le droit de modifier le contenu du répertoire (même si les permissions individuelles sur les fichiers du répertoire ne le permettent pas) | Donne le droit de modifier le contenu du répertoire (même si les permissions individuelles sur les fichiers du répertoire ne le permettent pas) | ||
Ces permissions s'ajoutent entre elles : on peut imaginer avoir le droit d'accéder ( | Ces permissions s'ajoutent entre elles : on peut imaginer avoir le droit d'accéder ('''''x''''') ('''''1''''') à un répertoire sans pouvoir en lister('''''r''''') ('''''2''''') le contenu, mais il n'est pas possible de donner le droit de lister un répertoire sans donner le droit d'y accéder. | ||
Attention cependant, si l'utilisateur a le droit d'écriture sur le répertoire parent, il pourra modifier les droits des sous-répertoires à sa guise. | Attention cependant, si l'utilisateur a le droit d'écriture sur le répertoire parent, il pourra modifier les droits des sous-répertoires à sa guise. | ||
D'autre part, les derniers bits [[POSIX]] ( | D'autre part, les derniers bits [[POSIX]] ('''sticky''' et '''setGID''') représentent des permissions spéciales, différentes elles aussi de leur homologue sur les fichiers : | ||
(//NB: le bit | (//NB: le bit '''setUID''', '''4000''' en représentation numérique, n'a pas d'effet sur un répertoire//). | ||
- | - '''sticky''' ('''''t''''') ('''''1000''''')--- | ||
Même lorsqu'un répertoire est accessible en écriture, on ne peut modifier les fichiers enfants sur lesquels on ne possède pas de droit explicite. Le cas d'école est le répertoire temporaire commun du système, | Même lorsqu'un répertoire est accessible en écriture, on ne peut modifier les fichiers enfants sur lesquels on ne possède pas de droit explicite. Le cas d'école est le répertoire temporaire commun du système, ''/tmp''. | ||
- | - '''setGID''' ('''''s''''') ('''''2000''''')--- | ||
quelque soit le groupe principal d'un utilisateur, le groupe d'appartenance des fichiers enfants créés sera le groupe d'appartenance du répertoire. Sur une [[Debian]], le cas d'école est | quelque soit le groupe principal d'un utilisateur, le groupe d'appartenance des fichiers enfants créés sera le groupe d'appartenance du répertoire. Sur une [[Debian]], le cas d'école est ''/usr/local'' et ses sous-répertoires qui possèdent comme groupe d'appartenance ''staff'' et ont le bit '''setGID''' positionné : tout fichier créé sous l'un de ces répertoires aura comme groupe d'appartenance ''staff''. | ||
''Il existe aussi le bit '''sticky bit''', "t"'' ou 1000 pour la valeur octale | ''Il existe aussi le bit '''sticky bit''', "t"'' ou 1000 pour la valeur octale | ||
Ligne 48 : | Ligne 48 : | ||
'''Appliqué sur un fichier binaire''' (attribution réservé à root) permet le maintien en mémoire après son exécution. | '''Appliqué sur un fichier binaire''' (attribution réservé à root) permet le maintien en mémoire après son exécution. | ||
=Commentaires de : Pierre Renié= | |||
Dans la partie <strong>SUID et GUID</strong> j'ai supprimé l'exemple proposant d'activer le bit suid root sur xmms pour 2 raisons: | |||
<ul><li>C'est très dangereux car son exécution permettrait d'enregistrer des fichiers sur des fichiers système | |||
</li><li>J'ai essayé de le faire, et GTK refuse de se lancer. J'avais le message suivant:<code>Gtk-WARNING **: This process is currently running setuid or setgid. | |||
This is not a supported use of GTK+. You must create a helper | |||
program instead. For further details, see: | |||
<nowiki> http://www.gtk.org/setuid.html</nowiki> | |||
Refusing to initialize GTK+.</code> | |||
= Licence = | |||
La licence de cet article a été passée en CC-BY-SA en accord avec son auteur (cf courriel du 18 septembre 2013) [[Utilisateur:Lea|Lea]] ([[Discussion utilisateur:Lea|discussion]]) 23 septembre 2013 à 13:23 (CEST) |
Dernière version du 3 décembre 2023 à 21:27
Commentaires de : VincentRamos
posté le 2005-04-18 12:23:44
Noter que les paramètres en octal passés à chmod ne doivent pas forcément être préfixés du zéro et qu'il n'y a pas de différence entre chmod 0755 et chmod 755. Cf. à cet égard le fil Usenet <news:42627333$0$1983$626a14ce@news.free.fr> et la documentation : « A numeric mode is from one to four octal digits (0-7), derived by adding up the bits with values 4, 2, and 1. Any omitted digits are assumed to be leading zeros. ».
Il n'y a donc pas non plus de conversion en décimal qui se produise si l'on omet ce préfixe zéro.
Vincent Ramos= Merci de poser les questions sur le phorum de Léa.
Commentaires de : ClementHermann
posté le 2005-01-31 17:50:54
Spécificités pour les répertoires
Pour les répertoires, la signification des permissions est légèrement modifiée : On utilisera la convention suivante : <nom du droit> (<représentation symbolique>) (<valeur numérique>) la valeur numérique (en octal) est utilisée par exemple par la commande chmod et la commande find (voir l'article auquel ce commentaire répond). Les différentes valeurs s'additionnent pour donner une représentation numérique de la permission pour chaque entité (propriétaire, groupe, autres).
- exécution (x) (1)--- Donne le droit d'accéder au répertoire
- l'ecture' (r) (2)--- Donne le droit de lister le contenu d'un répertoire. (//NB: Si cette permission est absente, le répertoire n'est pas visible avec ls, à moins d'en être propriétaire.//)
- écriture (w) (4)--- Donne le droit de modifier le contenu du répertoire (même si les permissions individuelles sur les fichiers du répertoire ne le permettent pas)
Ces permissions s'ajoutent entre elles : on peut imaginer avoir le droit d'accéder (x) (1) à un répertoire sans pouvoir en lister(r) (2) le contenu, mais il n'est pas possible de donner le droit de lister un répertoire sans donner le droit d'y accéder. Attention cependant, si l'utilisateur a le droit d'écriture sur le répertoire parent, il pourra modifier les droits des sous-répertoires à sa guise.
D'autre part, les derniers bits POSIX (sticky et setGID) représentent des permissions spéciales, différentes elles aussi de leur homologue sur les fichiers : (//NB: le bit setUID, 4000 en représentation numérique, n'a pas d'effet sur un répertoire//).
- sticky (t) (1000)--- Même lorsqu'un répertoire est accessible en écriture, on ne peut modifier les fichiers enfants sur lesquels on ne possède pas de droit explicite. Le cas d'école est le répertoire temporaire commun du système, /tmp.
- setGID (s) (2000)--- quelque soit le groupe principal d'un utilisateur, le groupe d'appartenance des fichiers enfants créés sera le groupe d'appartenance du répertoire. Sur une Debian, le cas d'école est /usr/local et ses sous-répertoires qui possèdent comme groupe d'appartenance staff et ont le bit setGID positionné : tout fichier créé sous l'un de ces répertoires aura comme groupe d'appartenance staff.
Il existe aussi le bit sticky bit, "t" ou 1000 pour la valeur octale
Appliqué sur le répertoire, par exemple /tmp : celui-ci a pour but de ne permettre la suppression que des fichiers/répertoires dont on est propriétaire.
Appliqué sur un fichier binaire (attribution réservé à root) permet le maintien en mémoire après son exécution.
Commentaires de : Pierre Renié
Dans la partie SUID et GUID j'ai supprimé l'exemple proposant d'activer le bit suid root sur xmms pour 2 raisons:
- C'est très dangereux car son exécution permettrait d'enregistrer des fichiers sur des fichiers système
- J'ai essayé de le faire, et GTK refuse de se lancer. J'avais le message suivant:
Gtk-WARNING **: This process is currently running setuid or setgid. This is not a supported use of GTK+. You must create a helper program instead. For further details, see: http://www.gtk.org/setuid.html Refusing to initialize GTK+.
Licence
La licence de cet article a été passée en CC-BY-SA en accord avec son auteur (cf courriel du 18 septembre 2013) Lea (discussion) 23 septembre 2013 à 13:23 (CEST)