我有一个网络服务,它充当智能手机应用程序的后端。
我希望能够尽可能轻松地对用户进行身份验证,但即使我认为我理解了 OAuth,我也必须承认这里和那里都有一些缺失的部分。
验证:
假设用户有一部 Android 手机。他可能已经通过 Google 身份验证,如果我可以将此身份验证扩展到我的网络服务,那就太好了。Android 具有 OAuth 支持,因此用户打开他的应用程序,授予使用他的谷歌帐户的权限,并且应用程序对他的网络服务进行身份验证。
网络服务
由于该服务应该接受来自各种设备的用户,它不应该是谷歌特定的。应该可以注册一个帐户并从任何设备登录。我不确定是否可以单独使用 OAuth 注册一个新帐户,或者您是否需要先进行其他类型的身份验证 - 例如 OpenID。
通用 Web 服务的流程如何?用于注册用户并授予他访问 API 的通用 API?
此外 - 我不想控制连接到此服务的设备。我可以看到 OAuth 需要一个 consumer_key 和一个 consumer_secret。如果我通过 SSL 运行所有内容 - 消费者秘密仍然是秘密还是我可以只使用一些虚拟值?从而避免创建一个人们可以获得consumer_secret的设备注册系统?