Grails Spring Security, interceptUrlMap e Annotations, por favor!

grails.plugins.springsecurity.securityConfigType

deve ser atualmente interceptUrlMap ou anotação

booooo!

então, escolhendo interceptUrlMap, você deve especificar tudo assim em Config.groovy :

grails.plugins.springsecurity.securityConfigType="interceptUrlMap"

grails
.plgins.springsecurity.interceptUrlMap = [
'/console/**:['ROLE_ADMIN'],
'
/' :['IS_AUTHENTICATED_ANONYMOUSLY'],
'
/app/**':['ROLE_USER'],
'/somethingElse/**':['ROLE_USER']

]

Eu não quero isso, quero anotar meus próprios controladores e bloquear outras coisas, como recursos e o plugin do console – em Config.groovy.

Faz mais sentido para mim manter minha configuração de segurança em meus controladores em vez de centralizá-la dentro do Config.groovy. (onde provavelmente vou esquecê-los)

Aqui está o truque.

Mude (de interceptUrlMap) para staticRules e use Annotation .

grails.plugins.springsecurity.securityConfigType = "Annotation"
grails
.plugins.springsecurity.controllerAnnotations.staticRules = [
'/console//**': ['ROLE_ADMIN'],
]

Agora spash esses @Secured ([‘ROLE_TRAFFICINFO’]) em suas classes e / ou métodos de controladores

Yay! O melhor de dois mundos!