MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Otentikasi dengan Spring Security + Spring data + MongoDB

Lapisan Layanan

Anda harus membuat service yang terpisah menerapkan org.springframework.security.core.userdetails.UserDetailsService dan masukkan ke dalam AuthenticationManagerBuilder .

@Component
public class SecUserDetailsService implements UserDetailsService{

    @Autowired
    private UserRepository userRepository;

    @Override
    public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
        /*Here add user data layer fetching from the MongoDB.
          I have used userRepository*/
        User user = userRepository.findByUsername(username);
        if(user == null){
            throw new UsernameNotFoundException(username);
        }else{
            UserDetails details = new SecUserDetails(user);
            return details;
        }
    }
}

Model

UserDetails Harus juga dilaksanakan. Ini adalah POJO yang akan menjaga detail terotentikasi pengguna pada Spring. Anda dapat menyertakan objek data Entitas Anda yang dibungkus di dalamnya, seperti yang telah saya lakukan.

public class SecUserDetails implements UserDetails {

    private User user;

    public SecUserDetails(User user) {
        this.user = user;
    }
    ......
    ......
    ......
}

Konfigurasi Keamanan

Autowire layanan yang kita buat sebelumnya dan atur di dalam AuthenticationManagerBuilder

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    @Autowired
    SecUserDetailsService userDetailsService ;

    @Autowired
    public void configAuthBuilder(AuthenticationManagerBuilder builder) throws Exception {
        builder.userDetailsService(userDetailsService); 
    }
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Menyimpan beberapa file kecil (di bawah 1 MB) dengan MongoDB di NodeJS TANPA GridFS

  2. Bagaimana cara menampilkan gambar yang diunggah ke sisi server sekali lagi di browser menggunakan tumpukan MEAN?

  3. Modul tidak ditemukan:Kesalahan:Tidak dapat menyelesaikan modul 'modul' mongodb saat menggabungkan dengan webpack

  4. Cara membuat kode MongoDB untuk setiap Query di PHP

  5. Cara mengkonfigurasi MongoMapper dan ActiveRecord di Proyek Ruby Rails yang sama