SETUID
Section: Manuel du programmeur Linux (2) Updated: 18 juillet 2003 Index
NOM
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
CONFORMITÉ
SPÉCIFICITÉS LINUX
VOIR AUSSI
TRADUCTION
NOM
setuid - Fixer l'ID de l'utilisateur.
SYNOPSIS
DESCRIPTION
setuid
fixe l'UID effectif du processus en cours. Si cet UID effectif
est celui du Super-User, les UID réels et sauvés sont également fixés.
Sous Linux
setuid
est implémenté comme le spécifie Posix, avec l'option _POSIX_SAVED_IDS.
Ceci permet à un programme Set-UID (autre que root) d'abandonner
tous ses privilèges, d'effectuer des tâches
non-privilégiée, et de retrouver son UID effectif de manière sécurisée.
Si l'utilisateur est le Super-User, ou si le programme est Set-UID
root, des précautions particulières doivent être prises.
La fonction
setuid
vérifie l'UID effectif de l'appelant et si c'est le Super-User,
tous les UID du processus sont mis à
uid.
une fois ceci effectué, il est impossible au programme de retrouver
ses privilèges de Super-User.
Ainsi un programme Set-UID root désireux d'abandonner temporairement
ses privilèges, en prenant l'identité d'un utilisateur non-root, puis
de récupérer ses privilèges par la suite ne doit pas utiliser
setuid.
On peut accomplir ceci en utilisant l'appel (non-POSIX, BSD)
seteuid.
VALEUR RENVOYÉE
setuid
renvoie 0 s'il réussit, ou -1 s'il échoue, auquel cas
errno
contient le code d'erreur.
ERREURS
- EPERM
-
L'utilisateur n'est pas Super-User et
uid
ne correspond ni à l'UID réel, ni à l'UID sauvé du processus.
CONFORMITÉ
SVr4, SVID, POSIX.1. Pas tout à fait compatible avec l'appel système BSD
4.4, qui positionne l'ensemble des IDs réel, sauvé et effectif. SVr4 indique
une condition d'erreur supplémentaire EINVAL.
SPÉCIFICITÉS LINUX
Linux dispose d'un concept d'UID de système de fichiers, qui est normalement
égal à l'UID effectif. L'appel
setuid
peut également fixer l'UID de système de fichiers du processus en cours.
Voir
setfsuid(2).
Si
l' uid
est différent de l'ancien UID effectif, le processus ne pourra pas laisser
d'image mémoire (core dump) sur le disque.
VOIR AUSSI
TRADUCTION
Christophe Blaess, 1996-2003.
|