【发布时间】:2014-11-24 21:49:16
【问题描述】:
我已经通过环境变量导出了 AWS ACCESS KEY 和 SECRET,有没有办法在 boto 脚本中使用这些变量而不是将它们写入系统上的文件? 我不想在远程服务器上的任何文件中写入密钥和秘密。
【问题讨论】:
我已经通过环境变量导出了 AWS ACCESS KEY 和 SECRET,有没有办法在 boto 脚本中使用这些变量而不是将它们写入系统上的文件? 我不想在远程服务器上的任何文件中写入密钥和秘密。
【问题讨论】:
如果 use 你的意思是阅读它们并将它们输入 boto:你不需要这样做。 Boto 会读取它们,并且在通常需要 aws_access_key_id= 和 aws_secret_access_key= 参数的所有调用中,您只需将它们完全排除在外。因此,这样的调用将毫无问题地工作:
# note that we don't pass any credentials here...
conn = boto.ec2.connect_to_region("eu-west-1")
只要确保环境变量设置正确。这些是要使用的正确名称:
AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
更多细节在这里: http://boto.readthedocs.org/en/latest/boto_config_tut.html#introduction
【讨论】:
HOME)不过,您可以在 crontab 文件的开头设置它们。只需在定义时间表之前为它们分配AWS_ACCESS_KEY_ID=... 和AWS_SECRET_ACCESS_KEY=...。
Boto 会查找环境变量 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY,如果它们存在于环境中,它将使用它们。
【讨论】: