feat(authentication): integrasi sistem otentikasi dengan User Identity Management (UIM)
### Perubahan Utama - Tambah integrasi dengan sistem UIM untuk otentikasi pengguna. - Update logika otentikasi berdasarkan metode yang ditentukan (`METHOD_AUTH`). - Penanganan otomatis terhadap pengguna baru dengan pembuatan akun dan penentuan role. ### Detail Perubahan 1. **Integrasi Sistem UIM**: - Tambah metode `userIdManagemeent` untuk menangani otentikasi pengguna melalui UIM. - Implementasikan fungsi `verify_user` di helper baru (`uim.php`) untuk berkomunikasi dengan server UIM. - Tambahkan class baru `Uim` untuk menangani verifikasi pengguna melalui koneksi TCP. - Dekode respons dari UIM untuk memproses data pengguna. 2. **Penyesuaian Logika Otentikasi**: - Jika `METHOD_AUTH` diset ke `uim`, sistem akan dialihkan ke otentikasi melalui UIM. - Tambahkan logika fallback untuk otentikasi standar menggunakan Laravel jika UIM tidak digunakan. 3. **Pembuatan Pengguna Baru**: - Buat pengguna dalam database secara otomatis jika belum terdaftar menggunakan informasi dari UIM. - Validasi kode cabang berdasarkan data UIM untuk menentukan cabang yang relevan. - Penetapan role pengguna sesuai dengan kode grup yang diterima dari UIM. 4. **Manajemen Cabang**: - Cari cabang terkait berdasarkan 4 digit terakhir kode cabang (`KD_CABANG`) dari data UIM. - Simpan ID cabang di session untuk pengguna yang berhasil otentikasi. 5. **Penanganan Validasi dan Error**: - Tambahkan mekanisme penanganan rate limit jika otentikasi gagal. - Beri pesan error yang lebih informatif saat otentikasi gagal melalui UIM. 6. **Update Konfigurasi Module**: - Tambahkan path baru untuk helper `uim.php` di `module.json`.
This commit is contained in:
@@ -8,6 +8,8 @@
|
||||
"providers": [
|
||||
"Modules\\Authentication\\Providers\\AuthenticationServiceProvider"
|
||||
],
|
||||
"files": [],
|
||||
"files": [
|
||||
"app/Helpers/uim.php"
|
||||
],
|
||||
"menu": {}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user