例如:服务器端是 Asp.net MVC,客户端是 KnockoutJS。
从安全和标准的角度来看:服务器输出编辑链接和客户端代码然后根据 javascript viewmodel 属性(例如“HasEditPermission”)设置控件的可见性是否可以接受?
或者 MVC Razor 语法是否应该根据视图模型选择性地输出控件?
传统上,这一切都将在服务器端完成,但是现在大多数数据绑定都发生在客户端上,它通过在 Razor 和 KnockoutJS 中使用条件逻辑来混合关注点。
毋庸置疑,服务器会根据权限验证所有回发,因此不可能提升权限。公平地指出,“默默无闻不是安全”的概念确实在这里发挥了作用。仅仅因为不存在编辑链接并不意味着攻击者尝试您的网站/用户/编辑/1 并不明显