The ruling came in response to two cases brought by a Belgian woman and a French woman, both fired for refusing to remove their headscarves.
While the European Court of Justice linked the cases, it made different rulings in each.
The first involved a Belgian woman fired from her job as a receptionist at the security firm G4S.
She had refused to comply with her company's policy banning "visible signs" of a worker's political, religious or philosophical beliefs.
The court stated such a ban did not constitute what it called "direct discrimination" because it was based on treating all employees the same.
However, the court thought differently in the case of the French woman, asked to remove her headscarf following a customer complaint.
The woman's lawyer, Claire Waquet, explains.
While rights groups have welcomed that ruling in the second case, many have expressed concern about the precedent set by the Belgian case.
The European Network Against Racism's Georgina Siklossy says it is disappointing.
The wearing of religious symbols, especially Islamic symbols such as the headscarf, has become a contentious issue with the rise of nationalist and anti-Muslim parties across Europe.
France already bans headscarves and other religious symbols in classrooms, as well as banning face-covering veils in the streets.
Austria and the German state of Bavaria recently announced bans on full-face veils in public spaces.
In New York, Open Society Foundations human-rights lawyer Simon Cox has told Al Jazeera television the European court's ruling is unfair
استمعوا هنا الى البث المباشر لاذاعتنا و لاذاعة BBC أيضا
