php 第三方登录设计,构建一个第三方登录平台

针对多个系统用户统一登录的需求,可以创建一个认证中心,用户选择账号类型登录后绑定其他系统账号。每个系统需提供认证API,允许用户合并账号信息。权限设计上,每个系统内部自行处理,可参考成熟框架的ACL。对于第三方登录,通过token认证和获取用户基本信息的API实现。在PHP环境中,可以利用Laravel的SSO扩展包或OAuth方案。
摘要由CSDN通过智能技术生成

已存在电商网站两个、资讯类网站一个、内部系统三个,每个系统都有自己的用户表。

1.现在我要做一个统一登录点,提供登录功能,该如何设计登录表,登录表的用户与其他系统的用户怎么关联,我要实现在电商类的用户有个唯一标识,资讯类的用户也有自己的一个唯一标识。

2.每个登录用户都有自己角色,比如,电商角色就有管理订单,开新店铺的等等权限,权限这块怎么设计?

3.第三方登录的那种形式该如何做?

回复内容:

已存在电商网站两个、资讯类网站一个、内部系统三个,每个系统都有自己的用户表。

1.现在我要做一个统一登录点,提供登录功能,该如何设计登录表,登录表的用户与其他系统的用户怎么关联,我要实现在电商类的用户有个唯一标识,资讯类的用户也有自己的一个唯一标识。

2.每个登录用户都有自己角色,比如,电商角色就有管理订单,开新店铺的等等权限,权限这块怎么设计?

3.第三方登录的那种形式该如何做?

权限问题由每个系统内部自己解决,怎么设计随便搜一下就行,也可以参考成熟框架的ACL设计。

认证中心至少需要:

1- 认证中心登录时用户可以选择自己的登录帐号类型,如电商、资讯、内部,登录后可以绑定其它系统中的账号。

2- 电商、资讯、内部系统都要提供认证API供认证中心

3- 认证中心需要允许用户merge自己关联账号的资料

4- 第三方认证提供token认证及用户基本信息读取的API

没法儿详细回答你,更多的内容只能自己根据需求和现有系统的情况酌情处理了。

两种方法:

1.自己做单点登录(SSO),提供统一的登录接口,注意cookies的域名。

2.用现成的OAuth方案,也就是第三方登录,相对成熟而且使用方便。

补充:看到你用的是Laravel,Laravel应该是有SSO扩展包的,如果是我的话,我直接在路由里面定义好这些二级域名,所以是不需要SSO的,Laravel有OAuth-Server扩展包。

我看你的问题是关于php的,建议看看这些资料

https://github.com/bshaffer/o...

http://bshaffer.github.io/oau...

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值