我需要保护 Azure 上托管的 Spring Cloud 函数公开的休息端点。 我们想使用 spring security 来验证和授权调用,但我无法做到这一点。 相同的代码适用于 springboot 应用程序,但对 spring cloud 功能没有任何影响。
所以把我的问题分解成更小的部分
- Spring Cloud 函数支持 Spring Security 吗?
- 如果是,如何实现。
- 如果不是,应该采取什么方法来实现这一目标?
最佳答案
- 怀疑... Spring Security 是一个相当繁重的机制,它需要一些内存存储( session 、用户凭据等)或与存储解决方案(例如:db)或身份验证服务器的连接。所有这些实现都超出了简单函数的范围。理论上是可以的,但是效率很低。
- -
- 我猜您在这些函数之前有某种 API 网关。一种常见的模式是拦截该网关中的所有调用,对它们进行身份验证和授权(调用服务或使用内置的身份验证机制,具体取决于您的要求),然后将它们转发到只能调用的 Spring Cloud 函数来自网络内部(通过 API 网关)。
关于java - 使用 Spring Security 保护 Spring Cloud 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57164490/