Initial commit

This commit is contained in:
2025-09-21 19:56:14 +08:00
commit 25f85f3e8c
7 changed files with 936 additions and 0 deletions

77
README.md Normal file
View File

@@ -0,0 +1,77 @@
# Panjit 密碼管理系統 API
## 概述
這是一個為 Panjit 公司設計的密碼管理系統 API提供員工登入驗證和密碼修改功能。
## 功能特色
- 🔐 安全的密碼雜湊技術
- 👤 支援多種登入方式
- 🔄 密碼修改功能
- 📚 完整的 API 文件
- ⚙️ 環境變數配置
- 🛡️ 密碼強度驗證
## 安裝與設定
### 1. 安裝依賴套件
```bash
pip install -r requirements.txt
```
### 2. 環境變數配置
複製 `env_example.txt``.env` 並根據實際環境修改相應的值。
### 3. 初始化資料庫
```bash
python excel_to_db.py
```
### 4. 啟動服務
```bash
python app.py
```
## API 文件
啟動服務後,可透過以下網址查看完整的 API 文件:
```
http://localhost:12023/api/docs
```
## 密碼規則
- 長度6-50 個字元
- 必須包含:至少一個字母和一個數字
- 不能與舊密碼相同
## 安全特性
- 所有密碼使用安全雜湊技術儲存
- 支援多種登入方式
- 完整的錯誤處理和狀態碼
- 環境變數配置敏感資訊
## 開發工具
- **測試腳本**`test_api.py``test_change_password.py`
- **資料庫重置**`reset_database.py`
- **資料匯入**`excel_to_db.py`
## 技術棧
- **後端框架**Flask
- **資料庫**MySQL
- **密碼雜湊**JWT
- **API 文件**Swagger UI
- **配置管理**python-dotenv
## 授權
此專案為 Panjit 公司內部使用。