我想从我创建的移动应用程序中收集信息。该应用程序允许用户在没有身份验证的情况下使用它,而且我希望将数据收集到 AWS SQS 等高可用性服务,这样我就不会错过任何数据。
该应用程序始终连接到互联网,因此无需离线收集数据。
困扰我的是如何以安全的方式发送数据,以便用户无法将虚假数据发送到我正在使用的同一端点。
Google Analytics 不适合这里,因为我需要访问原始数据,而不仅仅是汇总数据。
我想从我创建的移动应用程序中收集信息。该应用程序允许用户在没有身份验证的情况下使用它,而且我希望将数据收集到 AWS SQS 等高可用性服务,这样我就不会错过任何数据。
该应用程序始终连接到互联网,因此无需离线收集数据。
困扰我的是如何以安全的方式发送数据,以便用户无法将虚假数据发送到我正在使用的同一端点。
Google Analytics 不适合这里,因为我需要访问原始数据,而不仅仅是汇总数据。
您应该查看STS以从您的应用程序中获取临时访问凭证,而不是将 AWS 凭证硬编码到您的应用程序中。
您的应用程序不需要身份验证这一事实并不一定意味着您更有可能让恶意行为者向您的服务发送不良数据。如果您的应用程序具有身份验证,恶意行为者仍然有可能对请求进行逆向工程并使用经过身份验证的凭据发送错误数据。
虽然将数据直接发送到 SQS 是一个有效的选项,但如果您希望能够将数据发送到多个系统(例如多个 SQS 队列),您也可以将数据发送到 SNS。
您还可以考虑使用 API Gateway + Lambda 作为从您的应用程序调用的服务,即使 Lambda 函数仅将数据发送到 SQS,因为这将允许在未来提供额外的处理灵活性,例如使用之前的额外逻辑验证输入发送到 SQS。但是,当消息从队列中拉出时,这种类型的逻辑也可以很容易地执行。