India were held to a narrow 1-1 draw by hosts Netherlands but it was enough for the last year's runners-up to enter their second consecutive final of the Champions Trophy hockey tournament.
India scored through Mandeep Singh (47th minute) from a penalty corner rebound but the goal was nullified by Thierry Brinkman (55th) five minutes from the hooter.
Australia finished on top of the standings despite losing 2-3 to Olympic champions Argentina earlier in the day. India, which needed just a draw to progress, finished second.
As per the rules of the tournament, the top two teams will qualify for tomorrow's summit clash.
India had a great chance to take the lead early on but SV Sunil failed to control the ball from a goalmouth melee.
India kept up the pressure on the Dutch defence and earned a penalty corner in the third minute but Harmanpreet's powerful high flick was saved by Netherlands goalkeeper Sam Van der Ven.
Another penalty corner came India's way in the 13th minute but they wasted the opportunity while going for a variation.
The second quarter witnessed a much even contest between the two sides till the 25th minute when Netherlands secured two back-to-back penalty corners, the second of which was brilliantly saved by Indian custodian PR Sreejesh.
A minute later, Netherlands were rewarded with another set piece when the ball hit Harmanpreet's foot inside the D but once again Sreejesh averted the danger.
The Dutchmen continued to press hard in the final few minutes of the second quarter but the Indian defence just did enough to avert any dangerous situation as both the teams went into the halfway break locked at 0-0.
Two minutes into the second half, Netherlands had a great chance to take the lead but Sreejesh came to India's rescue from an open goal position.
It took India 47 minutes to break the deadlock through Mandeep's rebound from a penalty corner after Harmanpreet's effort was blocked by the Dutch defence.
But Netherlands drew parity five minutes from the hooter through a field strike by Brinkman.
The Dutch, needing a win to qualify for the final, pressed hard and earned three consecutive penalty corners but the Indian defence stood tall to deny them and eke out the draw and qualify for tomorrow's final.
It will be a repeat of 2016 Champions Trophy final between India and Australia, where the Kookaburras came out victorious in the shoot-out.