Il ViewState rappresenta il contenitore dello stato dei controlli della pagina e proteggerlo è importante per evitare che venga fatto il tampering, cioè l'invio di dati ad hoc che portino la pagina a credere che sia stato effettuato un vero PostBack.
Una delle tecniche migliori per proteggersi è quella di impostare la chiave con cui viene criptato il ViewState, utilizzando ad esempio una classe base per la pagina che imposti la proprietà ViewStateUserKey sul nostro utente, quando autenticato:
public class ASPItaliaPage: Page { protected override OnInit(EventArgs e) { if (User.Identity.IsAuthenticated) ViewStateUserKey = User.Identity.Name; } }
E' importante che venga fatto nell'evento Page_Init, così da evitare di impostare la chiave quando il ViewState è già stato caricato.
Per specificare la classe di base per tutte le pagine si può sfruttare il seguente script:
#644 - Una classe Page di base per tutte le pagine
https://www.aspitalia.com/script/644/Classe-Page-Base-Pagine.aspx
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Garantire la provenienza e l'integrità degli artefatti prodotti su GitHub
Rendere i propri workflow e le GitHub Action utilizzate più sicure
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Escludere alcuni file da GitHub Secret Scanning
Autenticazione di git tramite Microsoft Entra ID in Azure DevOps