ajax获取数据如何进行权限校验 5C
    背景是这样的,前台页面和后台页面不在同一个项目里,前台通过ajax,访问后台获取数据,领导希望获取数据时有权限校验,不能让任何人都能获取到数据。
    那么问题来了,如果在ajax请求时加入两个参数,账号和密码,后台可以通过验证账号密码来进行权限控制,但是任何人都可以通过查看网页源代码来看到那个账号密码。
    如果是通过现在的登录状态来验证的话,也是不行的。因为这些页面就不用登陆,就更别提用登录状态来验证了。
    实际上,无论前台进行什么操作,无论怎么发送请求,只要别人查看网页源代码后,进行同样的操作,就可以获取到数据。
    那么,我该如何完成领导给的需求呢?

8个回答

像1楼说的,前后台分离的项目,权限验证用token最好不过了,jwt可以了解一下
然后仔细看了一下,你最根本在纠结:“实际上,无论前台进行什么操作,无论怎么发送请求,只要别人查看网页源代码后,进行同样的操作,就可以获取到数据。”
这个的话我知道的是可以用短信验证搞定,或者像TX的令牌

zhao5243
深爱甜蜜 我也是很无奈,明明是面向所有人的网站, 还要保证数据的安全性,不能让任何人获取数据。怎么做到啊,所有数据都是ajax获取,我无论怎么验证,网页源代码都显示,别人复制粘贴就OK了啊。
接近 2 年之前 回复
zhao5243
深爱甜蜜 jwt我看了一下,这个技术挺不错的,只是还是绕不开登录的那一步,而这个前台页面是没有登录的,所以用不了这个。短信验证或手机令牌的话,也不行,因为这个网站是面向所有人的,不能每个人上这个网站还手机验证一下吧。
接近 2 年之前 回复

token验证 了解一下

zhao5243
深爱甜蜜 这个我看过了,首先需要获取token,然后ajax请求时把token发过去,token对,则返回数据,是这么个意思吧?但是,别人看到网页源代码了,也获取token然后再通过token发送请求,也能获取到啊。
接近 2 年之前 回复

不登陆?没用户信息,怎么做权限?权限分给电脑IP??? 需求存在问题啊

a718089112
a718089112 回复zhao5243: 跟领导沟通啊,就从用户使用需求沟通。用户访问系统,不登陆,无用户信息,权限怎么分?权限的前提是用户啊,无用户权限怎么分,要么全部要么没有。
接近 2 年之前 回复
zhao5243
深爱甜蜜 我也这么觉得啊,但是他说肯定有办法。我也很无奈啊。
接近 2 年之前 回复

首先得登录吧,提交数据时加密一下密码啊!然后每个用户可以设置权限字段,不同的值对应不同的权限

zhao5243
深爱甜蜜 不用登陆,直接展示数据,所以没有用户级别权限之分。
接近 2 年之前 回复

密码加密一下可以了,当然还是需要登录最好,用户信息可存下session,后台请求的action给一下权限就行

zhao5243
深爱甜蜜 回复u013057277: 密码加密后,是不用担心密码泄露,但是别人只要把加密后的密码发过来,照样可以获取数据啊。
接近 2 年之前 回复
u013057277
pangger 回复zhao5243: 权限必须要用户名密码,你现在没法登录,那只能是单点的请求自己加用户信息,这种情况下你的请求的数据要暴露也是没有办法的,再说这是加密的密码,看到也没问题!
接近 2 年之前 回复
u013057277
pangger 回复zhao5243: 权限必须要用户名密码,你现在没法登录,那只能是单点的请求自己加用户信息,这种情况下你的请求的数据要暴露也是没有办法的,再说这是加密的密码,看到也没问题!
接近 2 年之前 回复
zhao5243
深爱甜蜜 密码加密了,查看源代码后,还是能够看到加密后的密码,直接传过来,还是能获取啊。没有登录,不用登录,就不用提存储用户信息了。而且前台项目只有html页面,没有java,没法存session。
接近 2 年之前 回复

登录之后返回token,token有默认失效时间,也可以直接设置多长时间失效,通过token发送请求获取访问权限,token失效之后就不能访问了

zhao5243
深爱甜蜜 没有登录!没有用户登录这个功能的。
接近 2 年之前 回复

登录之后返回token. 查看源代码 怎么可以看到密码?难道你把密码也返回过来了?

zhao5243
深爱甜蜜 没有登录功能!所有页面都是无需登录就能直接访问的!
接近 2 年之前 回复

如果不用登陆,那么你ajax传后台传什么去验证,用户名密码?再有,你做的这个既然都是 面向所有人的,那么如果非要验证就加密后传到后台就行了,
自己操作的电脑还会给别人看到网页源代码?如果实在担心,操作完了清空验证字段或者关掉窗口

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问