1. A method for building and using a secure index to service queries for a plurality of secure data stores, the method comprising: crawling, by a computer system, the plurality of secure data stores residing on a plurality of different computer systems; generating, by the computer system, an index of a plurality of documents from across the plurality of data stores, wherein each of the plurality of documents is associated with one or more security requirements from a corresponding one of the plurality of data stores; storing, by the computer system, in the index, for each document in the plurality of documents, the corresponding one or more security requirements; receiving, by the computer system, a query from a client device; in response to receiving the query, obtaining, by the computer system, security information for a user of the client device; selecting, by the computer system, each document in the index that is responsive to the query and where the corresponding one or more security requirements are satisfied by the security information of the user; and transmitting, by the computer system, links to each selected document in the index as a result set to the client device to service the query from the client device.