- Spegnimento
- 17 settembre 2026 alle ore 03:33 UTC
- Autore
- Kamo
- Impegno
- cb7395f
GET /api/ai/providers e GET /api/ai/providers/{id} hanno risposto con la chiave API DECRYPTED di ciascun fornitore. La lista è quello che ogni membro's AI chat modello picker carichi (e kamo-js / l'app mobile), quindi qualsiasi membro di un'organizzazione reorder) necessitava solo di una sessione, quindi qualsiasi membro potrebbe anche indicare l'URL di base di un provider al proprio server e stampa Prova, che invia la chiave decifrata lì. La schermata delle impostazioni ha già richiesto MANAGE AI SETTINGS; il server no. - Entrambe le letture ora rispondono haApiKey e mascheratoApiKey (gli ultimi quattro personaggi; un breve o indecryptable key show nessuno di se stesso). La maschera inutilizzataApiKey, che ha mascherato il testo cifrario, è sostituita. - Creare, aggiornare, eliminare, testare e riordinare la risposta 403 senza MANAGE AI SETTINGS (Dio bypassa, come ovunque). - Aggiornamento mantiene la chiave memorizzata a meno che non venga inviata una non vuota. Il modulo di modifica è stato riempito dalla chiave restituita, quindi una riga semenzata in testo chiaro (decrypts to ") aveva la sua chiave sovrascritta con un vuoto crittografato su qualsiasi salvataggio. AiProviderKeyExposureTest guida il controller attraverso MockMvc con il vero SessionHelper: nessuna chiave in entrambi letto, lo stato della chiave segnalato, mantiene vuoto / digitato sostituisce, e tutti i cinque cambiamenti rifiutati per un membro senza il diritto con nulla salvato e nessun adattatore chiamato. Cinque dei suoi sei test falliscono contro il controllore precedente. Le impostazioni kamo-internal si fermano aspettando la chiave nello stesso set di modifiche.