Les contrôles, qui font partie de l'ensemble de contrôles ASP.Net par défaut - ALL utilisent-ils viewstate ou controlstate en permanence?Les contrôles ASP.Net exposent-ils des requêtes SQL via viewstate?
Si je dépose le code ci-dessous sur un tout nouveau formulaire Web, ma chaîne SQL est-elle placée dans un état de contrôle non crypté?
<asp:SqlDataSource ID="mobileData" runat="server"
DataSourceMode="DataReader"
SelectCommand="SELECT * from ma.bob WHERE Vendor IS NOT NULL"
/>
Je suis au courant de la façon de chiffrer et viewstate ControlState, mais il me semble fou que ce cas d'utilisation commune pourrait être si effroyablement insécurité. Sûrement on pourrait effectuer une attaque par injection SQL en modifiant le controlstate?
Je pense que la plupart des gens pensent crypter controlstate pour les applications sensibles, mais en réalité, si ma supposition est vraie - alors cela devrait toujours être fait - et visual studio devrait l'activer par défaut? Est-ce que je pense à cela correctement, ou est-ce que j'ai la mauvaise extrémité du bâton?
Vous pouvez donner votre avis: http://programmers.stackexchange.com/questions/115374/using-sqldatasource-databound-controls-in-asp-net-bad-practice – NotMe
Pourquoi est-ce que la chaîne aller dans ViewState ou ControlState? C'est statique. –