React Native 查找有关身份验证和授权的建议

bweufnob  于 2023-02-13  发布在  React
关注(0)|答案(1)|浏览(110)

我正在用react native + expo构建一个移动的应用程序。我正在使用Redux作为我的客户端状态。React查询作为服务器状态。
在使用用户名和密码登录时,我获取访问令牌。我将该令牌存储在redux存储中,并使用useSelector()钩子从存储中获取令牌,并将其传递到API调用中。在注销时,我清除存储。
我的印象是,这是一个安全缺陷,我的令牌存储在客户端代码未加密。
我的解决方案是重构我的应用程序以使用Expo安全存储,这允许我在keychain services(ios)和sharedPreferences(android)中存储加密令牌,在那里我可以使用密钥检索令牌值,从而从我的客户端代码中删除实际令牌。
这个解决方案有意义吗?希望有人能在我重构我的整个应用程序之前确认。提前感谢!

xdnvmnnf

xdnvmnnf1#

这就是在声明中定义标记exp的方法

{"typ":"JWT","alg":"ES256","kid":"1"}.{
  "aud": ["https://xyz/"],
  "iss": "https://xyz/authserver/v1",
  "sub": "abc",
  "sys": "abc",
  "exp": 1675943895,
  "iat": 1675943295,
  "jti": "5656757",
  "scp": "example",
  "roles": ["any"],
  "ver": "1.0.0"
}

相关问题