Asp.net mvc 5 HTTPPOST是否可以通过URL访问?
例如,假设只有用户X可以创建对象YAsp.net mvc 5 HTTPPOST是否可以通过URL访问?,asp.net-mvc-5,Asp.net Mvc 5,例如,假设只有用户X可以创建对象Y public ActionResult Create() { if(User != X) { end; } } [HttpPost] public ActionResult Create(SampleModel Y) { AddtoDB(X); } URL是否可能被占用,从而直接进入HttpPost,从而绕过身份验证?类似localhost123:Controller/Action/?是的,您可以直接发布,而无需先通过
public ActionResult Create()
{
if(User != X)
{
end;
}
}
[HttpPost]
public ActionResult Create(SampleModel Y)
{
AddtoDB(X);
}
URL是否可能被占用,从而直接进入HttpPost,从而绕过身份验证?类似localhost123:Controller/Action/?是的,您可以直接发布,而无需先通过
HTTPGet
。不要在操作本身中执行身份验证检查,而是使用authorize属性修饰操作并提供roles参数
[Authorize(Roles="CanCreate"]
public ActionResult Create()
{
...
}
有时,您需要对让谁参与操作进行更精细的控制,例如用户可以为某些部门创建项目的情况。在这种情况下,您可以编写自定义授权属性,或者只需将其写入操作。是。您可以使用任何HTTP工具(如cURL)轻松发送POST请求,因此也必须在POST中进行身份验证检查?是的。我已经有一段时间没有做任何.NETMVC了,但是没有安全/认证控制器操作的注释吗?