簡體   English   中英

我該如何區分用戶是root用戶還是sudo用戶

[英]How do I distinguish between when user is root vs when user is sudo'd

我想為KDE應用程序編寫一些Qt代碼,以區分用戶是root用戶還是用戶使用sudo來請求提升的特權,因此該應用程序可以針對每種用例顯示不同的消息。 檢查uid == 0捕獲兩種情況,但是如何區分它們呢?

您可以使用QProcessEnvironment讀取SUDO_USER環境變量:

QProcessEnvironment system_env = QProcessEnvironment::systemEnvironment();
qDebug() << "USER  : " << system_env.value("USER");
qDebug() << "SUDOER: " << system_env.value("SUDO_USER");

#include <unistd.h>並使用getlogin

std::cout << "LOGGED IN USER: " << getlogin() << std::endl;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM