source: trunk/grails-app/conf/NimbleSecurityFilters.groovy @ 770

Last change on this file since 770 was 770, checked in by duh, 13 years ago
  • upgraded nimble to 0.4-SNAPSHOT
  • Property svn:keywords set to Author Rev Date
File size: 1.7 KB
Line 
1/*
2 *  Nimble, an extensive application base for Grails
3 *  Copyright (C) 2010 Bradley Beddoes
4 *
5 *  Licensed under the Apache License, Version 2.0 (the "License");
6 *  you may not use this file except in compliance with the License.
7 *  You may obtain a copy of the License at
8 *
9 *  http://www.apache.org/licenses/LICENSE-2.0
10 *
11 *  Unless required by applicable law or agreed to in writing, software
12 *  distributed under the License is distributed on an "AS IS" BASIS,
13 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 *  See the License for the specific language governing permissions and
15 *  limitations under the License.
16 */
17import grails.plugins.nimble.core.AdminsService
18
19/**
20 * Filter that works with Nimble security model to protect controllers, actions, views
21 *
22 * @author Bradley Beddoes
23 */
24public class NimbleSecurityFilters extends grails.plugins.nimble.security.NimbleFilterBase {
25
26    def filters = {
27
28        // Content requiring users to be authenticated
29        secure(controller: "main") {
30            before = {
31                accessControl {
32                    true
33                }
34            }
35        }
36
37        // Account management requiring authentication
38        accountsecure(controller: "account", action: "(changepassword|updatepassword|changedpassword)") {
39            before = {
40                accessControl {
41                    true
42                }
43            }
44        }
45
46        // This should be extended as the application adds more administrative functionality
47        administration(controller: "(admins|user|group|role)") {
48            before = {
49                accessControl {
50                    role(AdminsService.ADMIN_ROLE)
51                }
52            }
53        }
54
55    }
56
57}
Note: See TracBrowser for help on using the repository browser.