gpt4 book ai didi

asp.net - 使用 Html.Action 调用 [ChildActionOnly] 操作方法时的安全问题

转载 作者:行者123 更新时间:2023-12-02 10:42:02 27 4
gpt4 key购买 nike

我在 asp.net mvc5 中有以下操作方法,我将其定义为 ChildActionOnly:-

[ChildActionOnly]
public ActionResult GetChildRecords(int customerid)

在我看来,我将其称为如下:-

<div>@Html.Action("GetChildRecords", "Customer", new {customerid = Model.CustomerID})</div>

但我有以下问题:-

  1. 我需要在子操作方法之前添加 [Authorize] 注释吗?或者我可以确定,由于其父级已被授权,因此子级操作方法也将被授权?

  2. 用户或黑客可以直接调用 ChildActionOnly 吗?

  3. 用户或黑客是否可以修改 Html.Action 参数?例如在下面的 html 中传递不同的 customerid:-

@Html.Action("GetChildRecords", "Customer", new {customerid = Model.CustomerID})

最佳答案

属性[ChildActionOnly]的本质是保证只能使用ActionRenderAction调用,不能被调用直接从浏览器。

对于问题1:如果调用action已经具有[Authorize]属性,则无需担心

对于问题 2:黑客(或任何人)无法直接访问它。

对于问题 3:由于他们无法直接调用该操作,因此我不确定是否需要担心。但请始终在服务器端验证您获得的任何输入(表单、查询字符串等)。

关于asp.net - 使用 Html.Action 调用 [ChildActionOnly] 操作方法时的安全问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28941428/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com