6
我有一個配置了spring security的web應用程序,用於限制對URL和方法的訪問。我想完全禁用它,並允許我的客戶輕鬆地打開它(如果他們想要的話)(他們只能訪問「spring-security.xml」)。禁用版本3.0.x中的Spring方法安全
我設法關掉URL攔截,但我的方法的安全性仍處於啓用狀態......
任何線索?
(我不想讓客戶改變我的web.xml,所以很遺憾修改「全球方法的安全性」每段時間設定是不是一個選項...)
這是我的更新彈簧的security.xml配置:
<http auto-config='true' use-expressions="true">
<intercept-url pattern="/**" access="permitAll" />
<http-basic />
<anonymous />
</http>
我已重寫的DelegatingFilterProxy.doFilter方法是這樣的:
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
final String springSecured = System.getProperty("springSecured");
if (StringUtils.isNotBlank(springSecured) && springSecured.equalsIgnoreCase("true")) {
// Call the delegate
super.doFilter(request, response, filterChain);
} else {
// Ignore the DelegatingProxyFilter delegate
filterChain.doFilter(request, response);
}
}
,這是該方法的安全性我的一個例子:
@RequestMapping(
value = "applications/{applicationName}/timeout/{timeout}",
method = RequestMethod.POST)
public
@ResponseBody
@PreAuthorize("isFullyAuthenticated() and hasPermission(#authGroups, 'deploy')")
Object deployApplication() {
// ...
}