The 192-nation assembly's Third Committee, which focuses on human rights, approved the nonbinding resolution 74-48, with 59 abstentions.
The Iran resolution "expresses its deep concern at serious ongoing and recurring human rights violations."
It voiced "particular concern at the response of the Government of the Islamic Republic of Iran following the Presidential election of 12 June 2009 and the concurrent rise in human rights violations."
Among those violations were "harassment, intimidation and persecution, including by arbitrary arrest, detention or disappearance, of opposition members, journalists and other media representatives, bloggers, lawyers, clerics, human rights defenders, academics, (and) students."
The result, it said, has been "numerous deaths and injuries." It also condemned reports of "forced confessions and abuse of prisoners including ... rape and torture."
Iran has begun executing people in connection with the unrest that broke out after President Mahmoud Ahmadinejad's disputed re-election. Opposition leaders say the vote was rigged to ensure Ahmadinejad won.
Saudi Arabia, which has accused Iran of supporting Shi'ite rebels in neighboring Yemen, broke ranks with the vast majority of Muslim nations and voted in favor of the resolution.
A special assembly session next month is expected to formally adopt all recently approved committee resolutions.
Tehran's U.N. Ambassador Mohammad Khazaee reacted to the Canadian-drafted resolution and sharply critisized Canada for "systematic violations of human rights including discriminatory policies ... against Aborigines, migrants and minorities."
Canadian Foreign Minister Lawrence Cannon did not respond directly to Iran's accusations but joined Washington and his British counterpart David Miliband in welcoming the resolution. Cannon said it is "another clear signal of the international community's concern for the human rights of people in Iran."
(...Excerpts)(Additional reporting by David Ljunggren in Ottawa; editing by Mohammad Zargham)