我想对AWS请求使用v4签名。但是,我需要credentials变量来使用签名过程。
现在,我可以使用id和密钥(我不想这样做)成功地对请求进行签名。
我有一个lambda函数,它有适当的权限。所以问题是我如何使用我的凭证变量的权限?
以下是我尝试使用id和密钥
creds := credentials.NewStaticCredentials(os.Getenv("AWS_ACCESS_KEY_ID"), os.Getenv("AWS_SECRET_ACCESS_KEY"), "")
signer := v4.NewSigner(creds)
我看了一下
https://docs.aws.amazon.com/sdk-for-go/api/aws/credentials/
其中列出了创建凭据的所有方法
-
func NewChainCredentials(providers []Provider) *Credentials
-
func NewCredentials(provider Provider) *Credentials
-
func NewEnvCredentials() *Credentials
-
func NewSharedCredentials(filename, profile string) *Credentials
-
func NewStaticCredentials(id, secret, token string) *Credentials
-
func NewStaticCredentialsFromCreds(creds Value) *Credentials