2012-04-19 11 views
11

Abbiamo un cliente con requisiti di sicurezza molto stringenti. Quindi crittograferemo il database di Rails utilizzando una delle opzioni di crittografia del database di Postgres. Ma ciò lascia ancora esposti i dati del cliente in ciò che il registratore di Rails registra quando i moduli vengono inviati per creare dati.Crittografia o lavaggio dei file di registro dei binari

Suppongo che un'opzione non sia quella di crittografare il file di registro, ma di sopprimere tutti i valori dei parametri che vengono registrati per le richieste POST da Rails. Qual è il modo migliore per farlo?

Un'altra opzione è quella di crittografare i file di registro di Rails così come sono scritti sul disco. È un modo migliore di andare, e qual è un buon modo per farlo?

+0

Sto cercando un modo per gestire anche questo. Hai scoperto una soluzione? –

+0

Anche cercando una soluzione a questo. –

risposta

9

una cosa che si può fare è in voi config/ file di application.rb è possibile aggiungere campi che si desidera omettere dai registri come questo

class Application < Rails::Application 
    ... 
    config.filter_parameters += [:password] 
    config.filter_parameters += [:ssn]  
    .... 
end 

Spero che questo aiuta

1

Se si desidera qualcosa di meglio dei parametri filter_parameters per tutti i parametri, è possibile scrivere un registratore personalizzato. vedere: http://rubyjunky.com/cleaning-up-rails-4-production-logging.html e la gemma qualcuno estratto da esso, https://github.com/gshaw/concise_logging

Tuttavia, si sta andando ad avere bisogno di memorizzare la chiave di crittografia da qualche parte sulla stessa macchina i registri, che potenzialmente significa che è non-encryptable anche se qualcuno ha accesso attivo (ma non se solo in qualche modo ottengono i registri più tardi).

Alcune domande a cui pensare:

  • Avete bisogno la registrazione dei parametri a tutti? (controlli anche i registri ? come monitora gli errori?)
  • Che tipo di conformità stai cercando di colpire? PCI? HIPAA?
  • Qual è il vettore di attacco che stai cercando di evitare? vale a dire l'accesso tramite log di hosting condiviso, attacco fisico (rimuovere il disco rigido), accesso remoto (afferrare tutti i file fuori della macchina), ..

Le tue risposte definiranno le linee guida su come attaccare questo problema!

Problemi correlati