在 API 请求上使用额外的 header 参数跳过 Oauth 2.0 授权 - Spring 安全
Skipping Oauth 2.0 authorization using additional header param on API Request - Spring Security
我已经在 SpringBoot API 中使用 Spring 安全实现了 Oauth 2.0。它工作正常,目前需要在检查 header 可用性后跳过额外 header 请求的身份验证。基本上 client-side 将添加
skip-auth:true //example
然后从server-side开始,我们必须添加过滤器来检查skip-auth值,如果是真的我们需要跳过授权并授予访问资源的权限。
有没有人有这方面的工作解决方案的经验?或任何可以创建此请求功能的建议方法
我认为用某种秘密 header 绕过安全性是一个非常糟糕的主意。您能否更改他们发送固定 BasicAuth Header 的要求?
然后您可以在 WebSecurityConfig 中的相关端点上允许 Basic-Auth。
你永远不应该为你的后端保留后门。这显然是一个。对应用程序进行简单的反编译或在浏览器中监视网络选项卡将揭示这个看似明显的后门。您需要与发送需求的人员合作,并要求他们定义哪些端点需要完全保护以及哪些可以匿名访问。
可以匿名访问的端点可以使用 ROLE_ANONYMOUS
并通过在过滤器代理链中定义 AnonymousAuthenticationFilter
来保护。
我已经在 SpringBoot API 中使用 Spring 安全实现了 Oauth 2.0。它工作正常,目前需要在检查 header 可用性后跳过额外 header 请求的身份验证。基本上 client-side 将添加
skip-auth:true //example
然后从server-side开始,我们必须添加过滤器来检查skip-auth值,如果是真的我们需要跳过授权并授予访问资源的权限。
有没有人有这方面的工作解决方案的经验?或任何可以创建此请求功能的建议方法
我认为用某种秘密 header 绕过安全性是一个非常糟糕的主意。您能否更改他们发送固定 BasicAuth Header 的要求?
然后您可以在 WebSecurityConfig 中的相关端点上允许 Basic-Auth。
你永远不应该为你的后端保留后门。这显然是一个。对应用程序进行简单的反编译或在浏览器中监视网络选项卡将揭示这个看似明显的后门。您需要与发送需求的人员合作,并要求他们定义哪些端点需要完全保护以及哪些可以匿名访问。
可以匿名访问的端点可以使用 ROLE_ANONYMOUS
并通过在过滤器代理链中定义 AnonymousAuthenticationFilter
来保护。