如何修改hasIpAddress以验证X-Forwarded-For?

时间:2016-10-07 10:53:05

标签: spring-security

我想知道,我如何修改Spring Security中的hasIpAddress方法,以便它验证请求中的X-Forwarded-For标头,而不是远程ip地址?

1 个答案:

答案 0 :(得分:0)

您可以选择使用所需的逻辑创建自定义类。然后,可以扩展main并覆盖DefaultWebSecurityExpressionHandler,您可以在其中实例化自定义类并将其设置为createEvaluationContextInternal中的变量。请参阅OAuth2WebSecurityExpressionHandler,了解spring-security-oauth2如何扩展StandardEvaluationContext以添加oauth2特定的验证逻辑。然后在http安全规则中,设置表达式处理程序以使用自定义表达式处理程序。在xml中,这看起来像:

DefaultWebSecurityExpressionHandler