我试图编写一个每12小时登录一个网站的Python脚本。
问题是它不会托管在我的计算机上,我需要保证凭据安全。没什么大的,只要足够安全,这样打开脚本的人就不会在脚本中看到它们的硬编码。
我是否应该使用已编译的Python脚本,或者有没有办法为脚本提供具有凭据的加密文件,只有脚本可以读取它?
答案 0 :(得分:0)
当您要将凭据带入单独的模块并使用cython进行编译时,您可以轻松隐藏凭据。您只需将脚本和* .so文件发送到另一台计算机。
cred.pyx:
def mysqlCredentials():
return {'username': 'dbAdmin', 'password': 'mySecret'}
def someApiCredentials():
return {'username': 'apiTestUser', 'password': '1234'}
您只需要编译它,如cython教程和主脚本中所述:
import cred
print (cred.__file__)
print(cred.mysqlCredentials())
返回:
/tmp/cred.cpython-36m-x86_64-linux-gnu.so
{'username': 'dbAdmin', 'password': 'mySecret'}