我正在构建电子商务应用程序。订单的路径类似于/Orders/Details/{orderId}
。
但是我不希望将orderId暴露给最终用户。
如何识别订单,而不是使用数据库标识符?
是否有必要生成一些随机的唯一字符串,如GUID?
答案 0 :(得分:2)
您需要为您不介意用户看到的实体分配一些其他标识符(某种备用密钥)。
或者,您可以使用加密或混淆的ID,并让您的应用程序处理解密或去混淆。
答案 1 :(得分:1)
你走在正确的轨道上 - 使用整数作为orderid会导致强大的浏览攻击。可能是您可以使用GUID作为数据库中的主键。
答案 2 :(得分:0)
您可以将一个值发布到订单/详细信息页面,然后以这种方式发送orderID。您也可能有一些其他唯一的订单字符串,并使用它,取决于您存储数据的方式以及您想隐藏订单ID的原因。