amazon-web-services - 新的唯一键名称上的AWS Golang CreateSecret()ResourceExistsException

标签 amazon-web-services go

不知道发生了什么,该代码昨天工作了一次。现在,无论我使用什么值,AWS都会返回一个已经存在的错误,但这是不可能的。

2020/04/17 19:10:30错误ResourceExistsException:操作失败,因为密码/ gog1 / RandomSiteName3已经存在。

_, err = PutParam("/gog1/RandomSiteName3", "test", true, EventGuid)
if err != nil {
        log.Printf("error writing secret: %v ", err)
        return
}



func PutParam(paramName string, paramValue string, encrypt bool, guid string) (output string, err error) {

    svc := secretsmanager.New(AWSSession)
    input := &secretsmanager.CreateSecretInput{
        // ClientRequestToken: aws.String(guid),
        // Description:        aws.String("My test database secret created with the CLI"),
        Name:         aws.String(paramName),
        SecretString: aws.String(paramValue),
    }

    fmt.Printf("putting secret key: %v", paramName)

    _, err = svc.CreateSecret(input)
    if err != nil {
        return "", err
    }

    return

}

最佳答案

这是由于s3触发器在循环中触发:

注意:如果写入触发通知的存储桶,则此操作
可能导致执行循环。例如,如果存储桶触发了
每次上传对象时的Lambda函数,以及该函数
将对象上传到存储桶,然后函数间接触发
本身。为避免这种情况,请使用两个存储桶,或将触发器配置为
仅适用于用于传入对象的前缀。

关于amazon-web-services - 新的唯一键名称上的AWS Golang CreateSecret()ResourceExistsException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61279100/

相关文章:

amazon-web-services - 旧 Lambda 函数是使用新 Lambda 函数更新现有 API Gateway 后触发的函数

javascript - 如何在 Amazon Lambda 中使用 .pem 文件访问 EC2 实例

amazon-web-services - 测试 Elastic Beanstalk 网站

python - 无法从 AWS boto3 生成的签名 URL 下载

amazon-web-services - 在具有默认配置的EMR群集模式下会发生什么?

postgresql - 节省时间。golang 中的时间到带有时区字段的 postgres 时间戳

go - 在 mgo 中定义 MongoDB 架构/集合

go - 使用反射取消引用结构指针和访问字段

go - 这个数组初始化语法是什么意思? (带键的元素)

go - 如何使用 gin 作为服务器编写 prometheus 导出器指标