Man page - seteuid(2)

Packages contains this manual

Available languages:

en fr ja ru ro

Manual

seteuid

NOM
BIBLIOTHÈQUE
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
VERSIONS
Différences entre bibliothÚque C et noyau
STANDARDS
HISTORIQUE
VOIR AUSSI
TRADUCTION

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 .

VERSIONS

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 setresuid (2) et setresgid (2).

STANDARDS

POSIX.1-2008.

HISTORIQUE

POSIX.1-2001, 4.3BSD.

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 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 .