【发布时间】:2016-10-11 02:01:46
【问题描述】:
我正在学习如何使用 Rails 开发 API,但我找不到如何保护用户创建等基本方法。假设我有一个 Rails 后端 API 和一个前端移动应用程序。我希望应用程序能够进行 API 调用以创建新用户。当然,不是每个人都应该能够创建一个新用户,所以它应该有某种身份验证。我可以使用基本身份验证或摘要身份验证(并不重要,因为我肯定会使用 SSL),但是我必须将凭据硬编码到我的应用程序中。如果凭据以某种方式被发现,我将不得不更改它们,但这意味着应用程序的所有实例都不再经过身份验证,并且它们无法再创建用户。
我想拥有的东西:
- 只有我的应用才能使用用户创建调用。
- 更改凭据应该很容易,或者凭据应随时间自动更改。例如,如果它们涉及日期和时间,则更难破解。
- 应该不可能(或非常难以)击败背后的系统,同时随着时间的推移了解一些凭据。
是否可以让我的应用随机生成公钥和私钥对并使用它们?保护这些调用的标准方法是什么?
提前致谢,
鲁根·海德布切尔
【问题讨论】:
标签: ruby-on-rails rest authentication api-design