Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       seteuid, setegid - Définir les UID et GID effectifs

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <unistd.h>

       int seteuid(uid_t euid);
       int setegid(gid_t egid);

   Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

       seteuid(), setegid() :
           _POSIX_C_SOURCE >= 200112L
               || /* glibc <= 2.19 : */ _BSD_SOURCE

DESCRIPTION

       seteuid()  définit l'UID effectif du processus appelant. Les processus non privilégiés peuvent uniquement
       définir leur UID effectif à la valeur de leur UID réel, de leur UID effectif ou de leur UID sauvé.

       Cela fonctionne exactement de la même façon avec setegid() en raisonnant en terme de groupe (GID) au lieu
       d'utilisateur (UID).

VALEUR RENVOYÉE

       En  cas  de  succès, zéro est renvoyé. En cas d'erreur, -1 est renvoyé et errno est définie pour préciser
       l'erreur.

       Note : dans certains cas, seteuid() peut échouer alors même que  l'UID  de  l'appelant  est  0 ;  ne  pas
       vérifier  la  valeur  renvoyée par seteuid() pour détecter un échec est une grave erreur qui compromet la
       sécurité du système.

ERREURS

       EINVAL L'identifiant utilisateur ou groupe cible n'est pas autorisé dans cet espace de noms utilisateur.

       EPERM  Dans le cas de seteuid() : le processus appelant n'est pas privilégié (ne possède pas la  capacité
              CAP_SETUID  dans son espace de noms utilisateur) et euid ne correspond ni à l'UID réel, ni à l'UID
              effectif de l'utilisateur réel actuel, ni à l'UID sauvé du processus appelant.

              Dans le cas de setegid() : le processus appelant n'est pas privilégié (ne possède pas la  capacité
              CAP_SETGID dans son espace de noms utilisateur) et egid ne correspond ni au GID réel actuel, ni au
              GID effectif du groupe réel actuel, ni au GID sauvé actuel du processus appelant .

STANDARDS

       POSIX.1-2001, POSIX.1-2008, 4.3BSD.

NOTES

       Définir l'UID (GID) effectif à la valeur de l'UID (GID) sauvé est possible depuis  Linux 1.1.37 (1.1.38).
       Sur un système UNIX inconnu, il faut vérifier la présence de la constante _POSIX_SAVED_IDS.

       Dans  la glibc 2.0, seteuid(euid) est équivalent à setreuid(-1, euid) et peut ainsi modifier l'UID sauvé.
       Dans la glibc 2.1 et les versions suivantes, c'est équivalent à  setresuid(-1, euid, -1)  et  ne  modifie
       donc pas l'UID sauvé. Les mêmes remarques sont valables pour setegid(), à la différence que le changement
       d'implémentation de setregid(-1, egid) à setresgid(-1, egid, -1) est apparu dans la glibc 2.2 ou 2.3  (en
       fonction de l'architecture matérielle).

       D'après  POSIX.1,  seteuid() (resp. setegid()) n'a pas besoin de permettre à euid (resp. egid) d'avoir la
       même valeur que l'identifiant d'utilisateur (resp. de groupe) effectif, et certaines  implémentations  ne
       le permettent effectivement pas.

   Différences entre bibliothèque C et noyau
       Sous  Linux,  seteuid()  et  setegid()  sont  des fonctions de bibliothèques qui appellent respectivement
       setreuid(2) et setregid(2).

VOIR AUSSI

       geteuid(2), setresuid(2), setreuid(2), setuid(2), capabilities(7), credentials(7), user_namespaces(7)

TRADUCTION

       La  traduction  française   de   cette   page   de   manuel   a   été   créée   par   Christophe   Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>, François Micaux, Alain Portal  <aportal@univ-montp2.fr>,  Jean-Philippe  Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,     Thomas     Huriaux      <thomas.huriaux@gmail.com>,      Nicolas      François
       <nicolas.francois@centraliens.net>,     Florentin     Duneau    <fduneau@gmail.com>,    Simon    Paillard
       <simon.paillard@resel.enst-bretagne.fr>,    Denis    Barbier    <barbier@debian.org>,    David     Prévot
       <david@tilapin.org>,     Cédric     Boutillier     <cedric.boutillier@gmail.com>,    Frédéric    Hantrais
       <fhantrais@gmail.com> et Jean-Philippe MENGUAL <jpmengual@debian.org>

       Cette traduction est une documentation libre ; veuillez vous reporter à la  GNU  General  Public  License
       version 3   ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   concernant   les  conditions  de  copie  et  de
       distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel,  veuillez  envoyer  un  message  à
       ⟨debian-l10n-french@lists.debian.org⟩.