我已经在授权服务中实现了 Spring Security,我正在其中生成令牌,但是如何在我的所有微服务中实现它。
网上有很多代码但找不到最新版本的Spring Boot 3+
目前我正在使用在auth标头发送jwt令牌编写一些代码
@PostMapping("/{username}")
public ResponseEntity<Object> addWishlist(@Parameter(hidden = true) @RequestHeader("Authorization") String token, @PathVariable String username, @RequestBody MovieDto movie){
if (jwtService.isTokenValid(token.substring(7),username)){
return new ResponseEntity<>(wishlistService.addWishlist(username,movie),HttpStatus.CREATED);
}
throw new UnAuthorizedException("Unauthorized token access add movie");
}
我想使用 Spring Security 实现如下所示的目标
@GetMapping("/validate")
@PreAuthorize("hasRole('MEMBER') && #username == authentication.principal.username")
public ResponseEntity<Object> validate(@RequestParam String username) {
return new ResponseEntity<>(username+" Authorized", HttpStatus.ACCEPTED);
}
我想在愿望清单和用户个人资料中实现安全性
使用最新的 spring boot 3+ 和 spring 版本 6 仅使用 jwt 令牌而不连接数据库即可实现 spring security 的解决方案
这实际上是我必须做的一个大过程,因为我正在使用授予者权限,但能够在最新版本的 Spring Boot 中实现它