我正在尝试为我正在开发的几个应用程序制定最佳架构。
在这两个应用程序中,我想利用 google/twitter/LinkedIn/etc 来提供用户身份的身份验证。该应用程序由一个 iOS 应用程序组成,该应用程序可以选择将数据发送到我在 node.js 中编写的服务器。
我想利用 OAuth 或 OpenId 来针对上述服务器识别用户,这样我就不必安装自己的身份验证系统。换句话说,允许用户在选择上传数据时重复使用他们的 id。
我还应该注意,除了识别用户、获取姓名和电子邮件地址之外,我目前无意使用他们的任何 API。
我想我有两个选择:
将授权代码放置在 iOS 客户端中,然后将某种密钥与可以验证的数据一起传输到服务器。
保持 iOS 客户端相当笨拙,并处理来自节点服务器的授权。
我可能更喜欢第二种选择,因为这意味着我可以集中身份验证并能够支持网站。这是我目前的理论。
做过这样的事情的任何人都可以给我一些关于优缺点、OAuth 或 OpenId 的指示,或指向一些示例的链接吗?