Document production login bootstrap flow

This commit is contained in:
2026-05-20 15:50:54 +07:00
parent a9202c390b
commit 70b34f8cf3

View File

@ -178,13 +178,105 @@ Catatan:
- `seed:master` hanya mengisi data awal `grade`, `bank`, dan `currency` - `seed:master` hanya mengisi data awal `grade`, `bank`, dan `currency`
- user login production tetap harus dibuat terpisah, jangan mengandalkan akun dev/default - user login production tetap harus dibuat terpisah, jangan mengandalkan akun dev/default
## 7. Build Production ## 7. User Login Awal Production
Sistem login tidak punya user production bawaan permanen.
Di kode memang ada akun default, tetapi akun itu hanya dibuat jika:
```env
AUTH_BOOTSTRAP=true
```
Jika production langsung memakai:
```env
AUTH_BOOTSTRAP=false
```
maka akun login awal tidak akan ada.
### Opsi yang paling praktis: bootstrap sementara
1. Ubah `.env.production` sementara menjadi:
```env
AUTH_BOOTSTRAP=true
```
2. Build dan jalankan aplikasi:
```bash
cd /var/www/abelbirdnest-web
npm run build
sudo systemctl restart abelbirdnest-web
```
3. Login pertama kali lewat:
- web: `https://abelbirdnest.id/login`
- API: `POST /api/v1/auth/login`
Identity bisa memakai `email` atau `username`.
4. Akun default yang akan tersedia saat bootstrap aktif:
- `admin` / `admin123`
- `owner` / `owner123`
- `purchasing` / `purchasing123`
- `warehouse` / `warehouse123`
- `qc` / `qc123`
- `sales` / `sales123`
Email default:
- `admin@abelbirdnest.local`
- `owner@abelbirdnest.local`
- `purchasing@abelbirdnest.local`
- `warehouse@abelbirdnest.local`
- `qc@abelbirdnest.local`
- `sales@abelbirdnest.local`
5. Setelah berhasil login, segera buat user production final dari menu `Users`.
Minimal disarankan:
- 1 user `SYSTEM_ADMIN` atau `ADMIN`
- 1 user `OWNER`
- user operasional sesuai kebutuhan: `PURCHASING`, `WAREHOUSE`, `QC`, `SALES`
6. Setelah user production final selesai dibuat dan sudah dites login:
- ubah lagi `.env.production` menjadi:
```env
AUTH_BOOTSTRAP=false
```
- restart service:
```bash
sudo systemctl restart abelbirdnest-web
```
7. Opsional tapi sangat disarankan:
- nonaktifkan atau hapus akun default bootstrap dari menu `Users`
- ganti semua password default jika akun tersebut tetap dipertahankan sementara
### Catatan keamanan
- Jangan biarkan `AUTH_BOOTSTRAP=true` aktif terus di production.
- Jangan gunakan password default untuk operasi harian.
- Setelah bootstrap selesai, verifikasi bahwa login masih normal memakai user production yang baru dibuat.
## 8. Build Production
```bash ```bash
npm run build npm run build
``` ```
## 8. Jalankan App di Port 3007 ## 9. Jalankan App di Port 3007
Manual: Manual:
@ -216,7 +308,7 @@ Untuk verifikasi:
sudo systemctl is-enabled abelbirdnest-web sudo systemctl is-enabled abelbirdnest-web
``` ```
## 9. Reverse Proxy Nginx ## 10. Reverse Proxy Nginx
Gunakan file: Gunakan file:
@ -233,7 +325,7 @@ sudo nginx -t
sudo systemctl reload nginx sudo systemctl reload nginx
``` ```
## 10. Health Check ## 11. Health Check
Endpoint health: Endpoint health:
@ -247,7 +339,7 @@ Contoh:
curl https://abelbirdnest.id/api/v1/health curl https://abelbirdnest.id/api/v1/health
``` ```
## 11. Update Deployment Berikutnya ## 12. Update Deployment Berikutnya
Jika aplikasi sudah live dan ada update dari git: Jika aplikasi sudah live dan ada update dari git: