botocore.exceptions.NoCredentialsError: Unable to locate credentials

初次在一个新环境做aws开发时,常会遇到一些各种各样环境配置问题。

问题1  代码中未指明资源部署区域

raise NoRegionError()
botocore.exceptions.NoRegionError: You must specify a region.

解决方法

可以按照如下方法。

ec2 = boto3.client('ec2', region_name='us-west-1')

也可以在如下的配置文件中声明。

问题2 未声明AWS ID的key值等。

raise NoCredentialsError()
botocore.exceptions.NoCredentialsError: Unable to locate credentials

解决方法

Window环境:在 C:\Users\your_name\.aws\ 目录下创建 credentials文件。

[default]
aws_access_key_id=XXXXXX
aws_secret_access_key=xxxx
region=us-west-1
format=json

Linux环境:在/home/your_name/.aws 目录下创建 credentials文件。——未测试

或者使用临时环境变量。

export AWS_SECRET_ACCESS_KEY="XXXXXXXXXXXX"
export AWS_ACCESS_KEY_ID="XXXXXXXXXXX"

或者安装awscli后,使用aws configure 命令配置。

你可能感兴趣的:(AWS,aws)