I've built a thing I will be presenting extensively over the next few weeks. I call it #RumbaId - an identity platform merging classic Active Directory and modern OpenID features along with full graph API support. It's basically an open source replacement for Microsoft Entra ID / Azure AD.
This combo basically covers the majority of identity provider support for whatever you may want. Except that now you can have it air gapped without handing your user data to Microsoft. Built in Rust.