如果您需要重要的变量和参数,如何使角度应用程序安全?

时间:2017-02-20 17:09:26

标签: javascript angularjs security ionic-framework amazon-s3

我仍然是Angular应用程序的新手,并对一些安全问题感到疑惑,并希望了解如何处理此问题的一些提示。

让我说我从我的Angular应用程序访问我的Amazon S3服务器。因为我需要在某处写下我的桶名,访问密钥和密钥......但由于用户都可以看到所有人都可以看到秘密密钥,这当然不会让他变得更加秘密。

出于同样的原因,我也不能使用类似SALT等的东西来创建用户密码。所有这些都是最终可见的,即使是minify和uglify,任何人都可以反转它。

做这样的事情的最佳方法是什么?到目前为止,我只能想到一件事,这就是在这种情况下根本不使用javascript或angular,例如只能通过PHP访问我的S3存储桶。但这不是我希望的唯一方式吗?

对于Firebase,它看起来同样有问题,因为每个人都可以立即看到所有信息,并且可以基本连接到我的数据库,而不是添加他想要的信息。当然,我可以设置规则并使某些事情有义务,但这也可以在我的代码中最终轻松嗅出来,如果我将它与php / mysql后端进行比较,这似乎都是不安全的。

1 个答案:

答案 0 :(得分:1)

您可以使用Cordova SecureStorage插件存储访问权限和/或会话令牌:

https://github.com/Crypho/cordova-plugin-secure-storage

由于此安全存储的Android实施使用KeyStore,因此用户必须具有安全的屏幕锁定设置(如指纹,图案或PIN)。该插件提供了检查此功能的功能,因此如果不是这样,您将能够发出警告(或阻止登录)。没有锁定的屏幕,没有方式可以在Android上以安全的方式保存您的密钥。