第三方用户登录 [ 新手入门 ]
想在yii框架上做人人,新浪等的第三方的登录,本身的登录是用了Yii框架的loginform ,包括后面的登录认证,session ,cookie等都是系统生成,现在我从第三方比如人人授权以后,可以得到在人人登录的个人的uid ,用户名等信息,现在想用用户名登录自己系统,但是yii本身的认证像是 isguest等都无法通过第三方用户的认证,
小白新人 对yii不是很了解,我想要这个用户跟其他登录用户一样,进行其他操作应该怎么做,我试着写了这个用户的yii::app->user->setState(“username”,$username)
可是无法通过Yii认证,
有什么办法可以让这样的用户避过认证,像其他登录用户一样操作
共 5 条回复
-
建议可以先用纯php写个接口,然后再整合Yii。
参考:
http://wiki.dev.renren.com/wiki/首页 -
第三方登陆是要这样做的。
用户使用第三方openid登陆后,api会告诉你该会员在其网站上的信息,其中会包含一个唯一的用户标识,
你要做的,就是记录下这个用户标识,来确认用户的身份。
但是很明显,这个用户标识,可能是这个的openid,也有可能是另一个的,总之是需要对应 一个本站的用户信息。这样,你就需要把Openid绑定你自身的会员。
会员在使用第三方账号登陆时,通过api确认用户身份后,即可通过该应用的openid来找到本站会员记录,
这个时候,自己写一个登录流程,仅为第三方登陆服务。这个流程,不再需要密码认证即可。其过程和你之前做的一样。
就OK了。 -
是这样的,第三方的应用,自己写自己的,你完全不用管。
实际情况是,你自己本站有一个用户,(如果第三方应用第一次登陆,则自动创建,或让用户补充资料,一般是让用户再补充资料,如昵称,密码等,以后用户就可以直接使用本站账号登陆),访客通过第三方登陆后,你会要求他绑定本账账号,如果没有,则提示创建(也可自动创建,这个是本站的身份)。
接下来最重要一点。绑定本站账号与第三方应用的openID账号之间关联。 这一步是重点。
以后当用户使用第三方登陆时,则可以参数openID,来找到本站账号,直接使用该账号做登陆认证流程即可(实无非就是查询会员的时候,不做密码验证而已。)如果想要更多功能,记录第三方应用的授权key,则可以代替用户发微博什么的。
但是目前,第三方的授权都有时间限制。。这个需要注意一下。
goldlike qingdao
最后登录:1970-01-01
在线时长:0小时0分
- 粉丝1
- 金钱40
- 威望0
- 积分40