grails kickstart插件KickstartFilters如何防止日志上的密码信息

grails kickstart插件KickstartFilters如何防止日志上的密码信息,grails,grails-plugin,grails-filters,kickstrap,Grails,Grails Plugin,Grails Filters,Kickstrap,我使用的是Grails版本2.2.4,我已经安装了kickstart插件compile:kickstart with bootstrap:0.9.6 BuildConfig.groovy plugins { runtime ":hibernate:$grailsVersion" runtime ":jquery:1.8.3" runtime ":resources:1.1.6" compile ":kickstart-with-b

我使用的是Grails版本2.2.4,我已经安装了kickstart插件compile:kickstart with bootstrap:0.9.6

BuildConfig.groovy
plugins {
        runtime ":hibernate:$grailsVersion"
        runtime ":jquery:1.8.3"
        runtime ":resources:1.1.6"

        compile ":kickstart-with-bootstrap:0.9.6"
        build ":tomcat:$grailsVersion"

        runtime ":database-migration:1.3.2"

        compile ':cache:1.0.1'
}
我发现KickstartFilters.groovy过滤器具有以下目录结构

plugin
  -> kickstart-with-bootstrap:0.9.6
     -> conf
         -> kickstart
             -> KickstartFilters.groovy
我的KickstartFilters.groovy文件包含以下信息

package kickstart

class KickstartFilters {

    def filters = {
        all() {
            before = {
                // Small "logging" filter for controller & actions
                log.info(!params.controller ? '/: ' + params : params.controller +"."+(params.action ?: "index")+": "+params)
            }
            after = {
            }
            afterView = {
            }
        }
    }
}

当log.info打印在日志中时,如果密码作为参数传递,那么密码信息在日志中可见,那么我如何才能仅防止密码信息?

我有一个解决方法

基本上在conf/kickstart/YourAppFilters.groovy下创建过滤器

套餐启动

class YourAppFilters  extends KickstartFilters { 
    def filters = {


        kickstartLogger() { 
            before = {
                // Small "logging" filter for controller & actions
                if (log.infoEnabled) {
                    if (!params.controller.equals('chat')) {
                        if (!params.password ) { 
                            log.info(!params.controller ? '/: ' + params : params.controller +"."+(params.action ?: "index")+": "+params)
                        }else{
                            log.info (params.controller+","+params.action+":"+params?.username)
                        }
                    }       
                }
            }
        }
    }
}
现在在beans下的conf/spring/resources.groovy下添加:

yourAppFilters(KickstartFilters)
这将覆盖kickstarts过滤器