我以前使用过环境变量,它工作得很好.

现在,我正在将配置变量迁移到单个文件中,并且我有AWS_SECRET_ACCESS_KEY和AWS_ACCESS_KEY_ID变量,它们分别包含从此文件加载的值.

我try 了此代码,但收到错误:

creds := credentials.NewStaticCredentials("123", conf.AWS_SECRET_ACCESS_KEY, conf.AWS_ACCESS_KEY_ID)
sess, err := session.NewSession(&aws.Config{Credentials: creds})

以下是错误

InvalidClientTokenId:请求中包含的安全令牌无效.

如何将密钥正确插入AWS SDK调用?

推荐答案

try 重新排序您的参数,使access_key是第一个参数,Secret_key是第二个参数:

creds := credentials.NewStaticCredentials(conf.AWS_ACCESS_KEY_ID, conf.AWS_SECRET_ACCESS_KEY, "")

还可以try 添加区域:

sess, err := session.NewSession(&aws.Config{
    Region:      aws.String("us-west-2"),
    Credentials: credentials.NewStaticCredentials(conf.AWS_ACCESS_KEY_ID, conf.AWS_SECRET_ACCESS_KEY, ""),
})

Go相关问答推荐

JWT库返回及时无效的令牌有效

如何将泛型函数作为参数传递给golang中的另一个函数?

如何使用Promela建模语言对Golang RWLock进行建模

一种基于时间的Golang函数节制器

是不是有什么原因导致`Strings.EqualFold`不先进行长度比较?

无法使用Segentio;S Kafka-Go连接到融合的Kafka

使用 goroutine 比较 Golang 中的两棵树是等价的

如何将已知类型转换为指向switch 中类型参数的指针?

Secrets Manager Update Secret - Secret String 额外的 JSON 编码

Go 中的 YAML 自定义标签

golang gin 获取 cookie json

为什么 net/http 不遵守超过 30 秒的超时持续时间?

helm :将 YAML 转换为 JSON 时出错:yaml:第 xx 行:未找到预期的密钥

使用 GO 在侧 tar 文件中提取 tar 文件的最快方法

gorm 获取列名

将接口方法的参数限制为几个允许的 struct ?

Golang 泛型

使用 LoadLibraryA(path_to_dll) 加载 DLL 会将文件描述符 0、1 和 2 的继承句柄标志 (HANDLE_FLAG_INHERIT) 从 1 更改为 0

如何迭代在泛型函数中传递的片的并集?

将函数的值作为输入参数返回给另一个