public class DaoX509AuthoritiesPopulator extends Object implements X509AuthoritiesPopulator, org.springframework.beans.factory.InitializingBean, org.springframework.context.MessageSourceAware
UserDetailsService
.Modifier and Type | Field and Description |
---|---|
protected org.springframework.context.support.MessageSourceAccessor |
messages |
Constructor and Description |
---|
DaoX509AuthoritiesPopulator() |
Modifier and Type | Method and Description |
---|---|
void |
afterPropertiesSet() |
UserDetails |
getUserDetails(X509Certificate clientCert)
Obtains the granted authorities for the specified user.
|
void |
setMessageSource(org.springframework.context.MessageSource messageSource) |
void |
setSubjectDNRegex(String subjectDNRegex)
Sets the regular expression which will by used to extract the user name from the certificate's Subject
DN.
|
void |
setUserDetailsService(UserDetailsService userDetailsService) |
public void afterPropertiesSet() throws Exception
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
Exception
public UserDetails getUserDetails(X509Certificate clientCert) throws AuthenticationException
X509AuthoritiesPopulator
May throw any
AuthenticationException
or return null
if the authorities are unavailable.
getUserDetails
in interface X509AuthoritiesPopulator
clientCert
- the X.509 certificate suppliedAuthenticationException
- if the user details are not available or the certificate isn't valid for the
application's purpose.public void setMessageSource(org.springframework.context.MessageSource messageSource)
setMessageSource
in interface org.springframework.context.MessageSourceAware
public void setSubjectDNRegex(String subjectDNRegex)
It should contain a single group; for example the default expression "CN=(.?)," matches the common name field. So "CN=Jimi Hendrix, OU=..." will give a user name of "Jimi Hendrix".
The matches are case insensitive. So "emailAddress=(.?)," will match "EMAILADDRESS=jimi@hendrix.org, CN=..." giving a user name "jimi@hendrix.org"
subjectDNRegex
- the regular expression to find in the subjectpublic void setUserDetailsService(UserDetailsService userDetailsService)
Copyright © 2016. All rights reserved.