Python-检查用户是否具有管理员权限

Python-检查用户是否具有管理员权限,第1张

Python-检查用户是否具有管理员权限

我需要一个简单的Windows / Posix解决方案测试用户是否具有文件系统的root /
admin特权,而无需安装第三方解决方案。我了解依赖环境变量时存在漏洞,但它们符合我的目的。可能可以扩展此方法以读取/写入注册表。

我在WinXP,WinVista和Wine上使用Python 2.6 / 2.7进行了测试。如果有人知道这在Pyton
3.x和/或Win7上不起作用,请告知。谢谢。

def has_admin():    import os    if os.name == 'nt':        try: # only windows users with admin privileges can read the C:windowstemp temp = os.listdir(os.sep.join([os.environ.get('SystemRoot','C:\windows'),'temp']))        except: return (os.environ['USERNAME'],False)        else: return (os.environ['USERNAME'],True)    else:        if 'SUDO_USER' in os.environ and os.geteuid() == 0: return (os.environ['SUDO_USER'],True)        else: return (os.environ['USERNAME'],False)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5664586.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存