我必须为移动应用程序开发一个RESTful API,并且对这些部分之间的通信流程有一些担忧。我不熟悉移动设备和OAuth的API开发。REST API + OAuth +移动流程
共同项目应该以这种方式工作:
- 允许用户只使用自己的谷歌账户
- 移动应用程序使用本网站的API,所有的信息都存储在后端登录
我在这里发现了一个类似的问题OAuth on REST API for mobile app我更喜欢它的第一个解决方案,但是我对这个解决方案的安全性有一些疑问。
1)我应该使用OAuth2 API吗?我不确定将用户的Google ID发送到API以获取用户数据是个不错的主意。
2)如何检查服务器上的Google ID是否正确和实际?或者它根本不重要?
我想这种情况下,但我不知道这是最好的解决办法:
1)用户登录上使用谷歌自己的账户在第一时间的移动应用程序。
2)移动应用程序收到Google ID和一些附加信息。
3)移动应用程序将Google ID发送到服务器。
4)服务器使用OAuth2。它为用户创建一个帐户(将Google ID保存在数据库中)并将访问令牌返回给移动应用程序。
5)移动应用程序在本地存储访问令牌并将其用于请求到服务器。一旦访问令牌过期,用户必须使用他的Google帐户再次登录移动应用程序。
我对使用Google ID生成令牌有一些担忧。我的意思是,任何人都可以使用某人的Google ID创建令牌。坏主意:(
而且我应该使用JWT更好地为令牌?
感谢您的帮助!
谢谢!这非常有帮助 – Elena