1. A computer-implemented method for managing data objects, comprising: receiving at a file system interface of a storage system a request from a client application for accessing a data object stored in a storage device of the storage system, wherein the request is an ordinary file system call associated with the file system; in response to the request, decoding the request by a command decoder executed by a processor of the storage system to determine whether the request belongs to a predetermined category, including determining whether the request is to modify or delete content of the data object as part of the ordinary file system call; in response to determining that the request belongs to the predetermined category, automatically determining by a state manager of the storage system whether the data object should be committed as a read-only object based on a predetermined policy, wherein the data object is not the read-only object prior to receiving the request, and wherein determining whether the data object should be committed as the read-only object is only performed when the request is to modify or delete content of the data object; committing by the state manager the data object as the read-only object if it is determined that the data object should be committed as the read-only object; modifying or deleting by an enforcement agent the data object according to the request as part of the ordinary file system call, if it is determined that the data object should not be committed as the read-only object; and rejecting the request by returning an error to the client application as part of the ordinary file system call, if it is determined that the data object should be committed as the read-only object.