Book Image

Spring Security 3.1

By : Robert Winch, Peter Mularien
Book Image

Spring Security 3.1

By: Robert Winch, Peter Mularien

Overview of this book

<p>Knowing that experienced hackers are itching to test your skills makes security one of the most difficult and high-pressure concerns of creating an application. The complexity of properly securing an application is compounded when you must also integrate this factor with existing code, new technologies, and other frameworks. Use this book to easily secure your Java application with the tried and trusted Spring Security framework, a powerful and highly customizable authentication and access-control framework.<br /><br />"Spring Security 3.1" is an incremental guide that will teach you how to protect your application from malicious users. You will learn how to cleanly integrate Spring Security into your application using the latest technologies and frameworks with the help of detailed examples.<br /><br />This book is centred around a security audit of an insecure application and then modifying the sample to resolve the issues found in the audit.<br /><br />The book starts by integrating a variety of authentication mechanisms. It then demonstrates how to properly restrict access to your application. It concludes with tips on integrating with some of the more popular web frameworks. An example of how Spring Security defends against session fixation, moves into concurrency control, and how you can utilize session management for administrative functions is also included.<br /><br />"Spring Security 3.1" will ensure that integrating with Spring Security is seamless from start to finish.</p>
Table of Contents (24 chapters)
Spring Security 3.1
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Preface
Index

Configuring LdapAuthenticationProvider


If you've read and understood the explanations throughout this chapter, describing how Spring Security LDAP authentication works behind the scenes, this bean configuration will be perfectly understandable, albeit a bit complex. We'll configure LdapAuthenticationProvider with the following characteristics:

  • User credential binding authentication (not password compare)

  • Use of the InetOrgPerson in UserDetailsContextMapper

Let's get to it—we'll explore the already configured LdapAuthenticationProvider first:

src/main/webapp/WEB-INF/spring/security-ldap-explicitly.xml

<bean id="ldapAuthenticationProvider" 
  class="org.springframework.security.ldap.authentication
    .LdapAuthenticationProvider"> 
  <constructor-arg ref="ldapBindAuthenticator"/> 
  <constructor-arg ref="ldapAuthoritiesPopulator"/> 
  <property name="userDetailsContextMapper"
    ref="ldapUserDetailsContextMapper"/> 
</bean>

The next bean provided for us is BindAuthenticator...