Использование springsecurity.interceptUrlMap в устаревшей конфигурации grails:
Чтобы динамически генерировать ссылки, я хотел бы проверить, находится ли ссылка в белом списке на основе 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;
}
Кто-нибудь знает, что весна делает метод доступным для этого?