The UN General Assembly on Thursday called for an end to the decades-old US embargo on Cuba, adopting a resolution by an overwhelming majority and rejecting US moves to criticize Havanas human rights record.

It was the 27th time that the 193-nation assembly has issued the call to lift the embargo imposed in 1962.

The resolution presented by Cuba was adopted by a vote of 189 to 2 with no abstentions. The US and its ally Israel voted against while Ukraine and Moldova did not vote.

The United States failed to win support for eight amendments criticizing Cuba's human rights record. The US, Israel and Ukraine voted in favor of those amendments. The Marshall Islands joined them in one vote.

President Donald Trump's administration points to Cuba's repression of political opponents and curbs of freedom of expression as a reason for maintaining the economic embargo.

Taking the podium, Cuban Foreign Minister Bruno Rodriguez slammed the Trump administration as a "government of millionaires that imposes cruel policies", citing the US treatment of migrant children separated at the border with Mexico and "locked in cages."

"The US government does not have the least moral authority for criticizing Cuba or anyone else with regards to human rights," said the foreign minister.

Rodriguez argued that the embargo was a "flagrant, massive and systematic violation" of human rights in Cuba, notably by denying access to US-produced medicines and medical technology.

US Ambassador Nikki Haley dismissed the vote on the US embargo, which has been an annual exercise since 1992, as a "waste of everyone's time" because it did not address Cuba's human rights situation.

"It's one more time that countries feel they can poke the United States in the eye," Haley said of the vote.

"But you're not hurting the US when you do this. You are literally hurting the Cuban people by telling the regime that their treatment of their people is acceptable."

Last year, the resolution calling for an end to the embargo was adopted by a vote of 191 to 2. The United States and Israel were the only two countries that voted "no".

That vote took place after Washington for the first time abstained in the vote in 2016 as former president Barack Obama pursued a thaw in relations with Havana.

Ties between Cuba and the US have been in decline under Trump, who has rejected the previous administration's moves to improve ties with Havana.

The resolution is non-binding but carries political weight.