【发布时间】:2014-06-05 14:47:22
【问题描述】:
我正在制作一个简单的网站,列出某个文件夹中的文件。如果用户有管理员权限,用户可以点击“删除”按钮删除文件。
在我的 .aspx 文件中,我有以下代码:
<asp:Button runat="server" Text="Delete" OnCommand="FileList_Delete"
CommandArgument='<%#Eval("FilePath")%>' Visible='<%CurrentUserIsAdmin()%>' />
所以如果CurrentUserIsAdmin()返回false,按钮将不会被渲染。
按钮呈现如下:
<input type="submit" name="ctl00$ctl00$MainContent$LocalMainContent$FileList$ctrl0$ctl17" value="Delete" />
我的问题是:如果用户修改网页客户端以单击此不可见按钮,我能否确定此方法可以安全抵御已知代码攻击?还是我必须在代码隐藏中采取预防措施并在按钮单击事件中验证用户的权限?
【问题讨论】:
-
只有在 visible 为 true 时才呈现按钮。否则它根本不包括在内。
标签: c# asp.net security webforms authorization