gpt4 book ai didi

javascript - 如何在不向用户显示 unique_Id 的情况下将记录从客户端更新到服务器

转载 作者:太空狗 更新时间:2023-10-30 01:56:23 25 4
gpt4 key购买 nike

如何在不向客户端显示该记录的 Unique_id 的情况下将记录从客户端更新到数据库。

我的问题是,如果我使用 display:none 属性将它显示给用户,用户可以检查并将该特定的 unique_id 更改为某个随机数,以防万一它可能与其他记录的 unique_id 匹配并最终更新其他记录(错误记录)。

最佳答案

这是一个很好的问题,防止从客户端篡改 Id 的方法可能是这样的:

基本上,这个想法是创建一个 token ,它只是盐/ key + 记录 ID 的散列。

算法步骤:

Record the Id from the (SELECT) query.

Create a token with salt + Id and save it for later use.

Include this token in your form data as a hidden field when data is sent for update at the client side.

Now, when the user posts the data to the script that handles the form submission, you can allow update if token that was sent equals the one temporarily stored on the server.

if(tokenSavedOnServer != tokenCameFromClient)
{
// Id has been tampered. Cancel update request.
}

这也可以通过在 token 中包含时间戳并检查时间戳是否不早于 10 分钟或任何时间来变得更加稳健。

因此,任何针对另一个 ID 的请求都不会导致任何更新,因为针对的记录不会具有相同的标记字符串。

关于javascript - 如何在不向用户显示 unique_Id 的情况下将记录从客户端更新到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44019615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com