【问题标题】:How to lock down Grails spring-security-ui controllers?如何锁定 Grails spring-security-ui 控制器?
【发布时间】:2011-12-12 02:57:24
【问题描述】:

我正在创建我的第一个 Grails 应用程序,并且正在使用 spring-security-core 和 spring-security-ui。我已经锁定了我在我的应用程序中创建的控制器,但是任何未经身份验证的用户都可以点击 spring-security-ui 控制器这一事实留下了一个巨大的漏洞。将这些控制器的访问权限限制为特定角色的正确方法是什么?

我正在考虑在每个控制器上运行 s2ui-override,然后在类级别实现安全注释。这是一种合理的方法吗?

【问题讨论】:

    标签: grails spring-security


    【解决方案1】:

    对于spring-security和spring-security-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']
    ]
    

    【讨论】:

    • 非常感谢,这正是我想要的!
    • @ataylor 我不知道您可以将静态规则与控制器注释混合使用!这和数据库请求图一样吗?
    猜你喜欢
    • 2011-11-04
    • 1970-01-01
    • 2019-06-01
    • 2013-08-29
    • 2017-10-26
    • 2012-09-12
    • 2012-02-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多