【问题标题】:Is it secure to have dynamic route with order details visible to anyone with orderId?使用 orderId 的任何人都可以看到带有订单详细信息的动态路线是否安全?
【发布时间】:2020-07-22 13:23:00
【问题描述】:

我想问一下是否可以在我的 react 应用程序中使用动态路由,例如 www.siteurl/orders/:id

用户使用他的订单 ID 被重定向到他的订单,然后从数据库中获取他的数据,其背后的原因是启用订单跟踪和与客户想要的任何人共享订单的可能性。

这可以被不应该访问的人利用吗?

【问题讨论】:

    标签: reactjs url dynamic-url data-security


    【解决方案1】:

    只要确保订单本身不包含任何敏感的用户信息,您就可以开始了。

    一般来说,这是一个经常被问到的问题:我们是否应该在 URL 中公开 id,并且在大多数情况下,这样做并没有什么坏处。这只是数据库中的一个字段,理论上,对于利用它的人来说,他们需要访问您的数据库,如果他们可以访问您的数据库,那么您将遇到比 URL 更大的问题。

    【讨论】:

      【解决方案2】:

      是的,这种后端的路由设计可以被其他人利用。用户特定信息的正确路由设计应该是这样的:

      1. 获取路线:

        www.siteurl/orders/users/:uid : GET orders of specific user
        
      2. PATCH 路线:

        www.siteurl/orders/:oid : Change order information
        

      重要提示!两条路由都必须通过身份验证来保护。因此,只有用户才能获得他的订单的 id 并可以对其进行更改。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-09-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多