【发布时间】:2016-04-04 15:44:22
【问题描述】:
我有一个使用 php/laravel 的应用程序,其中我使用 aws_sdk.js 推送 Amazon SQS。我认为这并不安全,因为 JS 文件 加载在客户端,客户端可以看到凭据和访问 Amazon SQS。
任何帮助解决这个安全问题!谢谢
【问题讨论】:
标签: javascript web-services laravel aws-sdk
我有一个使用 php/laravel 的应用程序,其中我使用 aws_sdk.js 推送 Amazon SQS。我认为这并不安全,因为 JS 文件 加载在客户端,客户端可以看到凭据和访问 Amazon SQS。
任何帮助解决这个安全问题!谢谢
【问题讨论】:
标签: javascript web-services laravel aws-sdk
客户端 javascript 不应直接依赖于 AWS 开发工具包。正如您正确指出的那样,您需要在 JavaScript 中放置一个 IAM 访问密钥。
相反,您的客户端应用程序应该向后端发出请求,并对其进行身份验证。例如,您可以向 PHP 发出 AJAX 或 POST 请求,或者您可以使用其他服务,例如 AWS API Gateway。然后,您的后端代码应负责将项目放入您的 SQS 队列。
由于您的后端现在将项目放入 SQS,因此您可以使用 IAM Roles 将 IAM 角色分配给 EC2 实例或 Lambda 函数。然后,您的服务可以使用适当的 SDK 访问 SQS(假设角色设置正确),而无需管理 IAM 访问密钥,因为 IAM 角色会为您完成。
【讨论】: