gpt4 book ai didi

spring-boot - 如何将 JWT 从 spring boot 发送到 Flutter?

转载 作者:行者123 更新时间:2023-12-04 17:15:13 25 4
gpt4 key购买 nike

我想知道将在我的 spring boot 应用程序中生成的 JWT 发送到我的 Flutter 移动应用程序的最佳和安全方式是什么。我可以将它发送到响应正文中,我知道这在网络中不是一个好的做法,但对于移动设备来说这是个问题吗?

这是我返回 JWT 的方式:

public ResponseEntity<?> signin(String username, String password) {
try {
authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(username, password));
String token= jwtTokenProvider.createToken(username, userRepository.findByUsername(username).getRoles());
//return new JwtResponse(token,username,userRepository.findByUsername(username).getRoles());
return ResponseEntity.ok(new AuthToken(token));
} catch (AuthenticationException e) {
throw new CustomException("Invalid username/password supplied", HttpStatus.UNPROCESSABLE_ENTITY);
}
}

最佳答案

无论您如何发送 JWT token ,无论是在 header 还是在正文部分。它可以很容易地被其他人通过客户端上的一些应用程序看到和复制。

您可以采取的保护数据的步骤是

  • 首先,每次从客户端收到 JWT token 时,您需要检查 token 是否被客户端篡改
  • 其次,您应该添加一个created-at 字段,您可以在其中发送 token 创建时间的时间戳。这将防止有人在 token 被盗后永远冒充 token 的所有者,因为 token 在一段时间后将失效。

在采取这些安全措施后,您可以简单地在响应的正文部分发送您的 token 。当然,还有更多最佳实践可供遵循,但这些都是一个很好的起点。

关于spring-boot - 如何将 JWT 从 spring boot 发送到 Flutter?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68848632/

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