The law is a hotly contested issue in Cambodia, where the $5 billion textiles and footwear sector is the biggest employer and economic driver, producing goods for Nike, H&M, Puma, Marks and Spencer and Inditex, among more than a dozen global brands.
Some of about 100 protesters clashed with security guards outside the National Assembly before the bill was passed and at least two union activists suffered bloody head injuries.
All 67 deputies present from the ruling Cambodian People's Party (CPP) supported it and the 31 opposition Cambodia National Rescue Party (CNRP) delegates voted against it.
"We're worried as it will affect our rights to hold strikes. They (the government) will interfere in our work, they can suspend and dissolve us," said Ath Thon, president of the Coalition of Cambodian Apparel Workers Democratic Union,
The law sets rules on how unions are formed, operated and dissolved and was passed in its original form, without alterations requested by unions, employers and rights groups.
Business owners requested the rules in 2007 to prevent strikes by unions representing some 700,000 workers in an industry that has grown rapidly, partly because it undercuts China's factories.
The unrest has dogged Cambodia, with protests over pay a perennial problem for the government and an issue for brands worried about interrupted orders and negative publicity.
Unions and the CNRP had urged parliament to remove from the law all articles on suspending unions and requirements for them to prepare financial reports.
Ath Thon said union leaders would push for amendments but would not hold large protests due to fears of a repeat of previous violence and crackdowns by the authorities.
Labour Minister Ith Sam Heng told parliament the legislation would bring stability and bigger investment. Ruling party lawmaker Chheang Vun defended the bill and said it would ultimately benefit workers.
"This sector is the rice pot for all of us," he said. "The government has the duty to protect this pot so there is rice for us to eat."