Grails Spring Security检查网址是否会被拦截

时间:2018-11-25 22:18:45

标签: grails spring-security

在旧版grails配置中使用springsecurity.interceptUrlMap:

要动态生成链接,我想根据interceptUrlMap检查链接是否被列入白名单。

该规范将url与地图中的第一个匹配键匹配,因此我可以自己实现一个函数以找到第一个匹配键,然后通过SpringSecurityUtils.ifAnyGranted()运行该值。

  //psuedo code. 
  def access(controller, action){
    def match=interceptUrlMap.find{
    def pieces=it.getKey().split("/");

    if(peices[1]=="**" || controller.matches(peices[1])){
        if(peices[2]=="**" || action.matches(peices[2])){
            return it.getValue();
        }
    }
   }

  if(match && SpringSecurityUtils.ifAnyGranted(match.join(","))){
    return true;
  }
return false;
}

有人知道spring使方法可用吗?

0 个答案:

没有答案