作者kitesurf (飞阿!)
看板AndroidDev
标题Re: [问题] 登入,Syncadapter,Token,Server
时间Wed Dec 3 10:32:15 2014
→ ginnyhuang:使用第三方平台登入,我是在user登入後取得该account的 05/13 15:36
→ ginnyhuang:ID,使用这个ID当作user的帐号存入server的database, 05/13 15:37
→ ginnyhuang:之後在app中user和server的沟通就以此帐号为凭依(也可 05/13 15:37
→ ginnyhuang:以自行加入其他识别字串) 05/13 15:37
→ ginnyhuang:因为我只有用到让user可以快速登入,没有需要使用社群 05/13 15:37
→ ginnyhuang:互动,所以只是让第三方平台帮你识别这个人是谁,不需 05/13 15:37
→ ginnyhuang:要记录token什麽的 05/13 15:38
→ ginnyhuang:我记得和第三方的auth token也是有时效性的,不确定是 05/13 15:38
→ ginnyhuang:每次重新登入他会更新还是多久更新一次 05/13 15:38
→ ginnyhuang:auth token应该是给第三方程式登入但又不想让该程式知 05/13 15:38
→ ginnyhuang:道帐密而使用的流程?app和server是否也可以(需要)用, 05/13 15:40
→ ginnyhuang:这我还真不太清楚XD(这部分没研究,我是直接加密) 05/13 15:40
→ ginnyhuang:看新闻FB似乎要推出个匿名登入...不知道新版情况如何, 05/13 15:40
→ ginnyhuang:坐等api释出罗@@ 希望以上资讯有帮到你~也许其他人有更 05/13 15:40
→ ginnyhuang:更安全的做法? 05/13 15:41
→ ginnyhuang:刚查到有关实作OAuth2"服务"的系列文,还不错: 05/13 15:41
→ ginnyhuang:
http://ppt.cc/vO3Q 05/13 15:42
→ ginnyhuang:或google: OAuth 2.0 笔记 05/13 15:44
感谢ginny大的回覆。
从推文了解,ginny 大是把 "login with google"
当作一个帮user省去打email & password的sign up的工具
想请问我这个从推文中理解的这个流程,是不是正确标准流程?
login with google -> get username(gmail) -> register to AccountManager ->
register username in OUR server -> server grants token ->
use the token fetch protected data in our server
举例来说:
1. emma 在我们的app 使用 login with google
2. app 获得 emma 的 username (
[email protected]) & google token
根据scope不同,app可以用这个google token 跟 google 要其他资料 (不重要)
3. app 把
[email protected] register 在 app 的 AccountManager
4. app 把这个account register在"我们的"server database
同时,"我们的" server 也 return 一个token'
5. 之後所有 app 对"我们的"server 要 protect 资料时,都要使用token'
如果这是标准流程,我有问题,
在步骤4,传统登入流程,credential会带 username + password
可是这个OAth是没有带password,这样"我们的"server该如何认证这是emma?
google document看很多次了,可是都只有说到该如何用google token要google资料
或是该怎麽把one-time authorization code pass给server
让server可以跟google要资料 都没有解释到我的问题
请板上大大帮忙了
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 76.195.58.29
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1417573938.A.6CB.html
1F:推 freesamael: 用 google access token 当作 credentials, 12/04 02:49
2F:→ freesamael: scopes 只要有 "profile" 就可以了 12/04 02:49
4F:→ freesamael: server 端拿手机传上来的 token 去 get profile 12/04 02:50
5F:→ freesamael: 由 return 的 uid 验证是否为 "emma" 12/04 02:50
7F:→ freesamael: 剩下就两个 error handling 要处理 12/04 02:51
8F:→ freesamael: 1. 如果手机传给 server 的 token 已经过期 12/04 02:51
9F:→ freesamael: 应以适当 error code 让 app 重新取得 google token 12/04 02:51
10F:→ freesamael: 2. 如果手机上的 google account 登出之後 12/04 02:51
11F:→ freesamael: 看是你的 app 要同时登出还是怎样 handle 12/04 02:52