# UserDetails [`UserDetails`](https://docs.spring.io/spring-security/site/docs/5.6.2/api/org/springframework/security/core/userdetails/UserDetails.html) is returned by the [`UserDetailsService`](user-details-service.html#servlet-authentication-userdetailsservice). The [`DaoAuthenticationProvider`](dao-authentication-provider.html#servlet-authentication-daoauthenticationprovider) validates the `UserDetails` and then returns an [`Authentication`](../architecture.html#servlet-authentication-authentication) that has a principal that is the `UserDetails` returned by the configured `UserDetailsService`. [JDBC](jdbc.html)[UserDetailsService](user-details-service.html)