James Fredley
10/09/2025, 9:45 PMuser
10/09/2025, 9:45 PMuser
10/09/2025, 9:45 PMbuild.gradle, add the following dependency: groovy dependencies { implementation 'org.apache.grails:grails-spring-security:7.0.0-RC2' } Save the file and update your dependencies with: ./gradlew clean build [Getting Started](https://apache.github.io/grails-spring-security/latest/core-plugin/guide/index.html#gettingStarted) 2. Run the Quickstart Script Generate the required domain classes (User, Role) and initial configuration by running: ./gradlew runCommand -Pargs="s2-quickstart com.yourapp User Role" This will create the necessary domain classes and update your configuration files [Quick Start Guide](https://apache.github.io/grails-spring-security/latest/core-plugin/guide/index.html#gettingStarted). 3. Configure Security Settings The main configuration is done in grails-app/conf/application.groovy (or application.yml). For example, to use annotation-based security (the default): groovy grails.plugin.springsecurity.securityConfigType = "Annotation" You can also use other configuration types like InterceptUrlMap or Requestmap if needed [Request Mappings](https://apache.github.io/grails-spring-security/latest/core-plugin/guide/index.html#requestMappings). 4. Secure Controllers or Actions Use the @Secured annotation to restrict access. For example: groovy import grails.plugin.springsecurity.annotation.Secured @Secured('ROLE_ADMIN') class SecureController { def index() { render 'Secure access only' } } You can annotate the whole controller or individual actions [Apply the annotation](https://apache.github.io/grails-spring-security/latest/core-plugin/guide/index.html#8-apply-the-annotation). 5. (Optional) Configure Filter Chains If you are using REST APIs or need to separate stateless and stateful authentication, configure filter chains: groovy grails.plugin.springsecurity.filterChain.chainMap = [ [pattern: '/api/**', filters: 'JOINED_FILTERS,-anonymousAuthenticationFilter,-exceptionTranslationFilter,-authenticationProcessingFilter,-securityContextPersistenceFilter,-rememberMeAuthenticationFilter'], [pattern: '/**', filters: 'JOINED_FILTERS,-restTokenValidationFilter,-restExceptionTranslationFilter'] ] [REST Plugin Configuration](https://apache.github.io/grails-spring-security/latest/rest-plugin/guide/index.html#configuration) 6. Customize as Needed You can further customize authentication providers, static rules, and other settings in your configuration files as required. Summary: Install the plugin, run the quickstart, configure your security settings, and use annotations or mappings to secure your application. For more advanced setups (like REST), configure filter chains accordingly. All configuration is done in application.groovy or application.yml using the grails.plugin.springsecurity prefix. If you need more details or run into issues, refer to the [official documentation](https://apache.github.io/grails-spring-security/latest/core-plugin/guide/index.html#gettingStarted).