后台登陆查询的时候,根据用户名密码状态三个条件查不行吗?

来源:6-8 ajax登录-基本参数校验(普通方式校验)

野生码农在线co腚

2019-12-27

$where = [
['login_name','=',$loginName],
['password','=',$password],
['status','=',1],
];

这样不行吗?为什么要只根据用户名来查, 不管他是不是被禁用,账号错误还是密码错误,在后台登陆的时候不应该都只返回’账号或密码错误’ 这样提示不是说更安全的吗? 所以说,没必要依次返回 用户名不存在,密码错误,账号被禁用三个状态,也就没必要只通过一个条件查询了, 老师 请说说你的见解

写回答

1回答

singwa

2019-12-28

您好,你这个也可以的,但是不建议这样弄,您可以

$where = [
['login_name','=',$loginName],
['status','=',1],
];

然后给出 查询方法 getNormalAdminUserByUsername

这个后面会讲解,后续会单独根据用户名查询用户信息放到单独services模块下,其他地方直接调用即可。

0
2
singwa
回复
野生码农在线co腚
您说的那个方案也没问题, 但是一般的系统会给出 先判断用户名是否存在, 再次密码是否正确这样的提示。主要还是要看取舍了,这个和安不安全没有什么关系。
2020-01-09
共2条回复

全流程开发 TP6.0实战高并发电商服务系统

一课就能掌握TP6.0基础及运用,打造完整高并发的电商后端项目

1458 学习 · 1310 问题

查看课程