有没有一种方法可以禁止对symfony中的特定域进行炒作

时间:2019-04-05 12:41:30

标签: symfony security firewall

我正在为我的api设置安全性。我需要保护api URL。 因此,要求对URL mydomain.com/api/进行自动化。 但是,如果请求来自同一域(mydomain.com),我想关闭验证。

我尝试使用主机密钥并放置一个常规表达式,表示:当主机不包含“ mydomain”时。但这没用。

firewalls:
        api:
            pattern:   ^/api
            host: ^((?!mydomain).)*$
            stateless: true
            anonymous: true
            lexik_jwt:
                authorization_header:
                    enabled: true
                    prefix:  Bearer
firewalls:
        api:
            pattern:   ^/api
            host: #???????
            stateless: true
            anonymous: true
            lexik_jwt:
                authorization_header:
                    enabled: true
                    prefix:  Bearer

我希望当请求来自mydomain之外时,api防火墙可以工作。当请求来自mydomain时不起作用。

1 个答案:

答案 0 :(得分:0)

您可以尝试颠倒逻辑。

构建两个防火墙:

  • 第一个拦截来自您域的请求并禁用身份验证。
  • 第二个捕获所有剩余的请求并要求进行身份验证。