Password esposte negli URI
Un'applicazione memorizza gli URI da utilizzare per i trasferimenti di file tramite SFTP, FTP, FTPS e SCP. Molti di questi URI contengono password, ad esempio:
sftp://someuser:[email protected]/
Questi URI sono visibili a troppe persone. Non possiamo nascondere gli indirizzi email di queste persone.
Un mini-linguaggio per estrarre le password dagli URI
Usando un mini-DSL, possiamo specificare le parti dell'indirizzo e-mail che non vogliamo mostrare:
sftp://someuser:<<CONFIG:customers/widgitco/password>>@host.example.com/
Il programma che trasferisce il file cercherà le istanze di questo mini-DSL nell'URI, le analizzerà, cercherà le stringhe appropriate da fonti riservate e sostituirà tali stringhe nell'URI. Ad esempio, supponendo che l'origine riservata contenga questa coppia chiave / valore:
customers/widgitco/password: moresekrit
Quindi, dopo la sostituzione, l'URI dovrebbe essere:
sftp://someuser:[email protected]/
Ogni istanza del mini-DSL all'interno dell'URI sarebbe delimitata con <<
e >>
. I dettagli del mini-DSL tra <<
e >>
sarebbero liberi di variare per soddisfare i requisiti futuri; l'unico requisito è che non contenga >>
.
Ciò raggiungerebbe il mio obiettivo di ridurre l'esposizione di queste password.
Questo mini-linguaggio è fragile?
- Ci sono URI FTP / FTPS / SFTP / SCP validi che interromperanno questo schema?
- È probabile?
- Quale mini-DSL ha meno probabilità di essere rotto da URI validi?