Utilizzo ASP.Net del file Machine.config

1

In ASP.Net, il modo normale di crittografare un oggetto (come exmaple un cookie utente sul lato server) viene letto la chiave condivisa che si trova nel file machine.config. Il file di configurazione della macchina contiene le seguenti voci di configurazione.

<configuration>
    <system.web>
        <machineKey decryptionKey="section for decryption key"
        validationKey="section for validation key" />
    </system.web>
</configuration>

Questo è completamente sicuro da usare e sicuro per memorizzare valori chiave come questo? Se no, quali sono le altre alternative che abbiamo?

    
posta Rithu Bimasha 18.07.2017 - 04:36
fonte

1 risposta

1

Is this fully safe to use and safe to store key values like this?

Non è una buona idea salvare le tue chiavi simmetriche in un file di configurazione a livello macchina. La cosa principale è che è possibile accedervi da qualsiasi utente a livello di amministratore nel tuo sistema e non è privato solo per la tua applicazione. Questa chiave nel file di configurazione è in testo semplice, il che è piuttosto negativo in termini di sicurezza.

Oltre a ciò in una situazione di Web farm è necessario replicare queste chiavi in ogni macchina host che si sta utilizzando. Quindi, la rotazione delle chiavi e gli aggiornamenti diventeranno anche un problema.

If not what are the other alternatives we have ?

Il modo migliore per proteggere le tue chiavi simmetriche in un server è utilizzando un archivio chiavi sicuro o un HSM (Hardware Security Module).

Dato che stai usando .Net puoi dare un'occhiata a Protezione dei dati in .Net. Se si utilizza .Net Core, il modo migliore per gestirlo è utilizzare API di protezione dati .

Se si sta distribuendo l'applicazione in un ambiente cloud come Azure, è possibile utilizzare Azure Key vault .

Ulteriori letture

    
risposta data 18.07.2017 - 07:17
fonte

Leggi altre domande sui tag