Linee guida sulla sicurezza
Bob dispone di funzionalità per la programmazione e l'interazione con il sistema. Per usarlo in modo sicuro, segui queste linee guida.
Lista di controllo per la sicurezza
- Usa le cartelle attendibili per controllare l'accesso ai progetti
- Configura
.bobignoreper limitare l'accesso ai file - Esamina e limita le impostazioni di approvazione automatica
- Gestisci i segreti in modo sicuro
- Usa MCP con autenticazione e crittografia appropriate
- Esamina l'output di Bob prima di implementarlo
Restrizioni di accesso ai file
Puoi controllare l'accesso di Bob ai file configurando le directory e i tipi di file con cui può interagire. Il file .bobignore utilizza la stessa sintassi di .gitignore e dovrebbe essere una delle prime misure di sicurezza da implementare durante la configurazione di Bob.
Configurare .bobignore
.bobignore nel tuo spazio di lavoroAggiungi pattern per i file e le directory sensibili. Includi pattern per tutti i tipi di dati non approvati.
# Example .bobignore patterns
.env
secrets/
*.key
config/credentials.jsonBob monitora attivamente il file .bobignore e qualsiasi modifica viene applicata automaticamente. Per informazioni dettagliate, consulta Usare .bobignore per controllare l'accesso ai file.
Capire le limitazioni
Sebbene .bobignore controlli efficacemente l'accesso di Bob tramite i suoi strumenti, presenta alcune limitazioni importanti:
- Si applica solo ai file nel tuo spazio di lavoro corrente
- Alcune operazioni di scrittura potrebbero aggirare le restrizioni
- Non crea una sandbox a livello di sistema
Esamina le limitazioni chiave complete e l'ambito di applicazione per capire come .bobignore protegge i tuoi file.
Cartelle attendibili
Bob Shell usa le cartelle attendibili per controllare a quali progetti può accedere. Devi approvare esplicitamente una cartella prima che Bob Shell carichi le configurazioni specifiche del progetto, proteggendoti da codice potenzialmente dannoso.
Quando esegui Bob Shell da una cartella per la prima volta, puoi scegliere di:
- Considerare attendibile la cartella: Concedere piena attendibilità alla cartella corrente
- Considerare attendibile la cartella padre: Concedere attendibilità alla directory padre e a tutte le sue sottodirectory
- Non considerare attendibile: Eseguire Bob Shell in modalità sicura limitata
Le cartelle non attendibili operano in modalità sicura con restrizioni significative:
- Le impostazioni del progetto e le variabili d'ambiente vengono ignorate
- L'approvazione automatica degli strumenti è disabilitata
- I server MCP non si connettono
- I comandi personalizzati non vengono caricati
Per informazioni complete su come funzionano le cartelle attendibili, la gestione delle impostazioni di attendibilità e le best practice, consulta Cartelle attendibili.
Impostazioni di approvazione automatica
Con Bob, puoi approvare automaticamente varie azioni senza richieste di conferma. Sebbene questo velocizzi il tuo flusso di lavoro, aumenta significativamente i rischi di sicurezza.
Le impostazioni di approvazione automatica ignorano le richieste di conferma, dando a Bob accesso diretto al tuo sistema. Questo può causare perdita di dati, danneggiamento di file o conseguenze ancora più gravi. L'accesso alla riga di comando è particolarmente pericoloso, poiché può potenzialmente eseguire operazioni dannose.
Impostazioni di approvazione automatica ad alto rischio
| Impostazione | Rischio | Raccomandazione |
|---|---|---|
| Modifica file | Alto | Attiva solo in ambienti controllati |
| Esegui comandi | Alto | Usa una whitelist ed evita i caratteri jolly |
| Usa server MCP | Medio-Alto | Solo con server attendibili |
| Leggi file | Medio | Considera l'esposizione di dati sensibili |
Esamina sempre l'output di Bob per assicurarti che sia accurato e che il codice generato si comporti come previsto. Non fidarti mai ciecamente dell'output di nessun sistema di IA.
Per informazioni dettagliate su ogni impostazione e le relative implicazioni di sicurezza, consulta Configurare Bob Shell.
Gestione sicura dei segreti
Non fornire mai segreti direttamente a nessun sistema di IA, incluso Bob. Anche l'inclusione temporanea di segreti nel codice può portare a un'esposizione non intenzionale.
Best practice per la gestione dei segreti
- Archivia i segreti in file di variabili d'ambiente
- Assicurati che sia
.gitignoreche.bobignorelimitino l'accesso ai file che contengono segreti - Usa strumenti di gestione dei segreti quando possibile
- Applica il principio del minimo privilegio quando si assegnano le credenziali: concedi solo le autorizzazioni minime necessarie per ogni attività.
Delega delle autorizzazioni
I sistemi di IA non dovrebbero utilizzare credenziali che consentano loro di agire per tuo conto senza il tuo intervento e la tua revisione. Quando i sistemi di IA devono agire per tuo conto:
- Usa meccanismi di delega come OAuth
- Implementa token a tempo limitato
- Monitora e controlla tutte le azioni
Uso sicuro di MCP
Il Model Context Protocol (MCP) estende le funzionalità di Bob collegandosi a strumenti e servizi esterni. Sebbene potente, le connessioni MCP richiedono un'attenta considerazione della sicurezza.
Panoramica dell'architettura MCP
MCP utilizza un'architettura client-server:
- Bob funge da host che contiene il client MCP
- Il client si connette ai server MCP (locali o remoti)
- I server forniscono strumenti e funzionalità aggiuntivi
Requisiti di sicurezza per i server MCP
Quando utilizzi i server MCP, applica le seguenti linee guida:
- Autenticazione: Verifica l'identità degli utenti che accedono al server
- Crittografia: Proteggi i dati in transito tra Bob e il server
- Controlli di accesso: Limita le azioni che il server può eseguire
- Audit: Registra tutte le azioni per garantire la responsabilità
I server MCP remoti devono rispettare gli stessi requisiti di sicurezza di qualsiasi infrastruttura server tradizionale, inclusa la protezione degli endpoint, le restrizioni di rete e i controlli di accesso appropriati.
Per i server MCP condivisi, assicurati che vi siano un'adeguata verificabilità e responsabilità in modo che le azioni possano essere tracciate.
Considerazioni di sicurezza aggiuntive
- Revisiona il contenuto generato: Verifica sempre l'output di Bob prima di implementarlo
- Aggiornamenti regolari: Mantieni Bob e le sue dipendenze aggiornati
- Formazione sulla sicurezza: Assicurati che i membri del team comprendano i rischi di sicurezza dell'IA
- Risposta agli incidenti: Disponi di un piano per gestire potenziali incidenti di sicurezza
- Isolamento dello spazio di lavoro: Valuta l'uso di spazi di lavoro dedicati per i progetti sensibili
- Limitazione delle autorizzazioni: Limita l'accesso di Bob a ciò che è necessario per le attività specifiche
Seguendo queste best practice di sicurezza, puoi sfruttare le potenti funzionalità di Bob mantenendo al tempo stesso un ambiente di sviluppo sicuro.