CakeFest 2024: The Official CakePHP Conference

posix_seteuid

(PHP 4 >= 4.0.2, PHP 5, PHP 7, PHP 8)

posix_seteuidEstablecer el UID efectivo del proceso actual

Descripción

posix_seteuid(int $uid): bool

Establece el ID de usuario real del proceso actual. Esta es una función privilegiada y se necesitan los permisos apropiados (usualmente root) en el sistema para tener la capacidad de ejecutar esta función.

Parámetros

uid

El id de usuario.

Valores devueltos

Devuelve true en caso de éxito o false en caso de error.

Ver también

add a note

User Contributed Notes 1 note

up
1
divinity76 at gmail dot com
3 years ago
if you want to set uid by username rather than uid, try combining it with posix_getpwnam(),

<?php
posix_seteuid
(posix_getpwnam("www-data")["uid"]);
posix_setegid(posix_getpwnam("www-data")["gid"]);
?>

note that posix_getpwnam() reads /etc/passwd on each invocation, if you need it to go fast, this should be faster (only read passwd once):
<?php
$posix_user_info
=posix_getpwnam("www-data");
posix_seteuid ($posix_user_info["uid"]);
posix_setegid($posix_user_info["gid"]);
?>

and to go back to being root, just set them to 0,

<?php
posix_seteuid
(0);
posix_setegid(0);
?>
To Top