对于以AWS,python和boto开头的人来说,这似乎是一个非常常见的错误。
NoAuthHandlerFound: No handler was ready to authenticate. 1 handlers were checked. ['HmacAuthV4Handler'] Check your credentials
我知道凭据有效并且是正确的,因为我已经使用它们来测试以前的事情,例如rds连接。
rds的脚本如下:
import boto.rds as rds
import boto3 as b3
import boto
from sqlalchemy import create_engine
conn = boto.rds.connect_to_region("us-west-2",aws_access_key_id='<ID>',aws_secret_access_key='<KEY>')
engine = create_engine('postgresql://my_id:my_pass@datawarehouse.stuff.us-west-2.rds.amazonaws.com/db_name', echo=False)
res = engine.execute("select * from table")
print res,engine
哪个运行没有错误。
VPC方面有什么我遗漏的吗?访问权限?
它让我疯了!
我在用户级别(非系统级别)将BOTO_CONFIG
设置为C:/Users/%USER%/boto.config
。
和C:/Users/%USER%/boto.config
读作:
[default]
aws_access_key_id = <MY_ID>
aws_secret_access_key = <MY_SECRET>
print boto.__version__
产率:
2.40.0
感谢您的帮助。