If the visa agent Javed Abdul Gafoor Mozawala would not have agreed to the officials' demands, he would have lost his only source of income, the official added.
Mozawala, a resident of Mazgaon in Mumbai, was arrested on Dec 8 for spying for Pakistan and has been booked under the Official Secrets Act.
"At least for the last four years, Mozawala had been into the visa facilitating job. He had been to Pakistan high commissioner on several occasions as part of his job," joint police commissioner (crime) Himanshu Roy said.
"The two officials wanted him to conduct recce of vital locations in Maharashtra. Initially, Mozawala was reluctant but then the two officials started rejected several visa applications from Mozawala," the officials added.
Then the two officials asked Mozawala to work for them and spy the vital locations and extract defence related information, Roy added.
"Since visa facilitating work was his only source of income and he did not want to lose this job, Mozawala agreed for it and passed on the information to the two officials," Roy added.
For over two years, Mozawala conducted recce of several locations including Western Naval Command in Mumbai, a Navy facility in Lonavla (in Pune district), Bandra Worli Sea Link here and Koyna dam in Satara district, police said.
Mozawala also made an unsuccessful attempt to extract defence-related information from a navy official, police said.
Police have claimed to have seized "confidential" military documents from his house in south Mumbai's Mazgaon area.
Mozawala tried to develop contact with the Navy official, whom he met in a train from Delhi to Mumbai, a year ago.
The accused tried to become "very friendly" with the Navy man, but the official did not respond to him and did not share any information, police said.
A former MLA is a close relative of Mozawala but the politician has distance himself from the accused, they said.