In this case no one should be allowed to update the fields outside the internal scope.
Example the object method is called by an internal service class
internal void DoAction()
{
this.ActionDate=DateTime.Now;
this.ActionTakenBy=this.CurrentIdentity.Name;
}