我无法通过 springsecurity 让 ipRestrictions 工作。 我正在使用一个裸露的应用程序来尝试隔离Grails 3.3.10和spring-security-core 3.2.0的问题。
最终,我想将对 Web 服务的访问限制为有限的子网。但是为了解决这个问题,我只是想找到任何会被拒绝的案例。
我正在使用一个股票创建应用程序应用程序,但我已将以下内容添加到 build.gradle 以拉入 spring-security:
compile 'org.grails.plugins:spring-security-core:3.2.0'
我的应用程序.groovy 配置这个是:
grails.plugin.springsecurity.rejectIfNoRule = false
grails.plugin.springsecurity.fii.rejectPublicInvocations = false
grails.plugin.springsecurity.ipRestrictions = [
[pattern: '/**', access: '172.16.0.1']
]
我希望看到类似 401 未经授权或 403 禁止的东西。
IP 地址限制不适用于来自localhost
的请求。这是为了"帮助"本地开发,但随后会使测试限制更加困难。在文档的第 18 节底部有一个措辞混乱的注释,应该以"无论 IP 地址如何,始终可以从本地主机访问所有模式"开头:
无论 IP 模式如何,始终可以从本地主机访问所有地址,主要是为了支持本地开发模式。