作为更广泛的学习过程的一部分,我希望构建一个网站和移动应用程序,使用一个通用的 api 进行数据存储和检索(将其视为一个简单的 cms)。移动应用程序将具有额外的功能,例如离线存储(草稿文章,例如离线)和访问媒体/相机等。将有一个面向公众的主页,每个成员都有一个安全区域,可以创建/修改自己的内容.
我已经做了很多阅读,但想就如何处理身份验证(我对构建应用程序和网站以及 api 本身感到满意)对此推荐的架构提供一些反馈。还可以说,在将来的某个时候,我可能想向第三方开放 api。那里有很多选项,但我似乎找不到任何代表流程的像样的图表。这种情况的利弊以及以下选项图表的链接会很棒。
宁愿不要求用户每次访问应用程序(或网站)时都登录,并且担心移动应用程序上也有任何私钥。
这一定是当今非常普遍的情况,我只是想知道人们对这些情况都有什么经验。
OAuth 1a OAuth 2 HMAC Basic with SSL Apache Shiro 托管服务,例如 StormPath 任何其他选项
如果最终用户能够使用他们的社交帐户(Twitter、Facebook 等)登录,并且还能够使用网站/应用程序创建帐户,那就太好了。