jigoong
3a5f9e9001
feat: replace SQLAdmin with Keycloak-protected API management page
...
- Disable SQLAdmin basic auth (comment out mount_admin, statics, redirect)
- Add /api-management page (Keycloak admin role required)
- Add admin_api_keys.py: REST endpoints for list/create clients and keys
- Add api_management.html: manage API clients, keys, permissions with copy-once key display
- Update index.html: API Management link -> /api-management
- Update auth middleware: add /api-management and /admin/users to PROTECTED_PATHS
- Add CHANGES-2026-06-04.md dev notes
2026-06-04 18:22:22 +07:00
jigoong
a587be08bd
feat: MinIO integration — bucket finance, API service upload, Nginx routing
...
- 01-infra/nginx-configs: add MinIO /minio/ and /minio-console/ location blocks
(port 9000 S3 API, port 9001 Console UI, path stripping via rewrite)
- 03-apiservice: integrate MinIO minio-python SDK for file upload
- requirements.txt: add minio==7.2.11
- app/core/config.py: add MINIO_ENDPOINT, ACCESS_KEY, SECRET_KEY, BUCKET_FINANCE, USE_SSL
- app/services/minio_client.py: new — upload_file(), get_presigned_url(), delete_file()
- app/routes/pages.py: replace local /data/uploads/ write with MinIO upload to finance bucket
- docker-compose.yml: pass MinIO env vars to container
- .env.example: document MinIO vars
- 07-minio/.env.example: add MINIO_SVC_ACCESS_KEY/SECRET_KEY section
- 07-minio/README.md: add Python minio SDK and Airflow DAG usage guide
- CLAUDE.md: project context (servers, SSH, paths, service distribution)
- document-obsidiant/: initial Obsidian docs for all services
2026-05-20 17:42:39 +07:00