现在有两个项目,没有放在同一个域下
然后我在a项目里登录
a项目里用个链接跳转到b项目,并且需要保持b项目的登录状态即b项目可以获取a项目的token
现在能想到的只有用localStorage
还有sessionStorage
可是好像都不是很安全...
有什么方法可以保持同步登录吗
现在有两个项目,没有放在同一个域下
然后我在a项目里登录
a项目里用个链接跳转到b项目,并且需要保持b项目的登录状态即b项目可以获取a项目的token
现在能想到的只有用localStorage
还有sessionStorage
可是好像都不是很安全...
有什么方法可以保持同步登录吗
13 回答12.8k 阅读
7 回答1.9k 阅读
4 回答1.1k 阅读✓ 已解决
4 回答1.1k 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
1 回答2.5k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
单点登录(SSO,Single Sign On),也就是说你要把登录逻辑抽离出来,成为一个独立的服务。
SSO需要一个独立的认证中心,只有认证中心能接受用户的用户名密码等安全信息,其他系统不提供登录入口,只接受认证中心的间接授权。间接授权通过令牌实现,SSO认证中心验证用户的用户名密码没问题,创建授权令牌,在接下来的跳转过程中,授权令牌作为参数发送给各个子系统,子系统拿到令牌,向SSO验证通过后即授权完成,可以创建局部会话,局部会话登录方式与单系统的登录方式相同。
大致原理是这样,具体实现可以搜索下SSO相关的知识。