javascript - Jquery Ajax 安全问题

标签 javascript jquery asp.net ajax security

我一直在几个项目中使用 Jquery Ajax 调用。我想知道这些对服务器的调用是否不安全?考虑以下内容,

   $.ajax({
            method: "POST",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            url: "/CMSWebParts/vline/Serviceupdates/ServiceUpdate.aspx/EditPlannedDisruption",
            data: '{"id":"' + id + '"}',
            success: function (res) {
            $("#hdnOverrideId_PlannedDisruption").val(res.d.PlannedDisruptionId);

                $("#edTime2_PublishPlanned").val(res.d.pubtime2);
                if (res.d.Proposed) {
                    $("#chkProposed").prop("checked", true);
                }

                if (res.d.Active) {
                    $("#chkActive").prop("checked", true);
                }

                if (res.d.LinkedOverrideId || res.d.LinkedOverrideId != "null") {
                    $("#btnlinkedOverride").hide();
                    $("#linkedOverride").hide();
                }

            }

        })

如果用户检查浏览器源代码,他可以看到整个代码,包括服务器方法名称和参数名称,这为黑客提供了机会。

我这里缺少什么安全措施吗?

最佳答案

好吧,您唯一应该担心的是加密您发送到服务器的数据以及从服务器接收的数据。您几乎无法在浏览器上执行任何代码检查操作。

让我解释一下。当有人访问您的网页时,他们已经拥有您设计的可在浏览器中使用的所有内容。你对此无能为力。您可以尝试让它变得更令人畏惧(缩小),但接受有人可以访问您的客户端代码。

真正的问题是通过线路传输的数据。看,如果黑客检查浏览器中的代码,他不会获得很多有用的信息(除非您自己犯了一些明显的错误)。当然,他们可以看到请求的去向以及各个端点的参数是什么。但是,如果没有适当的身份验证和授权,一个适当安全的后端甚至不会让他们向这些端点发送请求。

黑客也有兴趣捕获其他人的详细信息。一个非常明显的例子是用户名和密码。如果您在没有适当加密的情况下通过线路发送此数据,那么这才是真正的问题。

简而言之,您无法采取太多措施来保护在浏览器上运行的源代码。感兴趣的一方已经拥有了他们需要的一切,并且 JS 不适合混淆。您应该对保护通过网络传输的数据更感兴趣。

关于javascript - Jquery Ajax 安全问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38760368/

相关文章:

javascript - 用户更改文本框的值后无法以编程方式更改文本框

javascript - jquery slider 连续滑动

c# - Azure DevOps如何通过引用另一个解决方案中的另一个项目来构建项目

javascript - 为什么一个值在其自己的范围内重新分配时会变为未定义?

javascript - Sweetalert2 allowOutsideClick 在 toast 模式下不起作用,关闭按钮未出现在右侧

jquery - Ajax 邮政 : "Server encountered an error processing the request"

jquery - Leaflet - 如何查找现有标记并删除标记?

asp.net - 自动生成链接列表

c# - ASP.NET 标识角色

javascript - 如何在图像中添加全尺寸弹出框?