我在一个受控系统上运行flash(AIR)应用程序(只有一台计算机运行它,没有人可以访问它)。
我将在亚马逊的S3上托管一些文件,我需要确保只有我在该计算机上本地运行的Flash应用程序才能访问这些文件。
我想知道这样做最好(最安全)的方法是什么。
我最初的想法是将S3上的文件设为私有,并将密钥存储在运行Flash应用程序的本地计算机上。然后,当我需要从闪存中访问文件时,我会发送一个经过验证的查询字符串,其中包含一些到期时间。唯一的问题是我不知道如何在flash中生成S3签名。此外,我对将密钥存储在闪存机器上持怀疑态度(即使它是私人拥有的机器,没有其他用户使用它)。
或许有更好的方法吗?我可以访问带有PHP的服务器,所以我可以将它用作某种代理,我只是不确定如何保持文件访问安全而不是通过Web服务器创建瓶颈(而不是直接访问S3)。
任何帮助都将不胜感激。
答案 0 :(得分:1)
我会使用代理,因此您可以为您决定创建的任何未来客户重用文件检索架构。让Flash应用程序对代理进行身份验证,以友好的API方式请求文件,然后让代理从S3检索文件。