
我需要一个简单的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)欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)