2011-10-20 2 views
4

私は最初のGrailsアプリケーションを作成しており、スプリングセキュリティコアとスプリングセキュリティUIを使用しています。私は自分のアプリケーションで作成したコントローラーをロックダウンしましたが、認証されていないユーザーがspring-security-uiコントローラーに衝突する可能性があります。これらのコントローラへのアクセスを特定のロールに限定する適切な方法は何ですか?Grails spring-security-ui controllersをロックダウンする方法は?

これらのコントローラのそれぞれでs2ui-overrideを実行し、クラスレベルでセキュリティ保護されたアノテーションを実装することを検討しています。これは健全なアプローチですか?

答えて

12

私は一般的に、スプリングセキュリティおよび春・セキュリティ-UIのようなプラグインが提供するコントローラのConfig.groovyにアプリケーションコントローラと静的なルールのために注釈を使用します。

grails.plugins.springsecurity.controllerAnnotations.staticRules = [ 
    '/aclClass/**': ['ROLE_ADMIN'], 
    '/aclSid/**': ['ROLE_ADMIN'], 
    '/aclObjectIdentity/**': ['ROLE_ADMIN'], 
    '/aclEntry/**': ['ROLE_ADMIN'], 
    '/persistentLogin/**': ['ROLE_ADMIN'], 
    '/requestmap/**': ['ROLE_ADMIN'], 
    '/securityInfo/**': ['ROLE_ADMIN'], 
    '/registrationCode/**': ['ROLE_ADMIN'], 
    '/role/**': ['ROLE_ADMIN'], 
    '/user/**': ['ROLE_ADMIN'], 
    '/console/**': ['ROLE_ADMIN'], 

    '/register/**': ['IS_AUTHENTICATED_ANONYMOUSLY'] 
] 
+0

はそれは私がいた正確に何である、どうもありがとうございました見て! –

+0

@ataylor静的なルールとコントローラの注釈を混在させることはできませんでした。これはデータベースのリクエストマップと同じですか? – gotomanners

+0

わかりませんが、私はそう思います。 – ataylor

関連する問題