Python Glossary Русский

Python 3.2+Linuxosfunction

os.setresuid

os — user/group IDs

Set the real, effective and saved user ids. Availability: Linux.

Syntax

os.setresuid(...)

It sets all three UIDs explicitly — the most predictable way to drop privileges for good: setresuid(uid, uid, uid). -1 leaves a value unchanged. It exists on Linux and some BSDs, not on macOS.

Examples

import os
print(os.getresuid())  # → ? только Unix: тройка (реальный, эффективный, сохранённый) UID, например (0, 0, 0) под root
os.setresuid(1000, 1000, 0)  # → ? только Unix: реальный и эффективный UID становятся 1000, сохранённый остаётся 0
os.setresuid(-1, 0, -1)  # → ? только Unix: -1 оставляет поле нетронутым; вернуть euid=0 удаётся благодаря сохранённому 0
os.setresuid(1000, 1000, 1000)  # → ? только Unix: все три UID равны 1000 — привилегии сброшены окончательно
os.setresuid(0, 0, 0)  # → PermissionError, после полного сброса root уже не вернуть

See also

Common errors

Open in the full glossarydocs.python.orgReport an inaccuracy