| docs/功能测试报告/功能测试报告_密钥外部化与打包去密_2026-09-26.md | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| docs/工作日结/工作日结_2026-09-26.md | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| docs/打包部署说明.md | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| start-dev.ps1 | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
docs/¹¦ÄܲâÊÔ±¨¸æ/¹¦ÄܲâÊÔ±¨¸æ_ÃÜÔ¿Íⲿ»¯Óë´ò°üÈ¥ÃÜ_2026-09-26.md
@@ -44,3 +44,31 @@ ## äºãç»è®º é ç½®å屿¹é 宿并éè¿ 7 æ¡ç¨ä¾ï¼è¿ jar çåªæå ä½ç¬¦ï¼çå®å¼ä» åå¨äºæ¬æºæªè·è¸ªæä»¶æç¯å¢åéï¼æ¬æºå¼åä¸çº¿ä¸é¨ç½²è¡ä¸ºåæªéåãè½®æ¢ key çæ¥éª¤å·²åå ¥é¨ç½²è¯´æã ## å ã第äºè½®ï¼åæ¥æï¼ç¨æ·åæå追å ï¼ï¼æ¬æºä¹ä¸çææ 1. **æ¬æºçå®å¼æ¹ä¸º Windows ç¨æ·ç¯å¢åé**ï¼ä¸åè½æä»¶ï¼ï¼ ```powershell setx TRAFFIC_DB_PASSWORD "æ¬æº MySQL å£ä»¤" setx DEEPSEEK_API_KEY "DeepSeek key" ``` `traffic-audit-server/config/application.yml` æ¹æ"åªæè¯´æãæ ææ"çæ³¨éæä»¶ï¼å¼å ¨é¨ç±ç¯å¢åéæä¾ï¼ã 2. **start-dev.ps1 å æ³¨å表å åº**ï¼è¥å½å shell æ¯æ§è¿ç¨ãæ¿ä¸å°æ°è®¾åéï¼åä» `HKCU\Environment` 读åå¹¶æ³¨å ¥å端è¿ç¨ï¼é¿å "æä»¶é没æãç¯å¢åéä¹è¯»ä¸å°"ç空档ã 3. **æ¸ çä»åºå å« key çå岿件**ï¼æªè·è¸ª/已忽ç¥ï¼éæäº¤å 容ï¼ï¼ | æä»¶ | å½ä¸ | | --- | --- | | `_shots/all_events.json` | 13 å¤ | | `_dep_readme.txt` | 1 å¤ | â å ¨é¨æ¿æ¢ä¸º `sk-REDACTED`ï¼å¤æ¥å ¨ä»åº**å·²æ ææ key**ã ### 追å ç¨ä¾ | ç¼å· | è¾å ¥ | 颿 | å®é | ç»è®º | | --- | --- | --- | --- | --- | | TC-8 | `start-dev.ps1`ï¼å¨æªç»§æ¿æ°åéç shell éï¼ | èªå¨ä»æ³¨åè¡¨è½½å ¥ | è¾åº"å·²ä»ç¨æ·ç¯å¢åéè½½å ¥ TRAFFIC_DB_PASSWORD / DEEPSEEK_API_KEY" | éè¿ | | TC-9 | å¯å¨åç»å½ `admin/123456` | åºå£ä»¤åèªç¯å¢åé | ç»å½æåãtoken 156 å符 | éè¿ | | TC-10 | `POST /api/llm/chat` | key åèªç¯å¢åé | HTTP 200ãåç"æ¶å°" | éè¿ | | TC-11 | å ¨ä»åºæ«æ `sk-[A-Za-z0-9]{16,}` | æ ææ | æ¸ çå夿¥ä¸º 0 | éè¿ | | TC-12 | `traffic-audit-server/config/application.yml` | æ ææ | ä» æ³¨é说æï¼å¼èµ°ç¯å¢åéï¼ | éè¿ | > 说æï¼ç¯å¢åéæ¬èº«ä»æ¯æ¬æºææï¼å卿³¨å表 `HKCU\Environment`ï¼ï¼éååæºå¼åï¼åä½/ç产请ç¨é¨ç½²æºå¤é¨é ç½®æå¯é¥ç®¡çå·¥å ·ãè½®æ¢ key 仿¯æ ¹æ²»æ³é²çå¯ä¸ææ®µã docs/¹¤×÷ÈÕ½á/¹¤×÷ÈÕ½á_2026-09-26.md
@@ -21,13 +21,20 @@ - å端å¯å¨ OKï¼ç»å½æåï¼è¯æåºå£ä»¤åèªæ¬æºè¦çæä»¶ï¼å¦åå ä½ç¬¦ç©ºå£ä»¤è¿ä¸ä¸ï¼ï¼`/api/llm/chat` è¿å"æ¶å°"ï¼è¯æ DeepSeek key åèªæ¬æºè¦çæä»¶ï¼ï¼ - `git grep` 确认è·è¸ªæä»¶ä¸æ `sk-` å¯é¥ï¼ä»åºå 两份é¨ç½²æ¨¡æ¿å为å ä½çã ### 4. æ¬æºå»ææ + æ¸ çåå²å¯é¥ï¼ç¨æ·åæåï¼ - æ¬æºçå®å¼æ¹ä¸º **Windows ç¨æ·ç¯å¢åé**ï¼`setx TRAFFIC_DB_PASSWORD` / `setx DEEPSEEK_API_KEY`ï¼ï¼`config/application.yml` æ¹ææ ææè¯´ææä»¶ï¼ - `start-dev.ps1` å¢å **注å表å åº**ï¼æ§ shell ä¹è½èªå¨è½½å ¥ç¯å¢åéï¼å®æµè¾åº"å·²ä»ç¨æ·ç¯å¢åéè½½å ¥ â¦"ï¼ï¼ - æ¸ çä»åºå å« key çæªè·è¸ªæä»¶ï¼`_shots/all_events.json`ï¼13 å¤ï¼ã`_dep_readme.txt`ï¼1 å¤ï¼â æ¿æ¢ä¸º `sk-REDACTED`ï¼å ¨ä»å¤æ¥æ ææï¼ - å½åæå¡å·²ç¨æ°æ¹å¼éå¯ï¼ç»å½ OK + AI åç"æ¶å°"ï¼åè½æ åå½ã ## äºãæµè¯ç»ææè¦ - æ¥åï¼`docs/åè½æµè¯æ¥å/åè½æµè¯æ¥å_å¯é¥å¤é¨å䏿å å»å¯_2026-09-26.md`ï¼7 æ¡ç¨ä¾å ¨éè¿ï¼ã ## ä¸ãéçé®é¢ä¸å¾ å 1. **ãéç¨æ·æä½ãè½®æ¢å·²æ³é²ç DeepSeek key**ï¼æ§å¶å°æ°å»º key â å 餿§ key â é¨ç½²æºå¤é¨ `application.yml` å¡«æ° key â éå¯éªè¯ãæ§ jar æ æ³æ¶åï¼è½®æ¢æ¯å¯ä¸æ ¹æ²»ææ®µã 1. **ãä»éç¨æ·æä½ãè½®æ¢å·²æ³é²ç DeepSeek key**ï¼æ¬æºä¸ä»åºå·²æ ææï¼ä½æ§ jar éçé£ä»½è¿æ²¡ä½åºï¼ï¼æ§å¶å°æ°å»º key â å 餿§ key â é¨ç½²æºå¤é¨ `application.yml` å¡«æ° key â éå¯éªè¯ãæ§ jar æ æ³æ¶åï¼è½®æ¢æ¯å¯ä¸æ ¹æ²»ææ®µã 2. æ¬æºæ°æ®åº root å£ä»¤ï¼123456ï¼åæ ·å¨æ§ jar éï¼å»ºè®®é¨ç½²æºæ¢å£ä»¤ã 3. 䏿¬¡éæ°æå ç»é¨ç½²æºæ¶ï¼å»ºè®®æ `æå é¨ç½²è¯´æ.md` çèªæ¥æ¥éª¤ç¡®è®¤ jar å æ çå®å¼ï¼å¹¶é¡ºå¸¦åæ¥é¨ç½²å å çæ§æ¯çï¼P2-5ï¼ã 4. 项ç®å ¶å®éçï¼P0/P1/P2ï¼è§ `docs/äº¤æ¥ææ¡£_2026-09-21.md` 第 4 èä¸ `docs/äº¤æ¥ææ¡£_2026-09-23.md`ã docs/´ò°ü²¿Êð˵Ã÷.md
@@ -233,6 +233,19 @@ | jar å级ç `backend/application.yml` | é¨ç½²æºçå®å¼ï¼ä¼å 级é«äº jar å ç½®ï¼ | å¦ | å¦ï¼å¨å å¤ï¼ç°åºå¡«ï¼ | | ç¯å¢åé `TRAFFIC_DB_PASSWORD` / `TRAFFIC_DB_USER` / `TRAFFIC_DB_URL` / `TRAFFIC_JWT_SECRET` / `DEEPSEEK_API_KEY` | è¦ç以ä¸ä»»æä¸é¡¹ | å¦ | å¦ | ### æ¬æºå¼åï¼å¼æ¾ç¯å¢åéï¼ä¸è½æä»¶ï¼ ```powershell setx TRAFFIC_DB_PASSWORD "æ¬æº MySQL å£ä»¤" # è®¾ä¸æ¬¡å³å¯ï¼ä¹åæ°å¼çç»ç«¯èªå¨å¸¦ä¸ setx DEEPSEEK_API_KEY "DeepSeek key" # éè¦æ¶åè¦çï¼setx TRAFFIC_DB_URL / TRAFFIC_DB_USER / TRAFFIC_JWT_SECRET powershell -NoProfile -ExecutionPolicy Bypass -File start-dev.ps1 # ä¼èªå¨ä»æ³¨å表补é½å¹¶æ³¨å ¥å端è¿ç¨ ``` - `traffic-audit-server/config/application.yml` åªç注é说æï¼æ ææï¼ï¼å æå®ä¹ä¸å½±åï¼å¼å ¨å¨ç¯å¢åééï¼ã - è¥ç¨ IDE ç´æ¥è·ä¸»ç±»ï¼è¯·å¨**æ°å¼ç**ç»ç«¯/IDE éå¯å¨ï¼è®©æ°ç»ç«¯ç»§æ¿ç¨æ·ç¯å¢åéï¼ï¼ææå¨ `setx` åéå¯ IDEã ### æå åèªæ¥ï¼30 ç§ï¼ ```powershell start-dev.ps1
@@ -12,6 +12,19 @@ $root = Split-Path -Parent $MyInvocation.MyCommand.Path $webDir = Join-Path $root 'traffic-audit-web' # ---------- å¯é¥ï¼ä» Windows ç¨æ·ç¯å¢åéè¡¥é½ï¼çå®å¼ä¸è½æä»¶ï¼---------- # è¥å½å shell æ¯æ§è¿ç¨ãæ¿ä¸å°æ°è®¾çåéï¼å仿³¨å表 HKCU\Environment è¯»ä¸æ¬¡ï¼ # ä¾å端åè¿ç¨ç»§æ¿ï¼é¿å "å¯é¥ä¸å¨ä»»ä½æä»¶éãå读ä¸å°ç¯å¢åé"ç空档ï¼ã foreach ($name in @('TRAFFIC_DB_PASSWORD', 'DEEPSEEK_API_KEY', 'TRAFFIC_DB_URL', 'TRAFFIC_DB_USER', 'TRAFFIC_JWT_SECRET')) { if (-not [Environment]::GetEnvironmentVariable($name, 'Process')) { $val = [Environment]::GetEnvironmentVariable($name, 'User') if ($val) { [Environment]::SetEnvironmentVariable($name, $val, 'Process') Write-Host "å·²ä»ç¨æ·ç¯å¢åéè½½å ¥ $name" } } } function Test-PortListening($port) { try { $c = Get-NetTCPConnection -LocalPort $port -State Listen -ErrorAction Stop