I think both parties are within their rights, but I also think this is a stupid move on PyPI's part. Maintainers are already working for free; start making them jump through hoops and some will decide it's all too much work and leave.
I think it would be much better to throw up a warning (potentially a loud one) when a dependency is maintained by someone without 2FA.