security: reconsider auth/CORS posture for state-changing /altimate/mcp/reload-datamate
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Tranquilla
- Stack tecnologico
- typescript
- Ambito
- api, authentication, security
Direzione di ricerca
Inizia con l’endpoint /altimate/mcp/reload-datamate aggiunto in #893, quindi traccia la gestione condivisa dell’autenticazione e di CORS per le route esistenti, incluso il comportamento di OPENCODE_SERVER_PASSWORD. Esamina entrambe le direzioni proposte con i maintainer; il lavoro sarà considerato completato quando saranno definiti un design concordato, l’ambito dell’implementazione e test che coprano le richieste che modificano lo stato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Found during the v0.8.8 release review (CTO, P2 deferred).
POST /altimate/mcp/reload-datamate (added in #893) is a state-changing endpoint that re-reads IDE mcp.json from disk and calls MCP.add() to (re)connect MCP clients with whatever command/url those files contain. With no OPENCODE_SERVER_PASSWORD set (the default, loopback bind + startup warning only), any local process — including a browser page the CORS policy reflects http://localhost:* / http://127.0.0.1:* for — can POST to it and trigger a reconnect.
This is the same auth posture as all existing routes (not a new exposure class), but reload-datamate is more side-effectful (spawns/reconnects transports) than the read routes, so it warrants a closer look.
Possible directions: require auth for state-changing /altimate/* routes even when the global password is unset, or tighten the CORS reflection for those routes. Deferred — design decision, not an in-diff edit, and default bind is loopback.
- Lingua principale
- TypeScript
- Stelle
- 813
- Fork
- 134
- Merge medio
- 2g 3h
- PR unite (30g)
- 65
Guida per i contributori
Apri la 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 AltimateAI/altimate-code
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
AltimateAI/altimate-code#1359 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
AltimateAI/altimate-code#1323 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
AltimateAI/altimate-code#1288 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
AltimateAI/altimate-code#1285 ·
-
privacy: Altimate Base consent dialog no longer discloses persistent per-installation identifier Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
AltimateAI/altimate-code#1284 ·
Tutte le issue di AltimateAI/altimate-code
Issue simili
-
VerificationGate: ATTRIBUTION quote guard never matches a normal quotation (\b around the quote) Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
danielmiessler/LifeOS#2234 ·
-
T: Bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
-
Mend: dependency security vulnerability untriaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100