fix(config): WS_TUNNEL_JWT_SECRET 在 `tunely serve` 下静默失效(配置 no-op,同类 bug 已在 admin_api_key/database_url 修过两次)
I maintainer di solito rispondono entro 13 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 75/100
Direzione di ricerca
Inizia da python/tunely/cli.py:98-125: serve rilegge WS_TUNNEL_ADMIN_API_KEY/WS_TUNNEL_DATABASE_URL ma mai jwt_secret, e la chiamata a run_app a :148-157 lo omette, quindi app.py:501 ha come default None e create_full_app (app.py:202-210) scrive un None esplicito che sovrascrive env. Rispecchia il readback api-key esistente, oppure passa jwt_secret solo quando è fornito esplicitamente, poi verifica che /api/info riporti "required": true. Aggiungi un test serve/env-path accanto a python/tests/test_jwt_auth.py:30-33, che oggi costruisce solo TunnelServer direttamente, e aggiorna deploy/README.md:50 se il flag cambia.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
场景 gap 单(okguitar 提报)· 优先级 P2 · 依赖:无
基线 HEAD = 020dec3。
Summary
python/tunely/cli.py:98-125:serve 只回读WS_TUNNEL_ADMIN_API_KEY/WS_TUNNEL_DATABASE_URL,run_app(...)从不传 jwt_secret(:148-157)→run_app默认 None(app.py:501)→create_full_app显式TunnelServerConfig(..., jwt_secret=None)(app.py:202-210)——pydantic-settings 下显式 None 覆盖 env,WS_TUNNEL_JWT_SECRET(config.py:155-157,deploy/README.md:50 教人这么配)永远进不了配置。- 测试只覆盖直接构造
TunnelServer(jwt_secret=...)(python/tests/test_jwt_auth.py:30-33),无 serve/env 路径用例。
影响
运维按文档配了 JWT,/api/info 回 "required": false,"创建隧道需 Bearer JWT"这层防守根本没生效(只剩 admin key 一层)。deploy/README 自记过同款历史坑(0.5.x 显式 None 覆盖 env),admin_api_key/database_url 修过两次,jwt 漏网。
建议
serve 补 --jwt-secret + env 回读(与 api-key 同款);或 create_full_app 改"仅显式提供才传参";补一条 serve 路径 env 生效测试。
- Lingua principale
- Python
- Stelle
- 0
- Fork
- 0
- Merge medio
- 12g 4h
- PR unite (30g)
- 1
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di jeffkit/tunely
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
I maintainer di solito rispondono entro 13 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 87/100
I maintainer di solito rispondono entro 13 giorni
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
jeffkit/tunely#22 · 3 commenti ·
I maintainer di solito rispondono entro 13 giorni
-
fix(release): 发布链 fail-open(缺 secret 时 Actions 绿但什么都没发)+ PyPI 上的 0.10.0 恰是 /forward 无鉴权的安全缺口版本Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 34/100
jeffkit/tunely#23 · 3 commenti ·
I maintainer di solito rispondono entro 13 giorni
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
jeffkit/tunely#21 · 3 commenti ·
I maintainer di solito rispondono entro 13 giorni
Tutte le issue di jeffkit/tunely
Issue simili
-
idxmax/idxmin raise ValueError when a single partition is all-NAForse già presa @Jason10191019999 l’ha presa oggi. Apertaneeds triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 3 giorni
-
Old versions of datamodelsApertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 64/100
-
[BUG]: Windows GUI package of v1.17.0-rc3 has no GTK DLLsForse già presa @andrut-ds l’ha presa oggi. Apertabug CI/CD Pactus-GUI Windows
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
pactus-project/pactus#2428 ·
I maintainer di solito rispondono entro 1 giorno
-
DiskDataset.reshard() can hang with a zero or negative shard sizeForse già presa @Programmer-Develops l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 19 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
GNS3/gns3-server#3017 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno