Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 将SNS消息发布到AWS_IAM认证的Api网关端点 我已经创建了SNS主题 我已经创建了调用Lambda函数的API网关端点 我已经创建了指向API网关端点的主题HTTPS订阅_Amazon Web Services_Amazon Sns_Aws Api Gateway - Fatal编程技术网

Amazon web services 将SNS消息发布到AWS_IAM认证的Api网关端点 我已经创建了SNS主题 我已经创建了调用Lambda函数的API网关端点 我已经创建了指向API网关端点的主题HTTPS订阅

Amazon web services 将SNS消息发布到AWS_IAM认证的Api网关端点 我已经创建了SNS主题 我已经创建了调用Lambda函数的API网关端点 我已经创建了指向API网关端点的主题HTTPS订阅,amazon-web-services,amazon-sns,aws-api-gateway,Amazon Web Services,Amazon Sns,Aws Api Gateway,问题:当AUTH=none时一切正常,但当我启用AUTH=AWS_IAM时,订阅和消息都不会传递到我的lambda。它们也不会出现在Lambda或gatewaycloudwatch日志中,因为身份验证错误通常会出现这种情况 问题: HTTPS端点传递给AWS_IAM的身份是什么,所以它不允许(我的第一个想法是传递SNS海报令牌,但似乎不是这样) 我找不到任何方法将HTTPS端点与任何标识相关联,有方法吗 有很多关于将SNS交付给SQS或SNS网关的信息,但找不到任何关于实现我尝试的目标的信息

问题:当AUTH=none时一切正常,但当我启用AUTH=AWS_IAM时,订阅和消息都不会传递到我的lambda。它们也不会出现在Lambda或gatewaycloudwatch日志中,因为身份验证错误通常会出现这种情况

问题:

  • HTTPS端点传递给AWS_IAM的身份是什么,所以它不允许(我的第一个想法是传递SNS海报令牌,但似乎不是这样)
  • 我找不到任何方法将HTTPS端点与任何标识相关联,有方法吗
  • 有很多关于将SNS交付给SQS或SNS网关的信息,但找不到任何关于实现我尝试的目标的信息
  • 是否有任何方法可以调试AWS_IAM身份验证问题?文档我看到了“检查隐私”的建议,这是我已经做了很多小时的事情,但我没有更多的想法

我很高兴听到您的任何想法,谢谢。

为什么不让Lambda函数直接订阅SNS主题(无需通过API网关)


这应该很简单:

为什么不让Lambda函数直接订阅SNS主题(而不通过API网关)


这应该很简单:

这里是完整的链接,可以帮助您解决身份验证问题


如果是“检查权限”问题,则您的IAM用户没有足够的资源访问权限进行任何更改。

以下是完整的链接,可帮助您解决身份验证问题


如果是“检查权限”问题,则您的IAM用户没有足够的资源访问权限进行任何更改。

正如您在文档中看到的,SNS只能进行基本/摘要身份验证


文档中有一个关于验证消息有效性的部分,但这是您必须自己编写或从后端的一个SNS SDK中提取的代码。不幸的是,确实没有办法让SNS使用AWS SigV4对请求进行签名

正如您在文档中看到的,SNS只能进行基本/摘要身份验证


文档中有一个关于验证消息有效性的部分,但这是您必须自己编写或从后端的一个SNS SDK中提取的代码。不幸的是,确实没有办法让SNS使用AWS SigV4对请求进行签名

这无疑是一种有效的方法,其背后的思想是为任何类型的客户机(不一定知道aws)打开rest-only api。不幸的是,在这个阶段,我无法改变这种设计。在再次阅读了SNS的文档之后:我严重怀疑SNS是否能够向API网关端点发送IAM认证的HTTPS POST请求。文档只讨论了基本身份验证和摘要身份验证,但IAM有所不同。另一个问题是,没有办法为SNS帖子配置主体。(另外,如果“客户机”/“发布者”是SNS,那么通过API网关会产生额外的成本,这是不必要的。)这绝对是一种有效的方法,其背后的想法是为任何类型的客户机(不一定知道aws)打开rest only API。不幸的是,在这个阶段,我无法改变这种设计。在再次阅读了SNS的文档之后:我严重怀疑SNS是否能够向API网关端点发送IAM认证的HTTPS POST请求。文档只讨论了基本身份验证和摘要身份验证,但IAM有所不同。另一个问题是,没有办法为SNS帖子配置主体。(另外,如果“客户端”/“发布者”是SNS,那么通过API网关会产生额外的费用,这是不必要的。)我已经看到这个链接和我的API的其他部分工作正常。唯一的问题是SNS HTTPS订阅不会转发发送SNS消息的用户的凭据。换句话说,我不知道什么是我的用户,也不知道如何将用户分配到HTTPS订阅。我已经看到该链接和API的其他部分工作正常。唯一的问题是SNS HTTPS订阅不会转发发送SNS消息的用户的凭据。换句话说,我不知道什么是我的用户,也不知道如何将用户分配到HTTPS订阅。您是如何将API网关端点订阅到SNS主题的…我已经阅读了文档()但不太了解。就像您将消息发布到任何HTTPS端点一样。您只需要添加额外的代码来根据event.Type确认订阅,然后需要触发GET event.SubscribeURL。很抱歉遗漏了您的评论。您是如何将API网关端点订阅到SNS主题的…我已经阅读了文档()但不太了解。与您将消息发布到任何HTTPS端点的方式相同。您只需要添加额外的代码来根据event.Type确认订阅,然后需要触发GET event.SubscribeURL。很抱歉错过了你的评论。