Dein Vorgehen ist im Sinne von Multi Tenancy und Azure AD konzeptionell falsch, daher findest auch nichts: denn Deine Multi Tenancy App muss als solche in Azure aufgesetzt werden, als Enterprise App.
Diese Enterprise App kann dann der Kunde in seinem AAD aktivieren; er muss das nicht von Hand irgendwie erzeugen und euch irgendwelche Settings geben.
Multitenancy and identity management - Azure Architecture Center
So funktioniert OpenID und OAuth ;-)
Deine App selbst muss dann auch Tenant-fähig umgesetzt werden.
Dazu wird die Audience Deiner Applikation beibehalten, aber der Tenant in der Registrierung ändert sich auf common.
"AzureAd": {
"Instance": "https://login.microsoftonline.com/",
"ClientId": "DeineIdHere",
"TenantId": "common", <<<<----
"Audience": "DeineAudienceHere"
},
Es ist in ASP.NET Core bzw. der gesamten Middleware und Auth-Pipeline nicht vorgesehen, dass sich diese Daten zur Laufzeit ändern.
Weil: es eine schlechte Idee ist, die im Konzept schon falsch ist.
Einzig die Validatoren können durch Delegates dynamisch umgesetzt werden, was konzeptionell so auch gedacht ist.
Configure protected web API apps - Microsoft identity platform
PS: Dein Szenario ist geläufig; baue ich auch oft so. Meine aktuelle Tätigkeit ist genau der Aufbau einer solchen Multi Tenant Admin Portal Geschichte inkl. Kundenzugriff etc.
Wir haben dazu die User, eigene Rollen, eigene Permission Mechanismen in einer eigenen Datenbank.
Das funktioniert mit dem Azure AD Multi Tenant Konzept sehr gut; muss man nix eigenes erfinden.