A ban on Russian athletes with previous doping offences competing at Rio 2016 is "unenforceable", says the Court of Arbitration for Sport (Cas)
The International Olympic Committee (IOC) has banned Russians with prior doping offences, regardless of whether they have served their punishments.
It means 271 Russians out of an initial squad of 389 will be in Rio.
But the Cas ruling could open the way for banned athletes to appeal against the IOC's action.
Cas made the ruling in hearing the appeals of rowers Anastasia Karabelshikova and Ivan Podshivalov, and swimmer Yulia Efimova.
It agreed the IOC could legitimately block Russian athletes from competing if it had any doubts over whether they had ever doped.
But it said the IOC was wrong to insist Russian athletes who had previously been sanctioned could not go to the Games.
This supports an earlier Cas decision - known as the Osaka rule - which established athletes could not be punished twice for the same doping offence.
Cas said the rule banning those with historical offences "does not respect the athletes' right of natural justice".
The IOC asked individual sport federations to decide whether Russians could compete after an independently commissioned Wada report found evidence of a four-year, state-run "doping programme".
An IOC panel then ratified the governing bodies' decisions.
But Cas has now asked rowing and swimming to look again "without delay" at the cases of Karabelshikova, Podshivalov - who received doping bans in 2008 - and Efimova, who was sanctioned in 2014.
Rowing and swimming events begin on Saturday.
Russia Olympic Committee president Alexander Zhukov claimed on Thursday that his nation will have "the cleanest team" at Rio 2016.