Python Glossary English

все Python 3Linuxosфункция

os.getresuid

os — идентификаторы пользователя/группы

Возвращает тройку (реальный, эффективный, сохранённый) UID. Доступно на Unix.

Синтаксис

os.getresuid(...)

Возвращает сразу три UID: реальный, эффективный и сохранённый. Сохранённый позволяет программе временно сбросить привилегии через seteuid и затем вернуть их. Нужна при аудите программ, работающих с правами, чтобы убедиться, что привилегии сброшены во всех трёх местах.

Примеры

import os
print(os.getresuid())  # → ? только Unix: тройка (реальный, эффективный, сохранённый) UID, например (1000, 1000, 1000)
ruid, euid, suid = os.getresuid()
print(ruid == os.getuid())  # → ? True: первый элемент тройки — тот же реальный UID, что возвращает os.getuid()
print(euid == 0)  # → True, если процесс работает с правами root (например, запущен через sudo), иначе False
os.setresuid(ruid, ruid, ruid)  # → None: необратимый сброс всех трёх UID к реальному — после того как сохранённый UID перестал быть root, вернуть права уже нельзя

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности