PowerScale : OneFS : Gestion des autorisations ACL Windows à partir de l’interface de ligne de commande OneFS
Summary: Il est recommandé de gérer les autorisations Windows en vous connectant au dossier via SMB et à l’aide de l’interface de l’Explorateur Windows. Il existe cependant des cas où l’utilisation de la CLI peut être souhaitée. Cet article explique comment procéder. ...
Instructions
ls -led <path to file/folder>Par exemple :
# ls -led file -rwxrwxrwx + 1 root wheel 0 Jul 2 14:02 file OWNER: user:root GROUP: group:wheel 0: group:Users allow file_gen_read,file_gen_write 1: user:root allow file_gen_read,file_gen_write,std_write_dac 2: group:wheel allow file_gen_read 3: everyone allow file_gen_all
Modification des autorisations
Pour modifier les autorisations dans l’interface de ligne de commande en utilisant chmod, vous devez être connecté en tant que root.
Il existe deux façons d’identifier les entrées d’autorisation souhaitées à placer dans la liste de contrôle d’accès (ACL). La première est recommandée si possible.
- Localisez ou créez un fichier/dossier avec les autorisations souhaitées sur SMB et exécutez
ls -led <file or folder>. Il peut s’agir de n’importe quelle entrée d’autorisation sur n’importe quel utilisateur/groupe, sur n’importe quel fichier/dossier de n’importe quel cluster PowerScale s’il dispose des autorisations souhaitées. - Affichez la description de chaque entrée d’autorisation dans le manuel pour
chmod(man chmod) et identifiez ceux dont vous avez besoin pour votre flux de travail.
Ajout d’une nouvelle entrée d’autorisation pour un utilisateur/groupe
Dans cet exemple, la méthode 1 est utilisée, mais la commande de définition des autorisations est la même, que vous ayez identifié les types d’autorisations à ajouter dans le manuel pour chmod (man chmod) ou en examinant un fichier avec les autorisations souhaitées.
La commande pour les utilisateurs et les groupes est la même, à l’exception du mot «user' est remplacé par 'group' ou à l’inverse : chmod +a group "<domain name>\<group name>" allow <permissions to add> <file or folder>
Par exemple, si vous souhaitez définir l’entrée d’autorisations pour le fichier, le groupe de l’utilisateur ci-dessus file2 Pour le domaine Active Directory 'AD' groupe 'domain users' vous utiliseriez cette commande :
# chmod +a group "AD\domain users" allow file_gen_read,file_gen_write file2 # ls -led file2 -rw-rw-r-- + 1 root wheel 0 Jul 2 14:09 file2 OWNER: user:root GROUP: group:wheel 0: group:Domain Users allow file_gen_read,file_gen_write 1: user:root allow file_gen_read,file_gen_write,std_write_dac 2: group:wheel allow file_gen_read 3: everyone allow file_gen_read
Pour supprimer une entrée de contrôle d’accès, vous pouvez supprimer toute la ligne correspondant à l’utilisateur ou au groupe souhaité ou aux types d’autorisation que vous souhaitez supprimer. Vous pouvez ensuite ajouter une nouvelle entrée avec les autorisations souhaitées. La commande permettant de supprimer une entrée est identique à la commande permettant d’en ajouter une, sauf que vous modifiez '+a' avec '-a'. Par exemple, si vous souhaitez supprimer l’entrée du fichier ci-dessus pour l’utilisateur root, utilisez cette commande :
# chmod -a user root allow file_gen_read,file_gen_write,std_write_dac file # ls -led file -rwxrwxrwx + 1 root wheel 0 Jul 2 14:02 file OWNER: user:root GROUP: group:wheel 0: group:Users allow file_gen_read,file_gen_write 1: group:wheel allow file_gen_read 2: everyone allow file_gen_all
Pour les groupes bien connus tels que tout le monde, laissez de côté le groupe. Par exemple, pour supprimer l’accès en écriture de tout le monde, mais conserver les autres niveaux d’accès du fichier ci-dessus, vous devez utiliser la commande suivante :
# chmod -a everyone allow file_gen_write file # ls -led file -rwxrwxr-x + 1 root wheel 0 Jul 2 14:02 file OWNER: user:root GROUP: group:wheel 0: group:Users allow file_gen_read,file_gen_write 1: group:wheel allow file_gen_read 2: everyone allow std_delete,std_write_dac,std_write_owner,file_read,file_read_ext_attr,execute,delete_child,file_read_attr
Pour activer l’héritage pour les nouveaux fichiers et dossiers, ajoutez à l’entrée d’autorisation 'object_inherit' et 'container_inherit' respectivement. Par exemple, si vous souhaitez ajouter une entrée pour les utilisateurs du groupe local dans un dossier dir Pour accorder un accès complet et hériter des nouveaux fichiers et dossiers, vous devez utiliser la commande suivante :
# chmod +a group users allow dir_gen_all,object_inherit,container_inherit dir # ls -led dir drwxrwxr-x + 2 root wheel 0 Jul 2 14:22 dir OWNER: user:root GROUP: group:wheel 0: group:Users allow dir_gen_all,object_inherit,container_inherit 1: user:root allow dir_gen_read,dir_gen_write,dir_gen_execute,std_write_dac,delete_child 2: group:wheel allow dir_gen_read,dir_gen_execute 3: everyone allow dir_gen_read,dir_gen_execute
Vous pouvez également modifier les ACE à l’aide des SID, UID ou GID. Pour ce faire, voici quelques exemples de syntaxe :
chmod +a sid <actual SID> <target path> chmod +a user <actual UID> <target path> chmod +a group <actual GID> <target path>
Additional Information
Cet article Microsoft décrit chaque type d’autorisation tel qu’il est décrit par Windows, mais pour plus d’informations sur chaque autorisation, saisissez comme indiqué dans ls led sur PowerScale, reportez-vous à la section man chmod. Références des autorisations de fichiers et de dossiers (lien externe)
: