Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 以特定用户身份执行脚本_Python_Windows_Python 2.7 - Fatal编程技术网

Python 以特定用户身份执行脚本

Python 以特定用户身份执行脚本,python,windows,python-2.7,Python,Windows,Python 2.7,我有一个python脚本,它执行一些文件处理,需要作为特定用户运行。似乎在Unix上,这可以通过使用os.setuid来完成。如何在windows上的python中执行此操作?检查您是否是特定用户,如果不是,请不要运行python脚本。至少在unix中可以通过检查uid来完成,在windows中,您可以使用wmic useraccount get name、sid来获取用户安全标识符,或者批量使用%USERNAME%我认为不可能从脚本中完成,但您可以使用命令调用脚本;e、 g runas /us

我有一个python脚本,它执行一些文件处理,需要作为特定用户运行。似乎在Unix上,这可以通过使用os.setuid来完成。如何在windows上的python中执行此操作?

检查您是否是特定用户,如果不是,请不要运行python脚本。至少在unix中可以通过检查uid来完成,在windows中,您可以使用wmic useraccount get name、sid来获取用户安全标识符,或者批量使用
%USERNAME%
我认为不可能从脚本中完成,但您可以使用命令调用脚本;e、 g

runas /user:domain\username "python best_script_ever.py"

这种方法潜在的巨大缺点是,在提示时必须提供密码。

这是一个环境问题,我认为您不应该尝试从脚本本身内部执行此操作。我认为不可能从脚本内部执行此操作,但您可能可以使用@CodyPiersall调用脚本,到目前为止,你的建议似乎是最好的选择。请将此作为答案之一,这样我至少可以投票。为您做任何事,@user3885927.:)请在此处查看相关的公认答案:问题是专门询问如何在Windows中执行此操作。@par,我的问题不是获取当前用户的凭据或检查他是否是有效用户。我只是想让它作为一个特定的用户运行。@user3885927我不确定是否真的有一个好的方法来做到这一点,除非你像我说的那样,确保你是运行python的用户script@user3885927我试图这样做是为了尽量减少用户的不便,比如像科迪说的那样输入密码