有没有办法在没有访问和密钥的情况下将消息发送到 AWS SQS?

Is there any way to put a message to AWS SQS without access & secret key?

我们配置了具有 SQS 和 EC2 完全权限的 IAM 角色的 EC2 实例。有没有任何方法可以在没有 AWS SDK/CLI 支持的情况下将消息发送到队列?仅使用来自 EC2 实例的简单 REST 调用?

您可以使用 cURL 向 SQS 发送消息。

curl -d "Action=SendMessage&Version=2011-10-01&MessageBody=example" <your queue url>

但是,我强烈建议使用 IAM 角色来授予 write/read 对您的 SQS 的访问权限。

问题“有没有办法在没有访问权限和密钥的情况下向 AWS SQS 发送消息?”的答案是 YES

当您在 EC2 中使用 SDK/CLI 时,您只需将 IAM 角色附加到 EC2 即可让您与 SQS 进行通信。然后,一旦您正确设置了该角色,您就可以在没有访问权限和密钥的情况下向 AWS SQS 发送消息。这是推荐的。

问题“有没有任何方法可以在没有任何 SDK/CLI AWS 支持的情况下将消息发送到队列?仅使用来自 EC2 实例的简单 REST 调用? " 也是 YES

更多详情check this

但在那种情况下(使用简单 REST 调用)您将不得不 sign the request