有知道怎么将一段长的sql语句js加密成固定长度传给后台,然后.net后台解密的算法吗

碎了一地阳光 2020-06-14 03:44:24
最近有个需求,因为实施部接触不到服务器的数据库,所以我打算在程序做个简单的页面,一个textarea文本输入SQL语句,然后点查询,将查出来的结果分页动态展示到列表里面。现在的问题是如果是一个非常长的SQL语句,页面提示不能穿非法字符,目前的解决思路是打算前端对sql加密成固定长度的合法字符串,然后.net后台解密,试了几个加密算法,加密的字符串都比较长,有没有大佬知道这个问题咋处理的,非常感谢
...全文
6436 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ying1234 2020-06-23
  • 打赏
  • 举报
回复
js加密数据?不管你怎么加密,都没有用,js 对于任何用户说,都是开源的,你什么算法,源代码赤裸裸地暴露在用户面前,任何加密都没有安全性可言,哪怕你对源代码作混淆加密(源代码加密),都是没有用的,浏览器只能识别正常的js代码,一个f12,什么都看见了,无非就是增加别人阅读难度。做web程序,应该有个概念,就是任何从客户端提交的数据都是不可信任的,不可靠的,后端必须作数据上,业务上的校验
qq_39080073 2020-06-22
  • 打赏
  • 举报
回复
base64加密或URL加密方式,转送到后台再解密还原SQL就可以。 小型监控摄像头
mirrorspace 2020-06-20
  • 打赏
  • 举报
回复
这是接口解决的事. 传SQL小心被drOp del删除数据库
正怒月神 版主 2020-06-15
  • 打赏
  • 举报
回复
的确,楼上已经讨论过 直接使用 sql 不合理的地方了。 这里就不赘述了。 另外 OData的确是个比较符合的方案了。
github_36000833 2020-06-15
  • 打赏
  • 举报
回复
引用 1 楼 以专业开发人员为伍 的回复:
把具体的业务 api 开发给他们,而不是给他们随便“增删改查”这类东西。
+1 客户端sql语句缺点很多: 1、容易造成sql注入攻击。 2、泄露内部实现细节(会给其他恶意攻击提供额外信息)。 解决方法就是限制客户只能通过API来获取数据。 如果你要实现一定程度上的丰富查询,或想使用行业标准,还可以阅读和参考 * OData (微软牵头的Open Data公开查询协议,dotnet的支持很好) * GraphQL (facebook,spotify正在用的数据查询语言) * 其他诸如ORDS(Oracle REST Data Services)等等...
墨子宸 2020-06-15
  • 打赏
  • 举报
回复
这需求活久见
EdsionWang 2020-06-15
  • 打赏
  • 举报
回复
接受用户输入的sql,还是需要处理下里面的特殊字符,以及限制用户输入的sql类型(如屏蔽insert delete update)。从安全的角度,还是按照楼上大佬的意见,开发指定的API给人家。
  • 打赏
  • 举报
回复
把具体的业务 api 开发给他们,而不是给他们随便“增删改查”这类东西。

62,242

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