10. The method of claim 1 , wherein: the data repository is a database; identifying the structure of the data stored in the data repository comprises: connecting to the database using a connect string; querying a set of table names of the database; and for each table, reading column names of table; deriving the arbitrary data schema of the data repository comprises: for each table, identifying each column in database as one of text, numbers, or binary data; and scanning the structured data of the data repository comprises: for each row in the table, reading all cells in that row.
1. A computer-implemented method, comprising: identifying, by a scan agent hosted by a computer system, a structure of data stored in a data repository having an arbitrary data schema when the arbitrary data schema of the data repository is unknown, wherein the arbitrary data schema of the data repository is derived from the identified structure; scanning the structured data of the data repository according to the derived data schema; converting the structured data into text data; and applying a schema-independent policy to the converted text data to detect confidential information stored in the data repository regardless of the arbitrary data schema of the structured data, wherein the schema-independent policy is a data loss prevention policy, and wherein a violation of the data loss prevention policy is triggered when the converted text data contains the confidential information.