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 UserDetailsContextMapper


As we noted earlier, an instance of o.s.s.ldap.userdetails.UserDetailsContextMapper is used to map a user's entry into the LDAP server to a UserDetails object in memory. The default UserDetailsContextMapper object behaves similarly to JdbcDaoImpl in the level of detail that is populated on the returned UserDetails object—that is to say, not a lot of information is returned besides the username and password.

However, an LDAP directory potentially contains many more details about individual users than usernames, passwords, and roles. Spring Security ships with two additional methods of pulling more user data from two of the standard LDAP object schemas—person and inetOrgPerson.

Implicit configuration of UserDetailsContextMapper

In order to configure a different UserDetailsContextMapper implementation than the default, we simply need to declare what LdapUserDetails class we want LdapAuthenticationProvider to return. The security namespace parser will be smart...