1. A method, comprising: storing one or more storage rules for each of one or more storage locations on a storage subsystem, along with one or more actions to be taken for each storage rule that is violated, wherein each of the storage rules identifies a storage location and at least one of a format of data and a pattern of the data at that storage location; intercepting an Input/Output (I/O) operation issued to the storage subsystem, wherein the I/O operation specifies a storage location; before the I/O operation is issued to the storage subsystem, determining whether the I/O operation violates one or more of the storage rules by matching at least one of a format of data and a pattern of data of the I/O operation against the at least one of the format of data and the pattern of data in the one or more storage rules for the storage location specified in the I/O operation; in response to determining that the I/O operation violates one or more of the storage rules, identifying an application that issued the I/O operation; and performing each of the one or more actions associated with the one or more of the violated storage rules; and in response to determining that the I/O operation does not violate one or more of the storage rules, allowing the I/O operation to pass to the storage subsystem.