94 votes

Quelle est la meilleure façon de vérifier si l’utilisateur d’un script dispose de privilèges de type root ?

J’ai un script Python qui fera beaucoup de choses qui nécessiteraient des privilèges de niveau racine, comme le déplacement de fichiers dans /etc, l’installation avec apt-get, etc. J’ai actuellement :

Est-ce la meilleure façon de faire la vérification? Existe-t-il d’autres pratiques exemplaires?

92voto

Alex Martelli Points 330805

obtient l’ID utilisateur effectif, ce qui est exactement ce que vous voulez, donc je ne peux pas penser à une meilleure façon d’effectuer une telle vérification. Le seul élément qui est incertain est que « root-like » dans le titre: votre code vérifie *exactement*, pas de « like » à ce sujet, et en effet je ne saurais pas ce que « root-like but not root » signifierait - donc, si vous voulez dire quelque chose de différent de « exactement root », peut-être que vous pouvez clarifier, merci!

37voto

msw Points 25319

Selon le principe « Plus facile de demander pardon que la permission » :

Si vous êtes préoccupé par la non-portabilité de vous ne devriez probablement pas être en train de vous salir de toute façon.

18voto

jcarballo Points 1662

Vous pouvez demander à l’utilisateur d’accéder à sudo :

Le commutateur met à jour les informations d’identification mises en cache de l’utilisateur (reportez-vous à la section).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X