Burt Beckwith has been a software developer for 15 years, most of that as a JVM developer, and for the last five years working with Grails and Groovy. He is a core developer on the Grails team at SpringSource, and has created over 40 Grails plugins. Burt is a frequent speaker at conferences and user groups where he shares his passion for Grails and other Groovy-based technologies, in particular those that are related to persistence, security, and performance. He is the author of "Programming Grails" and blogs at http://burtbeckwith.com/blog/
When you think about securing a Grails application, you probably think of the Spring Security and Shiro plugins. But these plugins only control access to your pages and objects – what about guarding agains cross-site scripting (XSS), cross-site request forgery (CSRF) and SQL injection attacks? The OWASP project maintains a list of the top 10 web application security risks.
In this talk we’ll look at these risks and what libraries and plugins are available to make your applications resistant to these types of attacks.
Properly performing multiple data updates requires a transaction, but how do we do this in Grails? Services are the best option, but there are different approaches that can be used.
We'll look at how to effectively use transactions and how to customize transaction attributes such as isolation and propagation levels. We'll also look at using two-phase commit (2PC) when using multiple datasources, or when combining database updates with JMS messaging. And we'll also look at testing to ensure your code is properly transactional.