setuid

SETUID(2)                Linux Programmeurs Handleiding                SETUID(2)



NAAM
       setuid - zet gebruiker identiteit

OVERZICHT
       #include <unistd.h>

       int setuid(uid_t uid)

BESCHRIJVING
       setuid zet het geldende gebruiker ID van het huidige proces.  Als het
       geldende gebruiker-id van de aanroeper root is, dan worden de echte en de
       bewaarde gebruiker ID's ook gezet.


       Onder Linux is setuid gebouwd zoals de POSIX versie met de
       _POSIX_SAVED_IDS uitrusting.  Dit status een setuid (anders dan root)
       programma toe, al zijn gebruikers privileges te laten vallen, wat on-
       gepriviligieerd werk te doen, en dan het originele geldende gebruikers ID
       opnieuw in te zetten op een veilige manier.

       Als de gebruiker root is of het programma is setuid root, dan moet er
       extra opgepast worden. De setuid functie test het geldende uid van de
       aanroeper en als het de superuser is, worden alle met het proces
       verbonden ID's naar uid gezet.  Nadat dit heeft plaatsgevonden is het
       onmogelijk voor het programma om root privileges te herwinnen.

       Dus een setuid-root programma dat wenst om tijdelijk root privileges te
       laten vallen, de identiteit aan te nemen van een niet-root gebruiker, en
       dan de root privileges te herwinnen, kan setuid niet gebruiken.  U kunt
       dat voor elkaar krijgen met de (niet-POSIX, BSD) aanroep seteuid.

TERUGGEEF WAARDE
       Bij success wordt nul teruggegeven. Bij falen wordt -1 teruggegeven, en
       errno wordt naar behoren gezet.

FOUTEN
       EPERM  {toestemming} De gebruiker is niet de super-gebruiker, en uid kwam
              niet overeen met het geldende of bewaarde gebruiker ID van het
              aanroepende proces.

VOLDOET AAN
       SVr4, SVID, POSIX.1.  Niet helemaal verenigbaar met de 4.4BSD aanroep,
       die de alle -echte, bewaarde en geldende- gebruiker ID's zet.  SVr4
       beschrijft een extra EINVAL fouttoestand.

LINUX-EIGEN OPMERKINGEN
       Linux gebruikt het idee van bestandsysteem-gebruiker-ID, normaal is dat
       hetzelfde als het geldende gebruiker ID. De setuid aanroep zet ook ook de
       bestandssysteem gebruiker ID van het huidige proces.  Zie setfsuid(2).

       Als uid verschillend is van het oude geldende uid, dan zal het proces
       geen core-dumps mogen achterlaten.

ZIE
       getuid(2) {krijg uid}, setreuid(2) {zet*}, seteuid(2), setfsuid(2) {zet
       bestandsysteem uid}


VERTALING
       Dit is een handleiding uit manpages-dev 1.29.  Alles wat tussen `{'..`}'
       staat is aanvullende vertaling, en hoort niet bij de originele
       handleiding.  Email naar <manpages-nl@nl.linux.org>.

       $Id: setuid.2,v 1.1.1.1 2004/03/21 21:02:25 cor Exp $



Linux 1.1.36                      29 Juli 1994                         SETUID(2)