Python 脚本无法读取密码
不幸的是,Python脚本设计为使用提升的凭据运行Python 脚本无法读取密码,python,elevated-privileges,Python,Elevated Privileges,不幸的是,Python脚本设计为使用提升的凭据运行 它仍然提示我输入密码 当我输入正确的密码时,它不起作用 下面是script1,它使用提升的凭据调用script2 import os import sys, subprocess, socket, string import wmi, win32api, win32con import win32com.shell.shell as sh ASADMIN = '/user:DOMAIN\username' os.system('"run
import os
import sys, subprocess, socket, string
import wmi, win32api, win32con
import win32com.shell.shell as sh
ASADMIN = '/user:DOMAIN\username'
os.system('"runas /user:DOMAIN\username "D:/Python27/python.exe script2.py sender-ip=10.10.10.10 < password.txt""')
sys.exit(0)
if sys.argv[-1] != ASADMIN:
script = os.path.abspath(sys.argv[0])
params = ''.join([ASADMIN] + ['D:\Python27\python.exe',script] + sys.argv[1:])
sh.ShellExecuteEx(lpVerb='runas',lpFile=sys.executable,lpParameters=params)
sys.exit(0)
未创建output.txt
有什么想法吗
编辑
我也看了这个帖子,
但不管我怎么努力,我总是会出错
Attempting to start c:\test.bat as user "DOMAIN\username" ...
RUNAS ERROR: Unable to run - c:\test.bat
1326: Logon failure: unknown user name or bad password.
让我们一次一个地谈谈你的问题 1。它仍然提示我输入密码 排队
os.system('"runas /user:DOMAIN\username "D:/Python27/python.exe script2.py sender-ip=10.10.10.10 < password.txt""')
os.system(“'runas/user:DOMAIN\username”D:/Python27/python.exe script2.py发送方ip=10.10.10
您正在向script2
提供密码runas
命令仍然需要密码,因为正在尝试以其他用户的身份运行程序
2。当我输入正确的密码时,它不起作用
嗯。。。代码不起作用,很清楚。但是,当你问问题时,你必须更加具体。现在查看一下您的代码,我可以看到您正试图在远程机器上执行ping
远程计算机可能有防火墙吗?
您是否尝试过手动执行ping
编辑:未创建output.txt文件,并且运行脚本不会告诉您写入文件时的任何错误,很明显您的代码遇到了
sys.exit()
行。您可以使用PsExec
您可以提供用户名和密码,并且不需要将执行提升为管理员:
psexec[\computer[,computer2[,…]|@file]\[-u user[-p psswd][-ns][r servicename][h][l][s][-e][x][i[session][-c[-f |-v][-w directory][-d][-a n,n][-cmd arguments]
使用-e开关可以给出与Runas/netonly相同的结果:
-e不加载指定帐户的配置文件。如果执行
打印,您会得到什么?@pss--在最后第五行输出后,我在哪里保留“打印”,错误=pst.communicate()
He publicado una respuesta,pero si usted publica información sobre el error que se obtien a partir de la ejeucción de su código,se podría mejorr.output.txt文件未创建,运行脚本不会告诉您任何关于写入文件的错误,显然您的代码遇到了sys.exit()之一
行。我可以手动ping远程计算机。当我使用提升的凭据手动打开命令提示符并运行script2时,它工作得非常好。为了简化问题,我更改了script2…所有计算机都可以ping以解决问题1:如何为runas命令提供密码。这是我的问题。好的,这是另一个问题。这个问题已经回答。我建议您写一个新问题,比如说如何自动向runas命令提供密码?
请回答新问题,
os.system('"runas /user:DOMAIN\username "D:/Python27/python.exe script2.py sender-ip=10.10.10.10 < password.txt""')