73 lines
1.4 KiB
Markdown
73 lines
1.4 KiB
Markdown
# Panjit 密碼管理系統 API
|
||
|
||
## 概述
|
||
|
||
這是一個為 Panjit 公司設計的密碼管理系統 API,提供員工登入驗證和密碼修改功能。
|
||
|
||
## 功能特色
|
||
|
||
- 🔐 安全的密碼雜湊技術
|
||
- 👤 支援多種登入方式
|
||
- 🔄 密碼修改功能
|
||
- 📚 完整的 API 文件
|
||
- ⚙️ 環境變數配置
|
||
- 🛡️ 密碼強度驗證
|
||
|
||
## 安裝與設定
|
||
|
||
### 1. 安裝依賴套件
|
||
|
||
```bash
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
### 2. 環境變數配置
|
||
|
||
複製 `env_example.txt` 為 `.env` 並根據實際環境修改相應的值。
|
||
|
||
### 3. 啟動服務
|
||
|
||
```bash
|
||
python app.py
|
||
```
|
||
|
||
## API 文件
|
||
|
||
啟動服務後,可透過以下網址查看完整的 API 文件:
|
||
|
||
```
|
||
https://pj_password.theaken.com/api/docs
|
||
```
|
||
|
||
### API 端點
|
||
|
||
- POST /api/login - 登入驗證
|
||
- POST /api/change-password - 修改密碼
|
||
- GET /api/health - 健康檢查
|
||
- GET /api/user/<account> - 查詢用戶資訊
|
||
|
||
## 密碼規則
|
||
|
||
- 長度:6-50 個字元
|
||
- 必須包含:至少一個字母和一個數字
|
||
- 不能與舊密碼相同
|
||
|
||
## 安全特性
|
||
|
||
- 所有密碼使用安全雜湊技術儲存
|
||
- 支援多種登入方式
|
||
- 完整的錯誤處理和狀態碼
|
||
- 環境變數配置敏感資訊
|
||
|
||
## 技術棧
|
||
|
||
- **後端框架**:Flask
|
||
- **資料庫**:MySQL
|
||
- **密碼雜湊**:JWT
|
||
- **API 文件**:Swagger UI
|
||
- **配置管理**:python-dotenv
|
||
|
||
## 授權
|
||
|
||
此專案為 Panjit 公司內部使用。
|