I'm a relatively new developer working on a C# MVC app, and serving different views to different people depending on what fields they should be able to see. That is, user 1 might see (and be able to enter data into) fields A, B, and C, whereas user 2 may only see field A.
My plan at the moment is to post the form back to a single action in my controller, but I was trying to figure out whether or not I need to protect against the possibility of user 1 modifying the form when (s)he gets it, adding fields B and C in the browser, and then sending it back to the server, in an effort to set values in the database that (s)he shouldn't have access to.
I'm told by someone else in the area that the AntiForgeryToken should protect against this type of attack, but my research implies that it only protects against a cross-site forgery attack, and I don't think this falls into that category. My question is this: Does the AntiForgeryToken protect against this situation? Or do I need to continue with the idea of "don't trust what the user sends you" and explicitly ignore those fields that the user doesn't have rights to use?