Bảo mật Id Primary key khi Lưu SaveChanges dữ liệu MVC như thế nào

  • Chủ đề được ưu tiên
  • 136 lượt xem
  • Bài cuối 20 Tháng Chín 2018
Kênh Xã Nga Thắng đăng này 24 Tháng Tám 2018

Mọi người cho mình hỏi.

Mình có muốn sửa dữ liệu 1 view là thông tin cá nhân

Mình dùng model để truyền dữ liệu lên view này.

@model UseDetail

 @using (Html.BeginForm.................

@Html.HiddenFor(m => m.Name)
@Html.HiddenFor(m => m.Id)
<div class="form-group divdatepicker">
    <label>Ngày sinh</label>
    @Html.TextBoxFor(m => m.BirthDay, "{0d/MM/yyyy}", new { @class = "form-control datepicker" })
</div>
<div class="form-group">
    <label>Địa chỉ</label>
    @Html.TextBoxFor(m => m.Address1, new { @class = "form-control" })
</div>

------------

Khi lưu dữ liệu xuống dùng

 [HttpPost]
public ActionResult Edit(UseDetail model)

{

.....
dbc.Entry(model).State = System.Data.Entity.EntityState.Modified;
dbc.SaveChanges();

Mình chỉ cần đổi Id ở @Html.HiddenFor(m => m.Id) thành Id model khác là nó lưu xuống Id khác ngay.

 Ý là khi gọi model trên view để sửa dữ liệu ta phải truyền vào biến Id Primary key của bảng đó, để khi lưu xuống thông qua model dựa vào Id để lưu xuống.

Nhưng khi Id này view code HMTL của trình duyệt lên đổi lại thành Id khác nó sẽ lưu theo Id này ngày. Việc này rất dễ bị hacker tấn công. Làm sao để bảo mật Id này được. Giúp mình với

 

admin đăng này 20 Tháng Chín 2018

Cái bạn phải đảm bảo là id đó có truyền lên thì server vãn phải validate chuẩn đó là id của bản ghi mà bạn cho phép update. Nên phải quyền cho user đó

TEDU

Close