As a follow-up, I've found auth0.com, which in stark contrast to the poor documentation and aggravating developer experience provided by Azure AD B2C (where even "delete" doesn't work right), has been a downright pleasant developer UX. They provide up-to-date documentation and downloadable sample code in about every stack you can imagine. It took me all of 10 minutes to get things working, and when I made a mistake, the UI even directed me toward what was wrong and how to fix it.
Auth0.com is IMO setting the benchmark for infrastructure-as-a-service.