springboot-conditional身份验证

xxhby3vn  于 2021-09-29  发布在  Java
关注(0)|答案(1)|浏览(279)

关闭。这个问题需要详细或明确。它目前不接受答案。
**想改进这个问题吗?**编辑这篇文章,添加细节并澄清问题。

五天前关门。
改进这个问题
我想做一个条件验证。例:如果用户点击,
http://localhost:8080/employees/23456789
我应该在redis中查找一个密钥(23456789),获取身份验证类型(例如:basic)并根据db进行验证。
http://localhost:8080/employees/09876098
我应该在redis中查找一个密钥(09876098),并获取身份验证类型(例如:keydeport)并根据keydeport进行验证。
我怎样才能做到这一点?最好是 Spring 安全

9gm1akwq

9gm1akwq1#

您可以提供一个自定义 AuthenticationManagerResolver 这就解决了一个问题 AuthenticationManager 根据员工的详细信息为您提供。然后你可以提供不同的 AuthenticationProvider 基于此。
您可以参考spring安全文档,了解oauth2资源服务器是如何做到这一点的。另外,请看一下的实现 AuthenticationManagerResolver .

相关问题