登录验证用户

问题1:人和账号之间关系

人和账号分离,人作为唯一的实体存在,账号仅作为登录的凭证。故人可以有多个账号,但一个账号只能所属一个人。账号既可以全平台通用,也可以分离设置。账号中的邮箱、手机号等,后续有需要作为增强方式。

问题2:如何找到正确的账号

应用可能面向b或者c端,如果面向c端,那就当成一个特殊的b即可。所以登录时,必须要知道这是哪一个租户下的,才能找到相应的人。

问题3:如何查询账号

pc浏览器进行登录的时候,需要确认从在那个租户下去查询账号信息。选择通过域名来区分,每个租户绑定着唯一的一个域名。

问题4:多应用如何统一登录界面

登录时与应用无关,仅需要在登录成功是重定向回原来的地方即可。

问题5:登录成功后如何进行

登录token放在cookie中,跳转前几

总结

pc浏览器输入域名 -> 根据域名查询到租户id -> 根据这个租户id查询账号 -> 验证账号是否有效 -> 响应登录结果

数据表

tenant表(租户表)

字段名中文名类型说明
id
domain域名varchar应用区分

account表(账号表)

字段名中文名类型说明
id
tenant_id租户idint8同租户下的账号名唯一
username登录用户名varchar
password密码varchar
user_id用户idint8绑定的用户id

user表(用户表)

字段名中文名类型说明
id
tenant_id租户idint8
name名字varchar

问题2:获取到最终的菜单列表