Gestion des systèmes de fichiers ZFS dans Oracle®Solaris 11.2

Quitter la vue de l'impression

Mis à jour : Décembre 2014
 
 

Descriptions de syntaxe pour la configuration des ACL

Deux formats ACL de base sont fournis comme suit :

  • ACL triviales : Contient uniquement des entrées user, group et owner UNIX traditionnelles.

    Utilisez la syntaxe de commande suivante pour définir d'ACL triviales.

    chmod [options] A[index]{+|=}owner@ |group@ |everyone@: \
      access-permissions/...[:inheritance-flags]:deny | allow file
    chmod [options] A-owner@, group@, everyone@: \
      access-permissions/...[:inheritance-flags]:deny | allow file ...
    chmod [options] A[index]- file
  • ACL non triviale – Contient plus d'entrées qu'owner, group et everyone, inclut des indicateurs d'héritage ou les entrées sont triées d'une manière non traditionnelle.

    Utilisez la syntaxe de commande suivante pour définir d'ACL non triviales.

    chmod [options] A[index]{+|=}user|group:name: \
    access-permissions/...[:inheritance-flags]:deny | allow file
    chmod [options] A-user|group:name: \
    access-permissions/...[:inheritance-flags]:deny | allow file ...
    chmod [options] A[index]- file

La liste suivante explique les options qui sont utilisés dans les commandes permettant de définir la configuration de contrôle d'accès (ACL) et non triviales.

owner@, group@, everyone@

Identifie le type d'entrée d'ACL pour la syntaxe d'ACL triviale. Pour obtenir une description des types d'entrées d'ACL, reportez-vous au Table 7–1.

utilisateur ou groupe :ID-entrée-ACL=nomutilisateur ou nomgroupe

Identifie le type d'entrée d'ACL pour la syntaxe d'ACL explicite. Le type d'entrée d'ACL pour l'utilisateur et le groupe doit également contenir l'ID d'entrée d'ACL, le nom d'utilisateur ou le nom de groupe. Pour obtenir une description des types d'entrées d'ACL, reportez-vous au Table 7–1.

autorisations-d'accès/.../

Identifie les autorisations d'accès accordées ou refusées. Pour obtenir une description des privilèges d'accès d'ACL, reportez-vous au Table 7–2.

indicateurs-héritage

Identifie une liste optionnelle d'indicateurs d'héritage d'ACL. Pour une description des indicateurs d'héritage d'ACL, reportez-vous au Table 7–4.

deny | allow

Détermine si les autorisations d'accès sont accordées ou refusées.

Dans l'exemple suivant, il n'existe aucune valeur ACL-entry-ID pour owner@, group@ ou everyone@.

group@:write_data/append_data/execute:deny

L'exemple suivant inclut un ID d'entrée d'ACL car un utilisateur spécifique (type d'entrée d'ACL) est inclus dans la liste.

0:user:joe:list_directory/read_data/execute:allow

Lorsqu'une entrée d'ACL s'affiche, elle est similaire à celle-ci :

2:group@:write_data/append_data/execute:deny

La désignation 2 ou ID d'index dans cet exemple identifie l'entrée d'ACL dans la plus grande ACL, qui peut présenter plusieurs entrées pour le propriétaire, des UID spécifiques, un groupe et pour tous. Vous pouvez spécifier l'ID d'index avec la commande chmod pour identifier la partie de l'ACL que vous souhaitez modifier. Par exemple, vous pouvez identifier l'ID d'index 3 par A3 dans la commande chmod comme ci-dessous :

chmod A3=user:venkman:read_acl:allow filename

Le tableau suivant décrit les types de format ACL des représentations, autrement dit la contrevaleur du propriétaire, du groupe et autres.

Table 7-1  Types d'entrées d'ACL
Type d'entrée d'ACL
Description
owner@
Spécifie l'accès accordé au propriétaire de l'objet.
group@
Spécifie l'accès accordé au groupe propriétaire de l'objet.
everyone@
Spécifie l'accès accordé à tout utilisateur ou groupe ne correspondant à aucune autre entrée d'ACL.
utilisateur
Avec un nom d'utilisateur, spécifie l'accès accordé à un utilisateur supplémentaire de l'objet. Doit inclure l'ID d'entrée d'ACL qui contient un username ou un userID. Le type d'entrée d'ACL est incorrect si la valeur n'est ni un UID numérique, ni un username.
groupe
Avec un nom de groupe, spécifie l'accès accordé à un utilisateur supplémentaire de l'objet. Doit inclure l'ID d'entrée d'ACL qui contient un groupname ou un groupID. Le type d'entrée d'ACL est incorrect si la valeur n'est ni un GID numérique, ni un groupname.

