authenticaction, registration, login
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
package com.aitrainer.api.service
|
||||
|
||||
import org.springframework.context.annotation.Bean
|
||||
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
|
||||
import org.springframework.security.crypto.password.PasswordEncoder
|
||||
import org.springframework.stereotype.Component
|
||||
|
||||
/*
|
||||
Commonly used Beans
|
||||
*/
|
||||
|
||||
@Component
|
||||
class ServiceBeans {
|
||||
|
||||
@Bean
|
||||
fun passwordEncoder(): PasswordEncoder {
|
||||
return BCryptPasswordEncoder()
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.aitrainer.api.service
|
||||
|
||||
import com.aitrainer.api.model.Customer
|
||||
import com.aitrainer.api.repository.CustomerRepository
|
||||
import org.springframework.beans.factory.annotation.Autowired
|
||||
import org.springframework.security.core.GrantedAuthority
|
||||
import org.springframework.security.core.userdetails.User
|
||||
import org.springframework.security.core.userdetails.UserDetails
|
||||
import org.springframework.security.core.userdetails.UserDetailsService
|
||||
import org.springframework.security.core.authority.SimpleGrantedAuthority
|
||||
import org.springframework.stereotype.Service
|
||||
import org.springframework.transaction.annotation.Transactional
|
||||
import kotlin.collections.HashSet
|
||||
|
||||
@Service
|
||||
class UserDetailsServiceImpl: UserDetailsService {
|
||||
|
||||
@Autowired
|
||||
private lateinit var customerRepository: CustomerRepository
|
||||
|
||||
@Override
|
||||
@Transactional(readOnly = true)
|
||||
override fun loadUserByUsername(username: String?): UserDetails {
|
||||
val customer: Customer? = customerRepository.findByEmail(username)
|
||||
|
||||
val grantedAuthorities = HashSet<GrantedAuthority>()
|
||||
grantedAuthorities.add(SimpleGrantedAuthority("user"))
|
||||
|
||||
if (customer != null) {
|
||||
return User(customer.email, customer.password, grantedAuthorities)
|
||||
} else {throw Exception("User does not exist")}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user