Update AGENTS.md: SFTP authentication DataProvider integration
This commit is contained in:
47
AGENTS.md
47
AGENTS.md
@@ -1451,6 +1451,53 @@ cargo build -p markbase-core # ✅ 0 error
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
**最後更新**:2026-06-18 23:45
|
||||||
|
**版本**:1.16(SFTP 認證 DataProvider 整合完成)
|
||||||
|
|
||||||
|
## SFTP 認證 DataProvider 整合(2026-06-18)⭐⭐⭐⭐⭐
|
||||||
|
|
||||||
|
**完成時間**:約 30 分鐘
|
||||||
|
**新增代碼量**:188 行
|
||||||
|
**Git commits**:667d720 + dfd7673
|
||||||
|
|
||||||
|
### 实施内容 ⭐⭐⭐⭐⭐
|
||||||
|
|
||||||
|
**sftp/auth.rs 重構**:
|
||||||
|
- `SftpAuth` 使用 `Arc<dyn DataProvider>` 而非 `AuthDb`
|
||||||
|
- 新增 `verify_password()`, `get_user()`, `get_home_dir()` 方法
|
||||||
|
- 新增單元測試(使用 SqliteProvider)
|
||||||
|
|
||||||
|
**sftp/server.rs 重構**:
|
||||||
|
- `MarkBaseSftpServer` 接受 `Arc<dyn DataProvider>` 參數
|
||||||
|
- `SshSession` 正確實現 `russh::server::Handler` trait
|
||||||
|
- `auth_request` 支持 password 和 public key 認證
|
||||||
|
- 修復原文件的 broken impl blocks 結構
|
||||||
|
|
||||||
|
### russh Handler 整合 ⭐⭐⭐⭐⭐
|
||||||
|
|
||||||
|
| Handler 方法 | 功能 | 狀態 |
|
||||||
|
|-------------|------|------|
|
||||||
|
| `auth_request` | Password + PublicKey 認證 | ✅ |
|
||||||
|
| `channel_open_session` | SSH channel 開啟 | ✅ |
|
||||||
|
| `subsystem_request` | SFTP/Shell subsystem | ✅ |
|
||||||
|
| `exec_request` | SCP/rsync 命令 | ✅ |
|
||||||
|
| `shell_request` | Shell 交互 | ✅ |
|
||||||
|
|
||||||
|
### 測試結果 ✅
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cargo test -p markbase-core --lib # 135 passed, 0 failed
|
||||||
|
```
|
||||||
|
|
||||||
|
### Git 提交
|
||||||
|
|
||||||
|
**Commit 667d720**: "Refactor sftp/auth.rs to use DataProvider trait"
|
||||||
|
**Commit dfd7673**: "Refactor sftp/server.rs: integrate DataProvider for authentication"
|
||||||
|
|
||||||
|
**推送到**:✅ m5max128gitea + ✅ m4minigitea
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
**最後更新**:2026-06-18 16:00
|
**最後更新**:2026-06-18 16:00
|
||||||
**版本**:1.13(VFS/DataProvider/Config 重構 Phase 1-6 完成)
|
**版本**:1.13(VFS/DataProvider/Config 重構 Phase 1-6 完成)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user