The Virat Kohli-led squad has no surprises with off-spinner Ravichandran Ashwin also making it back to the team after his brief injury lay-off.
Rohit sustained a thigh injury during the One Day International (ODI) series against New Zealand in October last year while Shami's last appearance in ODIs was in the 2015 World Cup semi-finals. Ashwin, who suffered a sports hernia, was also advised six-to-eight weeks of rehabilitation after a gruelling Test series against Australia.
Rishabh Pant, Kuldeep Yadav, Shardul Thakur, Suresh Raina and Dinesh Karthik were named as stand-by players for the ICC event.
"The stand-by players will be issued visas and will practise at the National Cricket Academy in Bengaluru," said Prasad.
The eight-team tournament will be played in June, with defending champions India pooled with South Africa, Pakistan and Sri Lanka in Group B.
India will start their Champions Trophy campaign against arch-rivals Pakistan on June 4.
Squad: Virat Kohli (Captain), Shikhar Dhawan, Rohit Sharma, Mahendra Singh Dhoni (WK), Yuvraj Singh, Kedar Jadhav, Hardik Pandya, Umesh Yadav, Bhuvneshwar Kumar, Manish Pandey, Mohammed Shami, Ravichandran Ashwin, Ravindra Jadeja, Jasprit Bumrah, Ajinkya Rahane.
Stand-bys: Rishabh Pant, Suresh Raina, Kuldeep Yadav, Shardul Thakur, Dinesh Karthik.