Python | os.getresuid 函數
最近更新時間 2020-12-07 12:43:15
os.getresuid 函數返回一個由 (ruid, euid, suid) 所組成的元組,分別表示當前進程的真實用戶ID,有效用戶ID和甲暫存用戶ID。
實際用戶ID和有效用戶ID
- check實際用戶ID和實際用戶組ID - 標識我是誰。也就是登錄用戶的uid和gid,比如我的Linux以simon登錄,在Linux運行的所有的命令的實際用戶ID都是simon的uid,實際用戶組ID都是simon的gid(可以用id命令查看)。
- check有效用戶ID和有效用戶組ID - 進程用來決定我們對資源的訪問權限。一般情況下,有效用戶ID等於實際用戶ID,有效用戶組ID等於實際用戶組ID。當設置-用戶-ID(SUID)位設置,則有效用戶ID等於文件的所有者的uid,而不是實際用戶ID;同樣,如果設置了設置-用戶組-ID(SGID)位,則有效用戶組ID等於文件所有者的gid,而不是實際用戶組ID。
函數定義
os.getresuid()
# 函數定義
if sys.platform != 'win32':
# Unix only
...
def getresuid() -> Tuple[int, int, int]: ...
...
兼容性:Unix 系統。
參數
- checkNone - 無。
返回值
- checkTuple[int, int, int] - ID 元組。
示例1: - 使用 os.getresuid() 函數獲取用戶ID。
# coding=utf-8
# Python3 代碼
# 講解怎樣使用 os.getresuid() 函數獲取用戶ID
# 引入 os 庫
import os
# 獲取用戶ID
ruid, euid, suid = os.getresuid()
print("Real ID:", ruid)
print("Effective ID:", euid)
print("Saved ID:", suid)
Real ID: 0 Effective ID: 0 Saved ID: 0
使用不同用戶運行腳本會返回不同結果。