adminuser
我有一个位于组中的IAM 用户Administrators
(具有 AdministratorAccess)。
我已经习惯aws configure
设置了。
~/.aws/配置
[default]
region = us-east-1
output = json
~/.aws/凭证
[default]
aws_access_key_id = ************
aws_secret_access_key = ************
但当我运行时
aws lambda list-functions --profile adminuser
,它说
找不到配置文件(adminuser)
一旦我运行export AWS_DEFAULT_PROFILE=adminuser
并
aws lambda list-functions --profile adminuser
再次运行,它就会显示:
botocore.exceptions.ProfileNotFound:找不到配置文件(adminuser)
我读未找到 AWS CLI 配置文件。所以我尝试改为
~/.aws/配置
[adminuser]
region = us-east-1
output = json
~/.aws/凭证
[adminuser]
aws_access_key_id = ************
aws_secret_access_key = ************
再次运行aws lambda list-functions --profile adminuser
,则显示:
您必须指定一个区域。您也可以通过运行“aws configure”来配置您的区域。
我也尝试过官方AWS文档演示
~/.aws/配置
[default]
region = us-east-1
output = json
[adminuser]
region = us-east-1
output = json
~/.aws/凭证
[default]
aws_access_key_id = ************
aws_secret_access_key = ************
[profile adminuser]
aws_access_key_id = ************
aws_secret_access_key = ************
但还是失败了。
我怎样才能aws lambda list-functions --profile adminuser
成功运行?谢谢
答案1
我终于通过使用成功了
~/.aws/配置
[default]
region = us-east-1
output = json
~/.aws/凭证
[adminuser] // <- here changes to adminuser
aws_access_key_id = ************
aws_secret_access_key = ************
region = us-east-1 // <- note this line
答案2
除了使用之外,
aws lambda list-functions --profile adminuser
您还可以使用
aws lambda list-functions --profile default
这一切都会完成。
或者您可能想将“默认”更改为“adminuser”,您已经完成了。
这并不像文档不正确或诸如此类的事情。
答案3
我在 Windows 上使用 Jenkins 时遇到了同样的问题,我将 .aws 文件夹从我的配置文件复制到系统配置文件,C:\Windows\System32\config\systemprofile\
而不更改 Jenkins 服务,即 Jenkins 服务在本地系统帐户上运行。然后 Jenkins 上的 Windows 批处理作业会获取与我们在 Windows cmd 中运行相同的结果。此外,我卸载了通过 pip3 方法完成的 AWSCLI,使用了 AWSCLI .msi 类型的安装,因此解决了 PATH 问题错误(构建期间出现“未找到 aws 命令”)
答案4
我遇到了同样的问题,就我而言,配置和凭据文件没有读取权限。为两个文件提供了访问 chmod 755,问题就解决了。