使用社交帐号登录自己软件怎么设计?

尼再采 发布于 2013/05/31 15:51
阅读 2K+
收藏 0


现在很多程序都免注册了,直接使用社交帐号就可以登录了,请问一下这样是怎么设计的?服务器要保存哪些数据?不清楚这方面的流程,希望懂着方面的大牛可以传授一些经验,谢谢。。。。

加载中
0
伊藤熊吉
伊藤熊吉

那些社交网站都会提供接口的,自己的实现他们的接口就行了,服务器貌似不需要记录帐户信息?社交网站提供的接口应该会返回帐号验证的结果,拿这个的结果当作你自己验证返回的结果就好了

0
尼再采

引用来自“伊藤熊吉”的答案

那些社交网站都会提供接口的,自己的实现他们的接口就行了,服务器貌似不需要记录帐户信息?社交网站提供的接口应该会返回帐号验证的结果,拿这个的结果当作你自己验证返回的结果就好了

但是使用这些毕竟还是跟正常注册情况下使用帐号有些不同,比如,程序中需要使用评论功能,这个应该怎么实现?自己的程序这边怎么做到 分析统计和记录这些数据呢?还有评分,浏览记录等需要记录跟个人相关的信息,这些怎么实现呢?
伊藤熊吉
伊藤熊吉
那这就涉及到了信息的同步,当别人用社交帐号注册的同时,你的服务器数据库会同步一份资料数据,当别人登录的时候,通过返回的验证结果,读取你自己的帐号信息,这样实际上就是用你网站自己的帐号在作操作
0
尼再采

引用来自“尼再采”的答案

引用来自“伊藤熊吉”的答案

那些社交网站都会提供接口的,自己的实现他们的接口就行了,服务器貌似不需要记录帐户信息?社交网站提供的接口应该会返回帐号验证的结果,拿这个的结果当作你自己验证返回的结果就好了

但是使用这些毕竟还是跟正常注册情况下使用帐号有些不同,比如,程序中需要使用评论功能,这个应该怎么实现?自己的程序这边怎么做到 分析统计和记录这些数据呢?还有评分,浏览记录等需要记录跟个人相关的信息,这些怎么实现呢?
使用什么作为唯一的凭证呢?使用用户输入的帐号信息?用户的帐号信息是在授权页上输入的,无法获取。而且比如新浪的sso授权,啥都不用输入,都是直接跳转的,也貌似比较麻烦。
0
pfdoschina
pfdoschina

引用来自“尼再采”的答案

引用来自“尼再采”的答案

引用来自“伊藤熊吉”的答案

那些社交网站都会提供接口的,自己的实现他们的接口就行了,服务器貌似不需要记录帐户信息?社交网站提供的接口应该会返回帐号验证的结果,拿这个的结果当作你自己验证返回的结果就好了

但是使用这些毕竟还是跟正常注册情况下使用帐号有些不同,比如,程序中需要使用评论功能,这个应该怎么实现?自己的程序这边怎么做到 分析统计和记录这些数据呢?还有评分,浏览记录等需要记录跟个人相关的信息,这些怎么实现呢?
使用什么作为唯一的凭证呢?使用用户输入的帐号信息?用户的帐号信息是在授权页上输入的,无法获取。而且比如新浪的sso授权,啥都不用输入,都是直接跳转的,也貌似比较麻烦。

生成一个随机本地账号,绑定这个第三方帐号的验证返回的OpenID。
所有操作还是用本地账号,只是在展示时显示为第三方帐号的信息。

pfdoschina
pfdoschina
回复 @pfdoschina : 如果必须给这个随机生成的帐号设置密码,可以用返回的OpenID作为密码。
pfdoschina
pfdoschina
回复 @尼再采 : 用户已经通过了第三方的验证,你可以认为他是可信的。 你如果实在不放心,可以要求用户在通过第三方验证后,必须提供一些其他的信息(比如给这个随机生成的帐号设个密码)。但这样的用户体验会很差。 你要明白,OAuth协议本身就是基于对服务提供方的信任。如果不信任,还不如不用。
尼再采
你的意思是在自己的服务器上面申请一个帐号与验证返回的openId绑定,然后用户所做的操作在自己服务器上保留一份?如果这样的话,那么本服务器上就没有使用密码了,安全性方面好像行不通啊。
0
HandMU
HandMU
根据接口api手册,一步步来,官网一般也有demo
0
mickelfeng
mickelfeng
openID是唯一的
迷彩风情
迷彩风情
回复 @尼再采 : fasfdasdf
尼再采
修正一下:各个sns平台之间的openId能够保持唯一吗?
尼再采
各个sns帐号之间的openId能够保持唯一吗?
0
mickelfeng
mickelfeng
各个平台用户都有唯一的id。也不一定叫openID
尼再采
大概思路是在自己的服务器上面申请一个帐号与验证返回的openId绑定,然后用户所做的操作在自己服务器上保留一份?如果这样的话,那么本服务器上就没有使用密码了,如果这样安全方面该如何考虑呢?
返回顶部
顶部