Les privilèges d'accès sont décrits dans le tableau suivant.

Table 7-2  Privilèges d'accès d'ACL
Privilège d'accès
Privilège d'accès compact
Description
add_file
w
Autorisation d'ajouter un fichier à un répertoire.
add_subdirectory
p
Dans un répertoire, autorisation de créer un sous-répertoire.
append_data
p
Non implémentée actuellement.
delete
d
Autorisation de supprimer un fichier. Pour plus d'informations sur le comportement spécifique de l'autorisation delete_child , reportez-vous au Table 7–3.
delete_child
D
Autorisation de supprimer un fichier ou un répertoire au sein d'un répertoire. Pour plus d'informations sur le comportement spécifique de l'autorisation delete_child , reportez-vous au Table 7–3.
execute
x
Autorisation d'exécuter un fichier ou d'effectuer une recherche dans le contenu d'un répertoire.
list_directory
r
Autorisation de dresser la liste du contenu d'un répertoire.
read_acl
c
Autorisation de lire l'ACL (ls).
read_attributes
a
Autorisation de lire les attributs de base (non ACL) d'un fichier. Considérez les attributs de base comme les attributs de niveau stat. L'autorisation de ce bit de masque d'accès signifie que l'entité peut exécuter ls(1) et stat(2).
read_data
r
Autorisation de lire le contenu du fichier.
read_xattr
R
Autorisation de lire les attributs étendus d'un fichier ou d'effectuer une recherche dans le répertoire d'attributs étendus d'un fichier.
synchronize
s
Non implémentée actuellement.
write_xattr
W
Autorisation de créer des attributs étendus ou d'écrire dans le répertoire d'attributs étendus.
L'attribution de cette autorisation à un utilisateur signifie que ce dernier peut créer un répertoire d'attributs étendus pour un fichier. Les autorisations du fichier d'attributs contrôlent l'accès de l'utilisateur à l'attribut.
write_data
w
Autorisation de modifier ou de remplacer le contenu d'un fichier.
write_attributes
R
Autorisation de remplacer les durées associées à un fichier ou un répertoire par une valeur arbitraire.
write_acl
C
Autorisation d'écriture sur l'ACL ou capacité de la modifier à l'aide de la commande chmod.
write_owner
O
Autorisation de modifier le propriétaire ou le groupe d'un fichier. Ou capacité d'exécuter les commandes chown ou chgrp sur le fichier.
Autorisation de devenir propriétaire d'un fichier ou autorisation de définir la propriété de groupe du fichier sur un groupe dont fait partie l'utilisateur. Le privilège PRIV_FILE_CHOWN est requis pour définir la propriété de fichier ou de groupe sur un groupe ou un utilisateur arbitraire.

Le tableau suivant fournit des détails supplémentaires sur les comportements delete et delete_child d'ACL.

Table 7-3  Comportement d'autorisation ACL delete et delete_child
Droits d'accès au répertoire parent
Autorisations d'objet cible
L'ACL autorise la suppression
L'ACL refuse la suppression
Autorisation de suppression non spécifiée
L'ACL autorise delete_child
Autorisation
Autorisation
Autorisation
L'ACL refuse delete_child
Autorisation
Rejeter
Rejeter
L'ACL autorise uniquement write et execute
Autorisation
Autorisation
Autorisation
L'ACL refuse write et execute
Autorisation
Rejeter
Rejeter

Jeux d'ACL ZFS

Au lieu de définir séparément des autorisations individuelles, il est possible d'appliquer les combinaisons d'ACL suivantes par le biais d'un jeu d'ACL. Les jeux d'ACL suivants sont disponibles :

Nom de jeu d'ACL
Autorisations d'ACL incluses
full_set
Toutes les autorisations
modify_set
Toutes les autorisations à l'exception de write_acl et write_owner
read_set
read_data, read_attributes, read_xattr et read_acl
write_set
write_data, append_data, write_attributes et write_xattr

Ces jeux d'ACL sont prédéfinis et ne peuvent pas être modifiés