通过AWS帐户将消息从一个SQS队列复制到另一个SQS队列的最佳方法是什么?搜索后,我将授予IAM用户(在目标帐户中)完全读和写访问权限的策略附加到源队列。然后,我向源队列附加了一个权限,使每个人都可以在队列上进行发送和接收消息访问。
我的错误越来越少-
线程"main“com.amazonaws.AmazonServiceException中的异常:请求中包含的安全令牌无效。(服务: AmazonSQS;状态代码: 403
可能IAM用户凭据有问题,但是,我刷新了凭据,但我仍然收到错误
发布于 2018-06-30 11:16:11
权限是次要问题。主要问题是如何“跨AWS帐户将消息从一个SQS队列复制到另一个SQS队列”。
Amazon最近引入了当消息到达时触发AWS函数的功能。您可以创建一个Lambda函数,然后在另一个队列中创建消息(该队列可能位于另一个帐户、区域等中)。但是,原始消息一旦被处理就会被删除,所以它并不是真正的“复制”消息。
更好的方法是:
请参阅:将Amazon消息发送到另一个帐户中的Amazon队列-- Amazon简单通知服务
有一个AWS re的精彩视频:发明展示了如何同时使用SQS和SNS。
更新:如何在队列中复制现有消息
“队列中存在需要复制到新帐户中的新队列的消息。”
如果是这样,那你就有麻烦了!
队列的思想是检索、处理和删除消息。显然,这是一个“复制”消息的坏主意,因为你不想删除它们。
您可以尝试增加队列的不可见超时,然后检索队列中的所有消息。它们将被放置在飞行中,这意味着它们暂时不可见,但如果在不可见超时结束时未删除,则会重新出现在队列中。因此,应用程序可以读取每条消息(但不能删除它们),并在第二个队列中创建新消息。然后,每个原始消息将重新出现在原始队列中。
或者,您可以编写一个应用程序来读取每条消息并将其发送到两个队列中,同时删除源消息。然后,将其中一个新队列视为原始队列的替换。
底线:没有预先提供的方法.你得自己去做。
https://stackoverflow.com/questions/51113549
复制相似问题