【问题标题】:Should a token be validated on every page change?是否应该在每次页面更改时验证令牌?
【发布时间】:2021-09-20 02:36:54
【问题描述】:

我有一个小问题,我在一个基于 react-native 的应用程序上工作,我不知道是否应该在每次更改页面/屏幕时向服务器发送一个请求以验证令牌(例如“提要” ' -> 'profile' ) 或仅当我向服务器发送请求时

【问题讨论】:

    标签: typescript security jwt token


    【解决方案1】:

    您的 UI 只是 UI,您对服务器的调用以提取数据应该每次都经过验证。

    您的 UI 不包含任何数据,因此从技术上讲,他们可以看到没有数据的情况。

    为了获得更好的用户体验,用户不应看到他们无权访问的网址/按钮/链接。但从安全角度来看,唯一的威胁是您的服务器端调用未检查身份验证或授权。

    【讨论】:

      【解决方案2】:

      您有一个获取访问令牌的登录请求,然后您将其保存在客户端(cookie 或其他存储)。

      在后端,您有两种请求类型的 API:

      1. 受保护(例如 GET /user/:id) - 您应该发送访问令牌(后端检查它)
      2. 打开(例如 GET /books)

      在以最佳方式更改屏幕后的客户端上,您应该有一个受保护的路由组件,它会检查内存中是否存在令牌(或者在 401 状态之后,您应该从内存中删除令牌)。您不必为此目的发送请求。

      【讨论】:

        猜你喜欢
        • 2013-01-12
        • 2017-10-13
        • 1970-01-01
        • 1970-01-01
        • 2014-01-05
        • 1970-01-01
        • 2023-04-01
        • 2018-04-11
        相关资源
        最近更新 更多