Condividi tramite


Sicurezza, autenticazione e autorizzazione in Web Forms ASP.NET

È consigliabile usare l'opzione di autenticazione sicura più sicura. Per le app .NET distribuite in Azure, vedere:

Azure Key Vault e .NET Aspire offrono il modo più sicuro per archiviare e recuperare i segreti. Azure Key Vault è un servizio cloud che protegge le chiavi di crittografia e i segreti, come certificati, stringhe di connessione e password. Per .NET Aspire, vedere Proteggere la comunicazione tra l'hosting e le integrazioni client.

Evitare la concessione delle credenziali della password del proprietario della risorsa perché:

  • Espone la password dell'utente al client.
  • È un rischio significativo per la sicurezza.
  • Deve essere usato solo quando altri flussi di autenticazione non sono possibili.

Quando l'app viene distribuita in un server di test, è possibile usare una variabile di ambiente per impostare il stringa di connessione su un server di database di test. Le variabili di ambiente vengono in genere archiviate in testo normale e non crittografato. Se il computer o il processo è compromesso, è possibile accedere alle variabili di ambiente da parti non attendibili. È consigliabile usare le variabili di ambiente per archiviare un stringa di connessione di produzione perché non è l'approccio più sicuro.

Linee guida per i dati di configurazione:

  • Non archiviare mai la password o altri dati sensibili nel codice del provider di configurazione o in file di configurazione di testo normale.
  • Non usare i segreti di produzione in ambienti di sviluppo o di test.
  • Specificare i segreti all'esterno del progetto in modo che non possano essere inavvertitamente inviati a un repository del codice sorgente.

Come consentire agli utenti di accedere al sito (e facoltativamente essere assegnati ai ruoli) usando un modulo di accesso o autenticazione di Windows.