Saya merancang aplikasi berdasarkan arsitektur microservices,
Dalam aplikasi ini saya akan membutuhkan Auter microservice,
Saya juga perlu menyimpan beberapa informasi Pengguna tambahan seperti, mungkin, beberapa alamat, gambar avatar dll
Ini mengarah pada gagasan memiliki dua layanan microser - satu untuk Auth dan lainnya, Pengguna, yang dapat menyimpan informasi tambahan Pengguna,
Sejauh ini, saya punya ide-ide berikut:
Izinkan layanan auth juga menjadi server sumber daya yang akan menampung informasi Pengguna termasuk alamat tambahan, mungkin, avatar dll. Ini adalah solusi yang nyaman karena memungkinkan untuk memiliki segala sesuatu yang terkait dengan Pengguna di satu tempat dan mengurangi kompleksitas untuk operasi seperti pendaftaran baru Pengguna, menghapus Pengguna. Namun, solusi ini tampaknya bertentangan dengan konsep layanan mikro, tetapi bagi saya solusi ini adalah yang paling menarik
Memiliki dua layanan microser yang berbeda - Auth dan User. Auth akan bertanggung jawab hanya untuk menangani token dan tidak akan menyimpan data apa pun yang terkait dengan Pengguna. Jadi ketika permintaan token diterima, layanan Auth memanggil Pengguna untuk menerima data Pengguna dan membuat keputusan
Memiliki dua layanan microser yang berbeda - Auth dan User. Auth akan bertanggung jawab untuk menangani token dan juga menyimpan sebagian informasi pengguna yang terkait dengan Otentikasi (mungkin kata sandi, peran). Layanan pengguna akan menyimpan semua informasi lain seperti alamat tambahan, avatar, dll. Pendekatan ini bagi saya tampaknya terlalu rumit karena memerlukan penghapusan yang kompleks. Pengguna / buat operasi Pengguna baru
Sekarang, saya perlu memilih salah satu dari solusi ini, tetapi saya bingung dan tidak yakin yang mana dari solusi ini,
Akan menghargai saran yang berkaitan dengan ini,
Terima kasih
sumber
Jawaban:
3 adalah jawaban yang benar.
Server Auth Anda mengotentikasi pengguna, server Pengguna Anda mungkin akan lebih baik bernama 'UserProfiles'
Anda akan menemukan bahwa banyak pengguna Anda adalah orang-orang dengan profil, tetapi Anda juga akan memiliki pengguna layanan untuk API lain atau mungkin kunci API sederhana, yang juga menggunakan server auth untuk mengautentikasi tetapi tidak memiliki profil yang sesuai.
Selain itu, Anda mungkin akan menemukan bahwa ada banyak server dan kerangka kerja Auth out yang dapat Anda gunakan, tetapi Anda UserProfile akan disesuaikan dengan kebutuhan Anda. Seringkali lebih mudah untuk menambahkan
userid
profil kustom daripada mengintegrasikan profil khusus dengan DB otentikasi premadesumber