如何保证前端对用户名密码提交的安全性?

我的项目是小程序,有个需求是前端通过用户名密码获取token,但是我的项目没有登录页,所以后端想的是我在前端页面固定死一个用户名和密码,不管谁访问都传递这个。但是出现了又会出现安全性的问题。
我认为有两种,一种是通过抓包获取http请求,获取用户名和密码,
另一种是通过源文件获取比如有类似firebug的工具。
应对这两种风险有什么好的解决方法?
还有就是我们这种固定死用户名和密码获取token的方式是不是有问题,有更好的解决方法吗?
我之前做的项目没有这种安全性的要求,登录是直接发用户名和密码,是不是一种错误的方式?

阅读 8.4k
10 个回答

你们后端是没做过小程序后端么。。。这种需求根本不应该出现才对
小程序文档有登录流程介绍,让你们后端学习学习。。。

。。。获取unid或者openid就好了嘛

小程序强制要求https,抓不了包

不管是谁访问, 都穿这个用户名跟密码,那就是说谁都可以登录了,那你为什么还怕别人抓你的包,获取你的用户名密码,你们这样做不是都开放给所有人访问了吗?

POST 至服务端的密码是用户密码 MD5 加密后的,用户再次登录时输入正确的密码经过 MD5 加密的一定与服务端存储的一致,不一致则密码输入错误~

此过程无需传递用户的真实密码,较安全~

大误。猜你是想像APP那样。那就加密吧,反正别人拿不到你加密算法。

HTTPS也不一定是安全的,有些抓包工具可以破解,最好使用前后端对称加密,如Crypto等

小程序是有登录过程的,让后端去看文档吧,能获取到 openid 的,而且小程序的登录流程,微信是帮你加密了的,不会存在安全的问题,即使出了也是微信的问题

前后端分离的情况下,用户凭证小程序就用openid。如果不想用,让后端做单地点登录,然后记录ip,ip变化强制下线重新登录更新token信息。这样基本就行了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题