本篇文章向大家介绍《有没有办法使用 aws-sdk-go 验证 aws 帐户的凭据》,主要包括,具有一定的参考价值,需要的朋友可以参考一下。
问题内容我正在使用 aws-sdk-go 中提供的 api 创建会话。
问题:如果我提供了错误的凭据,那么它也会创建一个会话。但是当我使用此会话进行其他一些 api 调用时,它会引发错误。
有什么方法可以在创建会话之前验证凭据吗?
会话创建方法:
var mycredentials =credentials.newstaticcredentials(access_key_id,secret_access_key,"")
var sess = session.Must(session.NewSession(&aws.Config{
Credentials: MyCredentials,
Region: aws.String(hostRegion),
MaxRetries: aws.Int(3),
}))
解决方案
“错误的凭据”是什么意思?如果凭据是假的,则每次调用都会失败。如果您的意思是您有不同的配置文件,请使用您在 ~/.aws/credentials 中指定的配置文件创建会话。例如,如果我在 ~/.aws/credentials 中有以下内容:
[default]
aws_access_key_id = ...
aws_secret_access_key = ...
[goober]
aws_access_key_id = ...
aws_secret_access_key = ...
当我创建会话时,我可以通过以下方式使用默认凭据:
sess := session.Must(session.NewSessionWithOptions(session.Options{
SharedConfigState: session.SharedConfigEnable,
}))
但是如果我想使用我的 goober 个人资料(来自 https://docs.aws.amazon.com/sdk-for-go/api/aws/session/):
sess, err := session.newsessionwithoptions(session.options{ 简介:“古伯”, })
理论要掌握,实操不能落!以上关于《有没有办法使用 aws-sdk-go 验证 aws 帐户的凭据》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注编程网公众号吧!